Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Deployment and rollback in Amazon ECS

Deployment and rollback in Amazon ECS

CloudNative Days Spring 2021 ONLINE での登壇資料です。

Kyosuke Ochimizu

March 12, 2021
Tweet

More Decks by Kyosuke Ochimizu

Other Decks in Technology

Transcript

  1. Amazon ECS で考える デプロイメントと ロールバック Kyosuke Ochimizu

  2. ⾃⼰紹介 2 Kyosuke Ochimizu (落⽔ 恭介) Specialist Solutions Architect, Containers

    / Amazon Web Services Japan Ø SIer Ø 教育業界ベンチャー Ø Cloud Integrator Ø サポートチーム / Amazon Web Services Japan Ø 現在のロール 好きな AWS サービス: Amazon Elastic Container Service (Amazon ECS)
  3. デプロイパイプライン 3 Source Build Test Deploy • アプリケーションコード • 設定

    • 依存ライブラリ • テストコード • コンパイル • Unit テスト • 静的解析 • コンテナイメージの 作成 • 結合テスト • 負荷テスト • 本番環境にデプロイ
  4. パイプライン外でのロールバック 4 Source Build Test Deploy Rollback

  5. ロールバックを考慮したパイプライン 5 Source Build Test Deploy Prod Monitoring Rollback

  6. ECS で考えるデプロイパイプライン 6 Source Build Test Deploy 例) AWS CodePipeline

    AWS CodeBuild AWS CodeBuild AWS CodeCommit CodePipeline deploy action
  7. パイプライン外でのロールバック 7 AWS CodePipeline AWS CodeBuild AWS CodeBuild AWS CodeCommit

    CodePipeline deploy action UpdateService / CreateDeployment previous stable TaskDefinition
  8. ロールバックを考慮したパイプライン 8 AWS CodePipeline AWS CodeBuild AWS CodeBuild AWS CodeCommit

    CodePipeline deploy action AWS CodeDeploy Rollback
  9. ロールバックを考慮したパイプライン 9 AWS CodePipeline AWS CodeBuild AWS CodeBuild AWS CodeCommit

    CodePipeline deploy action AWS CodeDeploy Rollback Alarm Rollback
  10. まとめ 10 Amazon ECS で考えるデプロイメントとロールバック • パイプライン外でのロールバック Ø 以前の安定稼働していたタスク定義のリビジョンをデプロイ •

    ロールバックを考慮したパイプライン Ø デプロイ状況をモニタリングし、必要に応じてロールバックを要求 Ø メトリクスとして観測可能な場合、 CloudWatch アラームによる⾃動ロールバックも可能
  11. Thank you ! 11