Slide 1

Slide 1 text

| © 2023 Cloud Ace, Inc DORA metrics で カジュアルに始める CI/CD 今すぐできる! Takumi Mizuno Sr.Specialist Cloud Ace, lnc. Partner Enginner Google Cloud Japan Issei Hiraoka ©2024 Cloud Ace, Inc

Slide 2

Slide 2 text

スピーカー Takumi Mizuno
 Cloud Ace, lnc. / Sr.Specialist 
 Web アプリケーションエンジニアとして 3 年間で 15 案件に参画し、要件定義、設計、実装、テス トまで幅広く担当。
 現在は Application Modernization 領域に参画し、クラウドネイティブなシステムに移行するため の設計や開発の支援を行っている。 
 得意領域は、アプリケーション設計 (DDD, Microservices)。 


Slide 3

Slide 3 text

クラウドエース株式会社のご紹介 ● 国内ベンダーとして初めて、最上位ラン ク”MSP”を取得 国内初 MSP(1) パートナー ● ベンチャー企業から 東証一部上場企業まで 幅広い企業との取引実績 顧客数 1,400社 Google Cloud からの高い評価 (1) MSP (Managed Service Providersの略):数千のGoogle Cloud Partner のうち、中でも特定条件をクリアしたパートナーにのみ与えられる (現在43社取得) (2) 2024年2月時点

Slide 4

Slide 4 text

4. パート−製品、マーケットプレイス製品の取扱い Google Cloud を活用したサービスの利用拡大を目的として、 パートナー製品としての販 売、Google Cloud マーケットプレイスへの登録などを支援します。 3. トレーニングによるエンジニア育成 現役のトップエンジニア講師による Google Cloud 認定トレーニングを提供し、 毎年数千人のエンジニアを育成しています。 2. システムインテグレーション/マネージドサービス システムのクラウド移行やクラウドネイティブ開発など、お客様のニーズに合わせて コンサル ティングおよび受託開発や内製化技術支援 をご提供します。また 24時間365日の監視運用 サービスも提供しています。 1. 請求代行 と テクニカルサポート Google Cloud の請求代行と共に、特別な料金プランと テクニカルサポートを提供します。 また、個別の課題に対する相談窓口として、 カスタマーサクセス担当者もご支援します。 提供サービス

Slide 5

Slide 5 text

スピーカー Issei Hiraoka
 Google Cloud Japan / Partner Engineer 
 Google Cloud の導入を支援するパートナー企業と連携し、顧客への導入プロジェクトの成功と クラウドビジネスの拡大を支援しています。 


Slide 6

Slide 6 text

1. はじめに
 2. DORA とは何か?
 3. なぜ DORA metrics はカジュアルに CI/CD を始められるのか
 4. 結局、何から始めたら良い? ~ DORA metrics から始める first step ~ 
 5. 実際に CI/CD を導入してみる ~ Cloud Deploy & Skaffold での実践例 ~ 
 6. さいごに
 アジェンダ


Slide 7

Slide 7 text

目指すこと
 ● CI/CD 導入/改善にあたって「何から始めたら良いか」を知ってもらう 
 ● DORA metrics の活用方法を理解してもらう 
 
 目指さないこと
 ● The Accelerate State of DevOps Report 2023 の詳細を理解してもらう 
 ● Cloud Deploy と Skaffold の詳細を理解してもらう 
 発表の位置づけ


Slide 8

Slide 8 text

DORA とは何か?

Slide 9

Slide 9 text

DORA (DevOps Research and Assessment) とは
 
 https://dora.dev/ 2014 年より、DevOps という軸で 
 ● 学術的な統計解析手法を用いて 
 組織やチームを成功に導く 能力やプラクティスを研究
 ● 能力やプラクティスから組織のパフォーマンスを予測 
 DevOps にまつわる 調査・研究をするチーム。


Slide 10

Slide 10 text

State of DevOps Report https://cloud.google.com/devops/state-of-devops/

Slide 11

Slide 11 text

State of DevOps Report の歩み
 2014:
 2015:
 2016:
 2017:
 2018:
 2019:
 2020:
 2021:
 2022:
 2023:
 
 ソフトウェア デリバリー、組織文化
 マネジメント、燃え尽き症候群 + 文化
 セキュリティ、製品 + 文化
 リーダーシップ、自動化 + 文化
 信頼性、クラウド + 文化
 チェンジ マネジメント、トランス フォーメーション + 文化
 DevOps の ROI
 ドキュメンテーション、信頼性 + 文化
 セキュリティ、信頼性 + 文化
 ユーザー中心主義、柔軟なインフラ + 文化
 


Slide 12

Slide 12 text

2023 年度サマリー
 主に以下の 7 つが組織やチームのパフォーマンスにとって有益であるとの結果となった。 
 
 ● 健全な組織文化の確立
 ● ユーザのことを考えた開発
 ● より早いコードレビューによるソフトウエア デリバリーのパフォーマンス向上 
 ● 質の高いドキュメントによる技術的な能力の向上 
 ● クラウドによる柔軟性の高いインフラ 
 ● デリバリー速度、運用のパフォーマンス、ユーザ志向のバランス 
 ● 業務の公平な分担


Slide 13

Slide 13 text

なぜ DORA metrics は カジュアルに CI/CD を 始められるのか

Slide 14

Slide 14 text

以下の 3 つが明確になっていないことが原因に挙げられる。 
 1. 評価基準は何か(指標)
 2. 現状どれくらいできているのか(現在地) 
 3. 目指すべき目標はどこか(ゴール) 
 なぜ CI/CD をカジュアルに始められないのか


Slide 15

Slide 15 text

2023 年版 Accelerate State of DevOps Report Nov 2023

Slide 16

Slide 16 text

1. 評価基準は何か (指標)
 速度 安定性 デプロイ頻度 変更の リードタイム 変更による 失敗率 サービス復旧に かかる時間 エリート DevOps チームであることを Four Keys プロジェクトで確認する | Google Cloud 公式ブログ https://cloud.google.com/blog/ja/products/gcp/using-the-four-keys-to-measure-your-devops-performance?hl=ja DORA では “ 4 つのキー指標 ” を提案


Slide 17

Slide 17 text

2023 年の各クラスタにおいて共通してみられる特徴 
 2. 現状どれくらいできているのか (現在地を知る)
 デプロイ頻度 変更の リードタイム 変更による 失敗率 サービス復旧に かかる時間 回答者比率 Elite オンデマンド 1 日未満 5%  1 時間以内 18%  High 1 日 ~ 1 週間 1 日 ~ 1 週間 10%  1 日以内 31%  Medium 1 週間 ~ 1 月 1 週間 ~ 1 月 15%  1 日 ~ 1 週間 33%  Low 1 週間 ~ 1 月 1 週間 ~ 1 月 64%  1 月 ~ 半年 17% 

Slide 18

Slide 18 text

DORA Quick Check でお手軽に計測できる。業界ごとの水準と比較することも可能。 
 3. 目指すべき目標はどこか(ゴールを決める)
 https://dora.dev/quickcheck/

Slide 19

Slide 19 text

ビジネスの成果 ● 市場シェア ● 収益性 ● 従業員定着率 ● 運用効率性 ● 顧客満足度 ● … DevOps の能力 技術 ● トランクベース開発 ● クラウド インフラストラクチャ ● セキュリティのシフトレフト ● … プロセス ● 小さいバッチ単位での作業 ● 変更承認の合理化 ● バリュー ストリームの可視化 ● … 文化 ● 強い信頼 & 積極的な情報共有 ● 学習文化 ● 変革型リーダーシップ ● …

Slide 20

Slide 20 text

ソフトウェアの デリバリーと運用 パフォーマンス 以下の指標で計測 速度 ● 変更のリードタイム ● デプロイ頻度 安定性 ● サービス復旧にかかる時間 ● 変更による失敗率 信頼性 ビジネスの成果 ● 市場シェア ● 収益性 ● 従業員定着率 ● 運用効率性 ● 顧客満足度 ● … 予測 DevOps の能力 技術 ● トランクベース開発 ● クラウド インフラストラクチャ ● セキュリティのシフトレフト ● … プロセス ● 小さいバッチ単位での作業 ● 変更承認の合理化 ● バリュー ストリームの可視化 ● … 文化 ● 強い信頼 & 積極的な情報共有 ● 学習文化 ● 変革型リーダーシップ ● … 予測

Slide 21

Slide 21 text

結局、何から始めたら良い? ~ DORA metrics から始める first step ~

Slide 22

Slide 22 text

DORA Quick Check で現在地を知る


Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

Google 翻訳 ver 


Slide 25

Slide 25 text

Google 翻訳 ver 


Slide 26

Slide 26 text

1. 変更のリードタイム(結果:平均以下標準偏差内) 
 ● 優先度中で平均値を目指す 
 ● 1 w ~ 1 mo → 1 d ~ 1 w(現状→目標) 
 2. デプロイ頻度(結果:平均以下標準偏差外)
 ● 優先度高で標準偏差内の数値を目指す 
 ● 1 ~ 6 mo → 1 w ~ 1 mo(現状→目標) 
 3. 変更による失敗率(結果:平均以下標準偏差外)
 ● 優先度高で標準偏差内の数値を目指す 
 ● 50 % → 40 %(現状→目標) 
 4. サービス復旧にかかる時間(結果:平均以下標準偏差内) 
 ● 優先度中で平均値を目指す 
 ● 1 d ~ 1 w → 0 ~ 1d(現状→目標) 
 ゴールを設定する


Slide 27

Slide 27 text

技術
 ● クラウドインフラストラクチャ 
 ● CI/CD
 ● 疎結合アーキテクチャ 
 ● オブザーバビリティ etc.
 プロセス
 ● 小さいバッチ単位での作業 
 ● 変更承認の合理化 etc.
 文化
 ● 仕事の満足度
 ● 学習文化
 ● 変革型リーダーシップ etc.
 ゴール達成に必要な DevOps を決める
 DevOps の能力 | Google Cloud https://cloud.google.com/architecture/devops/capabilities?hl=ja

Slide 28

Slide 28 text

実際に CI/CD を導入してみる ~ Cloud Deploy & Skaffold での実践例 ~

Slide 29

Slide 29 text

Cloud Deploy
 CD(継続的デリバリー)に特化した Google Cloud のフルマネージドサービス 
 デプロイフローの自動化を簡単に実現できる 
 Skaffold
 Cloud Deploy が内部で利用するコンテナ開発・ビルド・デプロイのための OSS CLI 
 デリバリーパイプラインをローカル環境で使用することも可能 
 Cloud Deploy, Skaffold とは


Slide 30

Slide 30 text

デリバリーパイプライン


Slide 31

Slide 31 text

デリバリーパイプラインの構成ファイル
 (パイプライン管理) clouddeploy.yaml 
 
 デリバリーパイプラインを定義 
 (実行順序、Rollback 条件、etc.) 
 (成果物管理) skaffold.yaml 
 
 上記のマニフェスト群をまとめて定義 
 デプロイ検証やデプロイフック等の処理もここで定義 
 (マニフェスト)
 service-staging.yaml, service-prod.yaml, etc. 
 
 デプロイするアプリケーションのマニフェストを定義 


Slide 32

Slide 32 text

指標の自動測定


Slide 33

Slide 33 text

速度 安定性 デプロイ頻度 変更の リードタイム 変更による 失敗率 サービス復旧に かかる時間

Slide 34

Slide 34 text

速度 安定性 デプロイ頻度 変更の リードタイム 変更による 失敗率 サービス復旧に かかる時間 2つの指標は Cloud Deploy で測定可能


Slide 35

Slide 35 text

速度 安定性 デプロイ頻度 変更の リードタイム 変更による 失敗率 サービス復旧に かかる時間 全ての指標を自動測定したい場合
 https://cloud.google.com/blog/ja/products/gcp/another-way-to-gauge-your-devops-performance-according-to-dora

Slide 36

Slide 36 text

詳細はこちらから
 https://zenn.dev/cloud_ace/articles/cicd-clouddeploy

Slide 37

Slide 37 text

さいごに

Slide 38

Slide 38 text

まとめ
 以下の手順を踏むことで、カジュアルに CI/CD の導入が可能
 1. DORA Quick Check で現在地を知る
 2. ゴールを設定する
 3. ゴール達成に必要な DevOps を決める
 4. DevOps 導入
 5. 指標を測定し、継続的に改善


Slide 39

Slide 39 text

ソフトウェアの デリバリーと運用 パフォーマンス 以下の指標で計測 速度 ● 変更のリードタイム ● デプロイ頻度 安定性 ● サービス復旧にかかる時間 ● 変更による失敗率 信頼性 ビジネスの成果 ● 市場シェア ● 収益性 ● 従業員定着率 ● 運用効率性 ● 顧客満足度 ● … 予測 DevOps の能力 技術 ● トランクベース開発 ● クラウド インフラストラクチャ ● セキュリティのシフトレフト ● … プロセス ● 小さいバッチ単位での作業 ● 変更承認の合理化 ● バリュー ストリームの可視化 ● … 文化 ● 強い信頼 & 積極的な情報共有 ● 学習文化 ● 変革型リーダーシップ ● … 予測

Slide 40

Slide 40 text

目指すこと
 ● CI/CD 導入/改善にあたって「何から始めたら良いか」を知ってもらう 
 ● DORA metrics の活用方法を理解してもらう 
 
 目指さないこと
 ● The Accelerate State of DevOps Report 2023 の詳細を理解してもらう 
 ● Cloud Deploy と Skaffold の詳細を理解してもらう 
 発表の位置づけ


Slide 41

Slide 41 text

より詳細を知りたい人向けのご紹介
 https://zenn.dev/google_cloud_jp/articles/state-of-devops-report-2023 https://zenn.dev/cloud_ace/articles/cicd-clouddeploy

Slide 42

Slide 42 text

今すぐ実践したい人向けのご紹介


Slide 43

Slide 43 text

4. パート−製品、マーケットプレイス製品の取扱い Google Cloud を活用したサービスの利用拡大を目的として、 パートナー製品としての販 売、Google Cloud マーケットプレイスへの登録などを支援します。 3. トレーニングによるエンジニア育成 現役のトップエンジニア講師による Google Cloud 認定トレーニングを提供し、 毎年数千人のエンジニアを育成しています。 2. システムインテグレーション/マネージドサービス システムのクラウド移行やクラウドネイティブ開発など、お客様のニーズに合わせて コンサル ティングおよび受託開発や内製化技術支援 をご提供します。また 24時間365日の監視運用 サービスも提供しています。 1. 請求代行 と テクニカルサポート Google Cloud の請求代行と共に、特別な料金プランと テクニカルサポートを提供します。 また、個別の課題に対する相談窓口として、 カスタマーサクセス担当者もご支援します。 本格的な支援を受けたい人向けのご紹介


Slide 44

Slide 44 text

Thank you.