ヤマムギ

growing hard days.

*

「実践AWSプログラミング in Osaka」に行ってきました

      2016/09/18


クラスメソッドさんの「実践AWSプログラミング in Osaka」に行ってきました。

efbe00cbf82fb14d84bcffda0b60bcb9

RailsアプリをデプロイするCodeDeploy

デプロイの観点

  • どこからどこにデプロイしたいか?
  • トリガーをどうするか?
  • いつ誰がデプロイするか?
  • 失敗検出と通知
  • どのくらいの変更をデプロイするのか?

CloudFormation

  • インフラで再現性が必要なものには最適
  • WAF+CF+S3とか鉄板では全然あり
  • 既存の構成を他アカウントで再現するときもいい
  • なのでAWS上のシステムバックアップで使える。はず。

EC2のTerminate対応

  • Auto Scallingグループを作って常に1台が動くようにしておく

Lambdaトリガー

  • SNSにパブリッシュしてLambdaのトリガーをキックする

CodeDeploy

  • ターゲットはEC2

ActionCable(Rails5) + Application Load BalancerでWebSocketをバランシング!

ActionCable

  • Rack hijacking API – SocketをRACから受け取ってActionCableへ登録する
  • PubSubサーバ ,Publisher(Rails), Subscribe(Rails)
  • ActionCableはデフォルトでPubSub

ALB

  • ELBではWebSocketのupgradeに必要なハッdが送れなかった
  • ELBは60秒無通信状態でタイムアウトしていた

サーバレスでURL短縮サービスを実装してみた

  • IaCはTeraform
  • 1つのCroudFrontでMulti-Behaviorでふりわけている
    domain_nameとorigin_id
    path_patternとtarget_origin_id
  • Route53はAliaseレコード
  • CloudFrontの設定はTeraformで100行ぐらい
  • S3のリダイレクト機能でURLリダイレクトを実装
  • S3のオブジェクトは1つ1つにリダイレクト設定出来る
  • API GatewayはTaraformで70行ぐらい
  • Lambdaはコールされるとコンテナが起動してその中でコードが実行されている
  • Lambdaの実行ロールにS3とCloudWatch Logsへのアクセス権をIAMで設定する

APexを利用したLambda関数のデプロイ

  • Apexで内部的にTeraformを呼び出せる
  • ローカルでLambda関数をテスト出来る
  • functionsにlambda関数を格納する
  • Apexで変数を定義できてLambda関数内で使える(context)
  • apex deployコマンドでデプロイ

最後までお読みいただきましてありがとうございました!
【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー2年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - study ,

ad

ad

  関連記事

「Bluemix勉強会 -Watson、Node-RED 最新情報を学ぼう!」に行ってきました

「Bluemix勉強会 -Watson、Node-RED 最新情報を学ぼう! 」 …

kintone Café 大阪 vol.11で登壇しました

kintone Café 大阪 vol.11「kintoneと色々つないでみる …

AWS Summit 2016 Tokyoに参加してきました (Day3)

飛天3日目です。 JAWS-UGブースのすぐ前にあったこのお水がめちゃめちゃおい …

Developers Summit 2018 「NRIの働き方改革 – 開発スタイルから文化まで変えた軌跡 -」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

Developers Summit 2018 「事例2本立て!Redmineユーザ達が語る現場定着化への取組みと導入アンチパターン」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

ひと味違った南国の熱量を感じた高知の午後 ~「コミュニティリーダーズサミット in 高知 2018」に行ってきました~

「コミュニティリーダーズサミット in 高知 2018」という、イカしたイベント …

「MasterCloud #9 新春クラウドLT大会」でLTをさせていただきました

Alibaba Cloudを検索してたらconnpassの「MasterClou …

DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました

DevLOVE関西 現場甲子園2015 「西日本大会」に行ってきました。 全部で …

JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo 2016 アップデート追っかけ会

「JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo …

No-Code JP 第0回で様々な熱い言葉を聞いて思ったこと

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …