ヤマムギ

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の各コンポーネントがさくっと確認できるすごくいいワークショップでした。


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

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

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

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

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

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

 - AWS ,

ad

ad

  関連記事

WordPressをAmazon CloudFrontで配信してついでにACM(AWS Certificate Manager)を使って常時SSL化する

当サイトの500と502の発生状況がドイヒーであるとの苦情をいただきまして、Am …

当ブログ(WordPress)のCloudFrontのキャッシュヒット率があがった

当ブログの構成です。 S3とALB+EC2 Auto Scalingで構成してい …

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

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

JAWS FESTA 2017 Reverse X re:Birth

JAWS FESTA 2017 中四国 今年はブログタイトル「JAWS FEST …

AWSアカウントでルートユーザーが使用されたときにTeamsへ投稿する

Organizations組織内のアカウントのいずれかでルートユーザーが使用され …

RDSのスナップショットをS3へエクスポートが日本語マネジメントコンソールでもできるようになってました

RDSスナップショットをS3にエクスポートする新機能を試そうかと思ったのときは、 …

Amazon InspectorによるLambda関数の脆弱性検出結果を確認しました

AWS re:Invent 2022期間内に発表されましたAmazon Insp …

WordPress(EC2)の画像のS3へのオフロードをMedia Cloudで

タイトル通りですが、画像をwebサーバー(EC2)からではなく、S3バケットから …

Amazon Location Service入門ワークショップ-マップの操作

関連記事 Amazon Location Service入門ワークショップの前提 …

EC2 Image BuilderでRocket.ChatのAMIを作って起動テンプレートを更新しました

EC2 Image Builderの練習をしようと思い、Rocket.Chatの …