🧮

Code兄弟を深く知るため『Introduction to AWS Code Family』Workshopをやってみた

2022/08/03に公開

AWSで提供されているWorkshopの『Introduction to AWS Code Family』を実施しました。
一言で言うと、かなり良かったです。

https://catalog.us-east-1.prod.workshops.aws/workshops/752fd04a-f7c3-49a0-a9a0-c9b5ed40061b/en-US/introduction
workshop-diagram

おすすめしたい人

オススメ度: ★★★★★(5/5)

  • AWSでCI/CD環境を構築したい人
  • Codeシリーズを1から構築したことが無い人
  • CodePipeline, CodeCommit, CodeBuild, CodeDeployのテンプレ構成は構築したことがあるが「CodeBuildのみ」での使い方がパッと想像つかない人

ざっくり概要

必要時間: 1.5~2.0h

  1. 手動でCodeCommit, CodeBuild, CodeDeploy, CodePipelineをマネジメントコンソールから作成し自動でEC2へデプロイするよう構築。
  2. CodePipelineに、本番環境へデプロイする前に人の承認を挟むように設定する。
  3. ECSへのデプロイを設定する。
  4. SAMを利用したパイプラインを設定し、APIGatewayとLambdaの構成を構築する。

良いところ

  • 手動でCodeCommitやCodeDeployを作成していくので、それぞれが何を行うサービスなのか理解しやすい
  • それぞれのサービス間の連携について理解を深められる
  • 手動承認の実装方法といった、細かいところまで分かる

悪いところ

  • 基本的にインプレース(総とっかえ)のデプロイ方式で、Blue/Greenデプロイなどは対象外なので、そのあたりの動作イメージは掴めなかった。料金対策でもあるので、仕方がない。
  • SAMでのパイプライン作成の説明が少し分かりづらい

感想

CloudFormationでCodePipeline, CodeCommit, CodeBuild, CodeDeployの一連の構築は経験済みだが、それぞれのサービスをマネジメントコンソールで立ち上げたことは無かった。

このハンズオンではサービス単体での使い方もイメージできるようになったため、例えばスモールに始める場合にはCodeBuildだけ用意して、上手くいったらテスト環境を用意してCodeDeployも構築して~~といったような方法が取れるイメージが沸いた。

Discussion