ヤマムギ

growing hard days.

*

Developers Summit 2018 「AWSのフルマネージドな環境でCI/CDをやってみよう!AWS Cloud9からAWS Fargateへの継続的デプロイをご紹介」を聞きました

      2018/02/17

※写真は展示のAmazon Echoです。

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容やご意見ではないことを、ご承知おきください。

スピーカーはAWSJ DevOps スペシャリスト ソリューション アーキテクトの福井さん。

AWS Cloud9

なんでCloud9を作ったのかという話から。

ソフトウェア開発には「実行」、「リリース」、「区政」の3つの柱がある。

今までは開発環境はローカルで構築/設定してはじめてコーディングをしていた。
多くのプロジェクトをやるのも大変だった。
チーム開発が多くなってきたのでコラボレーション(コードレビューなど)出来ることも重要になった。
従来のIDEがサーバーレスに追いついてない。
なので、ブラウザのみで開発できるCloud9が生まれた。

  • ブラウザのみで開発出来る
  • 環境を作らなくていい(AMIに必要なリソースがあらかじめ入っている)
  • すぐにコーディングを開始できる
  • リアルタイムに共同コーディング
  • サーバーレスアプリケーションの開発を容易に
  • AWSサービス(例えばEC2)に直接ターミナルアクセス
  • 2018年2月現在で5リージョンで使える(Cloud9は別リージョンでも東京リージョンのLambdaを使うことは可能)
  • 課金はEC2への課金でCloud9は無料

AWS Fargate

コンテナはアプリケーションをパッケージングして配布できる。
Immutable Infrastructure(一度サーバーを構築したらその後はサーバーのソフトウェアに変更を加えない、不変)。

「アプリケーション開発に集中したい」の声が多く、コンテナ管理、インスタンス管理を不要にしたい、との声からFargateが生まれた。
なのでECSのようにEC2を気にしなくて良くなった。
課金はメモリ/CPUに対しての秒単位課金。
SLAはECS同様に99.99%。

AWS Code5兄弟

CodePipelineでCodeCommit , CodeBuild , CodeDeployをつないで使える。

CodeCommit

リポジトリ無制限、5ユーザーまで無料。
最初は素のGitだったけど、プルリクとか差分表示とか色々出来るようになってますね。
なので、プライベートリポジトリはCodeCommitを使ってます。

CodeBuild

YAM(buildspece.yaml)Lを書くとコンテナを立ち上げてその手順でビルドしてくれる。
結果はCloudWatchに出力される。
課金は実行した分単位の課金。

CodeDeploy

AutoScallingと連携できるので常に新しいコードでEC2インスタンスを起動することが出来る。
EC2へのデプロイは無料。

CodePipeline

CodeCommit . CodeBuild , CodeDeployを実行している。

CodeStart

CodePipelineの構成とダッシュボードを提供してくれる。
ほぼ追加料金無料。

デモ

Cloud9からFargateまでのPHPアプリケーションデプロイ自動処理でした。

Cloud9からCodeCommitにコミットしてプッシュ。
CodePipelineがCodeCommitの変更を検知してCodeBuildを実行。
CodeBuildはビルドしてECRにプッシュしてデプロイフェイズに入る。
新しいコンテナが起動し終わると古いコンテナが消えるBlueGreenの動きをする。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS, event, study ,

  関連記事

AWS CodeBuildのチュートリアルをやってみました

こちらユーザーガイドの最初の方にあるチュートリアルです。 コンソールを使用した …

Oracle Java SE7 Silverを受験してみて

受験の目的 Goldの前提条件だから Gold資格を取得する目的は技術レベルを理 …

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

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

「Fin-JAWS 第14回 Fin人類育成計画」で話させていただきました!

「Fin-JAWS 第14回 Fin人類育成計画」で話させていただきました。 久 …

VPC新コンソールの日本語UIでルートテーブル編集時のエラー(2021/6/10)が発生したのでフィードバックを送った

VPCの新コンソールがリリースされていたので使って作業してましたところ、こんなエ …

AWS KMSマルチリージョンキーを確認しました

2021年6月にKMS マルチリージョンキーがリリースされました。 マルチリージ …

AWS Summit Tokyo 2017 聴講したセッションのメモ

2017年6月に参加しましたAWS Summitで聴講したセッションのメモを記し …

「TwilioJP-UG大阪+AWScean合同勉強会」に行ってきました

ノンEC2のススメ アイレット河村さん EC2は柔軟すぎる PaaSの良いところ …

AWS Transit GatewayをResource Access Managerで他アカウントと共有

AWS Transit Gatewayを他アカウントに共有しました。 画面画像で …

「Einsteinボット構築体験ハンズオン」でボットをノーコードで構築した

Salesforce World Tour Tokyoで基調講演の後、最近のニー …