ヤマムギ

growing hard days.

*

Amazon ECS Workshop for AWS Summit Online

      2021/10/06


INTRODUCTION TO AMAZON ECSに手順や必要なリンクがあります。

完成時の全体像です。

CloudFormationスタックの作成

VPC、NAT Gateway、RDS、ALB、Cloud9をCloudFormationスタックで一気に作成します。

リンク先のテンプレートをローカルにダウンロードして、スタック作成時にアップロードしました。
リージョンはバージニア北部でIAMユーザーはAdministratorAccessポリシーをアタッチしています。

スタック名は任意に設定しました。
データベースのユーザーとパスワードをパラメータで入力しました。
これも任意に設定しました。

ECRにDockerイメージを登録

ECRにリポジトリをsimplechatという名前で作成しました。

Cloud9がCFnスタックでできていたので、接続して、Cloud9のターミナルで操作しました。

ECRリポジトリのプッシュコマンドどおりにCloud9で実行していきました。

コンテナイメージの登録が完了しました。

ECSクラスターの作成

手順どおりFargateを選択しました。
クラスター名をsimplechatとして作成しました。

タスク定義の作成

079700436326.dkr.ecr.us-east-1.amazonaws.com/simplechat
simplechat-ecs-db.c3gngubysyz7.us-east-1.rds.amazonaws.com

ECRのURIとRDSのエンドポイントをコピーしておきました。

起動タイプ互換性でFARGATEを選択しました。
タスク実行ロールのecsTaskExecutionRoleは別のハンズオンで作っていたのでそれを再利用しました。

タスクサイズは、メモリ0.5GB、CPU 0.25vCPUにしました。

[コンテナの追加]ボタンから、コンテナ名をsimplechat_container、イメージにECRのURI、ポートマッピングを80にしました。

環境変数を設定しました。
DB_HOSTにデータベースエンドポイント、DB_USERとDB_PASSにCloudFormationスタックのパラメータで指定したデータベースマスターユーザー名とパスワードを設定しました。

サービスの作成

起動タイプはFARGATE、クラスターを選択して、サービス名にsimplechatを入力、タスクの数を1にして次のステップに進みました。

ワークショップ用のVPCとプライベートサブネット1,2を選択しました。
セキュリティグループはロードバランサーから80ポートに対してインバウンド許可されているWeb用のセキュリティグループを選択しました。
パブリックIPはDISABLEDにしました。

Application Load Balancerを選択して、リスナー設定をしました。

RUNNINGになりました。

アプリケーションの更新

タイトルをYamamugiChatに変えてみました。

ECRのプッシュコマンドをもう一度ターミナルで4つとも実行してイメージを更新しました。

手順とちょっと変えて新しいリビジョンを作成してみました。

内容は変えずに作成しました。

サービスを選択して、[更新]ボタンを押下しました。

リビジョン2を選択して、[新しいデプロイの強制]をチェックしまして、更新しました。

デプロイが始まりました。

デプロイが完了して更新されたことが確認できました。

ECRイメージ、クラスター、タスク定義、サービスと、ECSの各コンポーネントがさくっと確認できるすごくいいワークショップでした。


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

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

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

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

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

 - AWS ,

ad

ad

  関連記事

Amazon Connectのパスワードどころかユーザー名も忘れたのでEmergency accessした

長い間放置していたAmazon Connect環境にアクセスしようとしたところ、 …

AWS認定試験の自宅受験で壁のポスターを注意されちゃいました

AWS認定オンライン受験をしてみましたに書きましたとおり、自宅受験デビューしまし …

JAWS FESTA 2019 Sapporo 参加&当日スタッフ&企業サポーターで!

2019年のJAWS FESTA は札幌です! 今回もありがたいことに、所属して …

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト – プロフェッショナル」を執筆しました

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテク …

WordPress、プラグインのアップデートしてBlue/Greenデプロイ

現在のブログの構成です。 WordPressとプラグインのアップデートをして、デ …

S3 Intelligent-Tieringのオブジェクトの階層移動をCloudWatchメトリクスで確認

CloudWatchメトリクスの保存期間は現時点で15ヶ月(455日)なのでそろ …

Amazon S3オブエジェクトへのリクエストをCloudTrail, Athenaで識別

こちらCloudTrail を使用した Amazon S3 リクエストの識別に書 …

S3バケットポリシーでクロスアカウントのPrincipalについて確認

確認したこと ドキュメントではこちらで確認しました。 AWS JSON ポリシー …

DynamoDB IAMポリシーで特定属性だけを許可する

検証記録です。 対象テーブル 書籍のサンプルで作ったこちらです。 所属バンドの楽 …

ブラウザからJavaScript SDKを使ってAmazon S3 への写真のアップロードチュートリアルをやってみました

ブラウザから Amazon S3 への写真のアップロードをやってみました。 HT …