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

AWS Graviton 環境への CI _ CD パイプラインを CircleCI で実現しよう (AWS Fargate 編)

AWS Graviton 環境への CI _ CD パイプラインを CircleCI で実現しよう (AWS Fargate 編)

最新のコンテナアプリケーション開発環境でパフォーマンス向上とコスト削減を両立する~AWS Fargate 編~
https://pages.awscloud.com/APAC_PARTNER_OE_ipc_CircleCI_2022_WebinarSeries-0616_LP.html

AWS Graviton プロセッサを採用した AWS Fargate を使用し、どのようにコンテナアプリケーション開発の CI/CD パイプラインを構築できるのか、AWS Graviton に対応した CircleCI の CI/CDツールを使用し、デモを交えて具体的にご説明いたします。

Tadashi Nemoto

June 26, 2022
Tweet

More Decks by Tadashi Nemoto

Other Decks in Technology

Transcript

  1. 1 AWS Graviton 環境への CI / CD パイプラインを CircleCI で実現しよう

    (AWS Fargate 編) CircleCI 合同会社 カスタマーエンジニアリング部 ソリューションズエンジニア 根本 征
  2. 2 ⾃⼰紹介 • 名前︓根本 征 / Tadashi Nemoto • ポジション︓Solutions

    Engineer • 経歴 ◦ フリマアプリ企業で Software Engineer in Test ◦ AI スタートアップ企業で DevOps エンジニア
  3. 3 このセッションでは • CircleCI の ARM コンピューティングサポートによる、 AWS Graviton 環境への

    CI/CD パイプラインの構築⽅法 をご紹介します • OpenID Connect を使った、AWS へのセキュアな CI/CD パイプラインの構築⽅法をご紹介します • その他、CircleCI を使った開発⽣産性の⾼い CI/CD の使い⽅についてご紹介します。
  4. 4 アジェンダ • CircleCI について • CircleCI の ARM サポート

    × AWS Graviton 環境への CI/CD パイプライン • OpenID Connect による AWS へのセキュアな接続 • CircleCI with AWS Graviton2(AWS Fargate) デモ • まとめ
  5. 5 アジェンダ • CircleCI について • CircleCI の ARM サポート

    × AWS Graviton 環境への CI/CD パイプライン • OpenID Connect による AWS へのセキュアな接続 • CircleCI with AWS Graviton2(AWS Fargate) デモ • まとめ
  6. 6 CircleCI について

  7. 7 CircleCIのミッションは 「世界中のだれもが、思い浮かんだア イデアをすぐにソフトウェアとして配 信できるように⽀援する」ことです

  8. 8 従業員数 600 ⼈以上 利⽤組織数 22万以上の組織 調達額 3億1,550万ドル 開発者ユーザー 170

    万⼈以上 CircleCI の紹介 サンフランシスコ (アメリカ) デンバー(アメリカ) 東京(⽇本) トロント(カナダ) ボストン(アメリカ) ロンドン(イギリス)
  9. 9 ソフトウェア開発に「継続性」を取り⼊れられたお客様(⼀部)

  10. 10 開発 オーケストレーション 運⽤ コラボレーション ソースコード管理 + さまざまなパートナーとの インテグレーション ツールチェインにおけるCircleCIのポジション

    デリバリ ビルド • テスト • デリバリ 実⾏ モニタリング • 運⽤ 本番環境へのリリース コードコミット VCS⾮依存を今後サポート予定 (プレビュー)
  11. 11 ソフトウェアの変更を常にテストし ⾃動で本番環境にリリース可能な状態にしておく ソフトウェア開発の⼿法 CI/CD(継続的インテグレーション/継続的デリバリー)とは

  12. 12 Continuous Integration(継続的インテグレーション) • コードの変更を迅速かつ安全 にマージできる ◦ ビルド ◦ コード解析

    ◦ ⾃動化されたテスト ◦ 脆弱性チェック • 効果 ◦ ⼿戻りの防⽌ ◦ リリース品質の向上 ◦ ⻑期的なコスト削減
  13. 13 Continuous Delivery(継続的デリバリー) • コードの変更を迅速かつ 安全に展開・配信する • 効果 ◦ ⼈⼿によるミスの防⽌

    ◦ 素早いユーザーへの 価値提供
  14. 14 CircleCI を選ぶべき3つの特徴 最速でデプロイできる プラットフォーム性能 競合サービスよりも ビルド〜デプロイ プロセスを素早く⾏い、 リードタイム を短縮できます

    開発⽣産性を向上させる 強⼒な機能 SHHデバッグ機能など CircleCI の強⼒な機能を 活⽤して、開発⽣産性 を向上させることが できます データに基づく意思決定 を⾏えるインサイト機能 CircleCI は ⾼い可視性を 備えているため、 データを活かしてより 適切な判断ができるよう になります
  15. 15 最速でデプロイできるプラットフォーム性能 CircleCI なら、競合サービスよりもビルド〜デプロイ プロセスを素早く⾏い、リードタイムを短縮できます。 関連機能: • 多種多様な実⾏環境とフリート (リソース クラスは今後さらに拡張予定)

    • 同時実⾏と並列処理のスケーリング (同時実⾏数は最⼤ 80 件) により、組織の開発効率を⾼めビルド速度を向上 できる • テスト分割によりビルド速度をさらに⾼められる 製品レベルの Web アプリを⽤いた⽐較テスト例
  16. 16 スピード・開発⽣産性・可視化を向上させる強⼒な機能 • カスタムリソース ◦ 最適なパフォーマンスを発揮し、 スピードを向上するリソースを選択できます (Docker, Linux, macOS,

    Windows など) • テスト分割 ◦ 複数のコンテナでテストを⾃動で分割し、 RSpec、Cucumber、Django、Node などの多 くのテストを実⾏できます • SSH デバッグ ◦ ビルドコンテナにSSH接続して、ログファイル、 実⾏中のプロセス、ディレクトリパスを表⽰します。 • Insights ダッシュボード ◦ 当社の豊富なデータを活かして、エンジニアリングについてよ り適切な判断ができるようになります。
  17. 17 CircleCI with AWS

  18. 18 アジェンダ • CircleCI について • CircleCI の ARM サポート

    × AWS Graviton 環境への CI/CD パイプライン • OpenID Connect による AWS へのセキュアな接続 • CircleCI with AWS Graviton2(AWS Fargate) デモ • まとめ
  19. 19 CircleCI の ARM サポート × AWS Graviton 環境への CI/CD

    パイプライン
  20. 20 CircleCI の ARM コンピューティングサポート

  21. 21 CircleCI の ARM コンピューティングサポート

  22. 22 CircleCI の ARM コンピューティングサポート https://circleci.com/docs/ja/2.0/using-arm

  23. 23 CircleCI で ARM 開発を⾏うメリット ビジネスの未来につながる ARM の普及は急速に進んでいるの で、AWS Graviton

    プロセッサマシ ンでビルドを⾏うことにより、 次世代のデバイスに対応する準備を 整えられます。 パフォーマンスと効率を向上 AWS Graviton プロセッサなら、 消費電⼒もコストも抑えたまま パフォーマンスを⼤幅に向上 できます。 場所を問わず開発できる AWS Graviton2 などの ARM インフラストラクチャで、 開発したシステムのテストや デプロイが簡単に⾏えるように なります。
  24. 24 https://aws.amazon.com/jp/blogs/news/announcing-aws-graviton2-support-for- aws-fargate-get-up-to-40-better-price-performance-for-your-serverless-containers

  25. 25 https://aws.amazon.com/jp/blogs/news/announcing-aws-graviton2-support-for- aws-fargate-get-up-to-40-better-price-performance-for-your-serverless-containers

  26. 26 Amazon EC2 のコストパフォーマンスを40%向上させる AWS Graviton によるコスト最適化⼊⾨(AWS Summit 2022)

  27. 27 ARM コンピューティング環境で CI を実⾏可能

  28. 28 Amazon EC2 のコストパフォーマンスを40%向上させる AWS Graviton によるコスト最適化⼊⾨(AWS Summit 2022)

  29. 29 arm64 Docker イメージを簡潔にビルドすることが可能

  30. 30 CircleCI × AWS Graviton2 事例 AWS Gravtiton2 とCircleCI を採⽤することでコストの

    50% 削減と パフォーマンス強化を両⽴できるというなら、もはや賭けではありません。 「採⽤しない理由」を探すのが⼤変です。 https://circleci.com/case-studies/honeycomb/
  31. 31 アジェンダ • CircleCI について • CircleCI の ARM サポート

    × AWS Graviton 環境への CI/CD パイプライン • OpenID Connect による AWS へのセキュアな接続 • CircleCI with AWS Graviton2(AWS Fargate) デモ • まとめ
  32. 32 OpenID Connect による AWS へのセキュアな接続

  33. 33 これまでの AWS への認証⽅法

  34. 34 OpenID Connect による AWS への認証⽅法

  35. 35 OpenID Connect による AWS への認証⽅法

  36. 36 OpenID Connect による AWS への認証⽅法(CircleCI Orbs)

  37. 37 https://circleci.com/ja/blog/openid-connect-identity-tokens https://dev.classmethod.jp/articles/circleci- supported-oidc-so-i-tried-linking-it-with-aws/

  38. 38 アジェンダ • CircleCI について • CircleCI の ARM サポート

    × AWS Graviton 環境への CI/CD パイプライン • OpenID Connect による AWS へのセキュアな接続 • CircleCI with AWS Graviton2(AWS Fargate) デモ • まとめ
  39. 39 CircleCI with AWS Graviton2 (AWS Fargate) デモ

  40. 40 デモの内容 • https://github.com/tadashi0713/circleci-graviton-fargate-demo • ARM VM 上で⾃動化されたテストの実⾏(継続的インテグレーション) • CircleCI

    の ARM VM を使って、arm64 Docker イメージをビルド • OpenID Connect を使った AWS への認証 • arm64 Docker イメージを Amazon ECR に Push • AWS Fargate(AWS Graviton2)の ECS タスク・サービスを更新 • CircleCI の CI/CD における機能を紹介 ◦ CircleCI Orbs、SSH デバッグ、Insights ダッシュボード
  41. 41 デモのアーキテクチャー

  42. 42 アジェンダ • CircleCI について • CircleCI の ARM サポート

    × AWS Graviton 環境への CI/CD パイプライン • OpenID Connect による AWS へのセキュアな接続 • CircleCI with AWS Graviton2(AWS Fargate) デモ • まとめ
  43. 43 まとめ

  44. 44 このセッションのまとめ • CircleCI の ARM コンピューティングサポートにより、 AWS Graviton 環境への

    CI/CD パイプラインを 簡潔に作成することが可能 • OpenID Connect を使うことによって、 AWS への CI/CD パイプラインをセキュアにすることが可能 • CircleCI の機能を活⽤して、CI/CD における スピード・⽣産性を向上することが可能 ◦ CircleCI Orbs、SSH デバッグ、Insights ダッシュボード
  45. 45 Thank you!