中級カリキュラム:EC2からECSコンテナ移行実践
ステップ1:Dockerによるアプリケーションのコンテナ化
内容:Docker環境構築、Railsアプリケーションのコンテナ化、ローカル実行確認
例え:従来のサーバー上で直接動かしていた店舗(アプリケーション)を、どこでも同じように動作するモバイル店舗(コンテナ)に改装する
詳細説明:
- AWS認証情報の設定とECRへの事前接続確認
- Docker環境の確認とコンテナ概念の理解
- Dockerfileの作成とRailsアプリケーションのコンテナ化
- コンテナイメージのビルドとローカルでの動作確認
ステップ2:VPCネットワーク基盤とECSクラスター構築
内容:Amazon VPC、ECSクラスター(Fargate)、Amazon ECR、マルチAZ構成
例え:サーバー管理不要の自動化されたショッピングモール(Fargateクラスター)を、安全な商業区画(VPC)内に建設し、高速配送可能な商品倉庫(ECR)を整備する
詳細説明:
- VPCとパブリックサブネットの作成(マルチAZ構成)
- Amazon ECSクラスターの作成(Fargateタイプ)
- Amazon ECRリポジトリの作成
- コンテナイメージのECRへのプッシュとタグ管理
ステップ3:タスク定義とサービス構築によるコンテナ実行環境の完成
内容:ECSタスク定義、Application Load Balancer、Fargateサービス、セキュリティグループ
例え:完全自動化された店舗運営システム(タスク定義)を設計し、顧客案内デスク(ALB)を設置して、フルオートメーション店舗(Fargateサービス)を開店する
詳細説明:
- ECSタスク定義の作成(CPU、メモリ、コンテナ設定)
- ALB用セキュリティグループの作成
- Fargateサービスの作成とALBとの連携
- 外部からのWebアクセス確認と負荷分散動作確認
ステップ4:オートスケーリングによる動的なキャパシティ管理
内容:Auto Scaling、CloudWatchメトリクス、ターゲット追跡スケーリング、負荷テスト
例え:需要に応じて店舗スタッフ(コンテナ)を自動的に増減させる人員調整システムを構築し、セール期間の急激な来客増加にも自動対応できるようにする
詳細説明:
- ECSサービスオートスケーリングの設定
- ターゲット追跡スケーリングポリシーの作成
- CloudWatchアラームによる監視体制の構築
- 負荷テストによるスケーリング動作の検証
学習完了後の次のステップ
この学習カリキュラムを完了し、最終アセスメント(テスト)に合格すると以下のステップに進むことができます。
- ご自身のポートフォリオを制作(EC2からECSへのコンテナ移行プロジェクトの実績として)
- 上級カリキュラムへの挑戦(マイクロサービスアーキテクチャ構築、CI/CDパイプライン構築)
- 実際の企業案件での技術コンサルティング業務(コンテナ移行・モダナイゼーション案件)
中級カリキュラムの勉強の仕方
学ぶ前に以下にアクセスできるかを確認しましょう。
- AWSマネジメントコンソール
- ローカル開発環境(Docker Desktop、VS Code)
- 学ぶ
- 各ステップは実際のEC2からECSへの移行プロセスに従って進めます。
- 用語やサービス名がわからない場合には学習カリキュラム内の「用語集、参考資料」を見てみましょう。
- 記載の内容や概念が理解できない場合には専用Slackにて質問をしてください。より初級レベルの知識を学びたい方は以下がおすすめの参考資料となります。
- 学んだことの確認
- それぞれのステップには以下3つの確認項目が用意されていますのでそれぞれに回答を専用Slack上で提出してください。
- 実践チェック:画面キャプチャで証明しよう
- 提出方法:それぞれの項目に関してAWSコンソールの該当箇所をキャプチャーし、提出
- 構成図による理解度チェック
- 提出方法:構成図を作成し、提出
- 理解度チェック:なぜ?を考えてみよう
- 提出方法:質問の回答を提出
- アセスメント
- ステップ4までの学習が完了すると、最終アセスメントへ進みます。
- 最終アセスメントはオンラインで講師を相手にホワイトボーディングを行います。
- ホワイトボーディングとは相手がやりたいことをヒアリングし、それを実現するためのコンテナ移行戦略をその場で図示しながら作り上げていくロープレ形式のセッションです。
- 最終アセスメントを実施するかどうかは皆さんにお選びいただけます。実施希望の方は専用チャネルでManagerまでご連絡ください。
Last updated on