[ワークショップ紹介] AWS Fargateを使用したブルー/グリーンデプロイ用のCI / CDパイプラインの構築 #DOP305 #reinvent

2019.12.10

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

CX事業本部@札幌の佐藤です。

re:Invent 2019 のワークショップ「Building a CI/CD pipeline for blue/green deployments using AWS Fargate」のレポートです。

ワークショップ概要

In this workshop, you learn how to build a CI/CD pipeline (AWS CodePipeline) to develop a web-based application, containerize it, and deploy it on a serverless Amazon ECS cluster (AWS Fargate). You use the blue/green method to deploy it, and you implement a switchover method using an AWS Lambda function. You build this infrastructure using AWS CloudFormation, enabling you to reproduce the environment when needed. You also learn about monitoring and debugging capabilities using Amazon CloudWatch.

このワークショップでは、CI / CDパイプライン(AWS CodePipeline)を構築して、ウェブベースのアプリケーションを開発し、コンテナ化し、サーバーレスAmazon ECSクラスター(AWS Fargate)にデプロイする方法を学びます。 blue / greenメソッドを使用してデプロイし、AWS Lambda関数を使用してスイッチオーバーメソッドを実装します。 AWS CloudFormationを使用してこのインフラストラクチャを構築し、必要なときに環境を再現できるようにします。 また、Amazon CloudWatchを使用したモニタリングおよびデバッグ機能についても学びます。

ワークショップURL

以下のURLからご自身のAWS環境を使ってワークショップを体験することができます。

https://cicd-with-aws-fargate-lambda-bg.workshop.aws/en

レポート

学べること

  • ECS Cluster(Fargate)の作成
  • ECS タスクやECSサービス、ALBの作成
  • CodeBuild + CloudFormation + CodePipelineを使用したデプロイパイプラインの構築
  • CodePipelineの承認機能とAWS Lambdaを使用した Blue/Green デプロイメント
  • CodeDeployを使ったBlue/Greenデプロイメント
  • CloudWatch Logsからビルドログの確認

まとめ

このワークショップは予約なしで行ったんですが、待機列がすごい行列になっていて、かなり人気のあるワークショップでした。途中で打ち切られてしまいまして、結局その場でワークショップを受けることはできませんでしたが、ワークショップのURLはもらうことができたので、帰国してからやってみました。FargateのECSクラスターの作成や、CodePipeline + CodeBuild + CodeDeployを使ったBlue/Greenデプロイメントのやり方が解説されています。Code3兄弟の学習にも最適なワークショップでした。興味のある方はぜひやってみてください。