Google Cloud の Terraform 成熟度モデル

このページでは、 Google Cloudでの Terraform の成熟度モデルについて説明します。このモデルは、Google Cloudでの Terraform の導入状況と習熟度に合わせてベスト プラクティス、推奨事項、学習資料を提供します。

概要

Google Cloud の Terraform には、3 つのユーザー ペルソナ(学習者、ビルダー、オペレーター)があり、成熟度モデルでは 3 つのステージ(導入、構築、スケーリング)が設定されています。

組織がインフラストラクチャ構築のために Google Cloud で Terraform の導入、構築、スケーリングを進めていく際に、プロセスのどの段階においても、適切なガイダンスが得られる学習資料がすぐに利用できるようにしておく必要があります。

現在の状況がどのペルソナに該当するのかを判断し、それに関連するコンテンツを調べることで、自身と組織の成熟度の向上に役立つリソースを見つけることができます。これにより、お客様のユースケースを Google Cloud 上の Terraform で大規模に展開することが可能となります。

 Google Cloud での Terraform の成熟度モデルの図

導入(学習者)

学習者は、 Google Cloud への導入を始めるペルソナです。 Google Cloud 上で Terraform を使用して、それをユースケースに採用する方法を学習するための独自のガイダンスが必要となります。

彼らは Bash やその他のスクリプト言語の知識はあるかもしれませんが、インフラストラクチャのプロビジョニングに自動化や CI/CD は現在使用していません。

構築(ビルダー)

ビルダーは Infrastructure as Code の経験があり、 Google Cloud を使用してプロジェクトを構築しています。

ビルダーは、 Google Cloudの基盤となるインフラストラクチャといくつかのアプリケーションを担当しています。ビルダーは、クラウドの使用量、特定のユースケース、カスタマイズ化を拡大することを計画し、より多くのチームやアプリケーションのスケーリングとオンボーディングを検討します。

スケール(オペレーター)

オペレーターは Google Cloud の経験があり、Terraform を使用してワークロードのインフラストラクチャを大規模にプロビジョニングします。

彼らはクラウドの利用、特定のユースケース、カスタマイズ化をスケーリングと拡大し、より多くのチームとワークロードをオンボーディングします。オペレーターは、ワークロード チーム向けにポリシーとセルフサービスのワークフローを設定します。

次の場合は、学習者に該当する可能性があります。

  • デベロッパー
  • Google Cloud、Infrastructure as Code、Terraform を初めて利用する

次の場合、ビルダーになる場合があります。

  • デベロッパー
  • プラットフォーム管理チームの一員
  • クラウドチームの一員
  • SRE
  • Google Cloudと Terraform に精通し、Infrastructure as Code の運用モデルがある

次の場合、オペレーターになる場合があります。

  • プラットフォーム管理チームの一員
  • クラウドチームの一員
  • SRE
  • Google Cloudと大規模な Terraform オペレーション モデルの運用経験がある

条件

次の表は、各成熟度ステージの基準の一部を示しています。Google Cloud での Terraform の習熟度とユースケースのレベルに最適なものを判断するのに役立ちます。

導入 ビルド スケーラビリティ
メソッド UI、CLI、サービスとしての Terraform Infra Manager による Infrastructure as Code (1)Terraform OSS + カスタム パイプラインまたは(2) Google Cloud上の Terraform Enterprise を介した Infrastructure as Code
自動化 なし、または制限あり 限定 はい
の整合性 なし、または制限あり 限定 はい
構成 構造化されていない、さまざまなロケーションに保存された 構造化された、一元的なロケーションに保存された 構造化された、バージョン管理システムに保管、バージョニングされた
配備 手動 CI/CD パイプラインを使用して自動化された CI/CD パイプラインを使用して自動化された
状態 保存されていない 一元的なロケーションに保存された 一元的なロケーションに保存された
Drift モニタリングされていない、または管理されていない モニタリングされた、管理された モニタリングされた、管理された
ドキュメント 管理されていない 維持された ドキュメントが整備された
レビューと承認 省略可 必須 必須
Cloud Management Platform とのインテグレーション 統合されていない 統合されていない クラウド管理プラットフォームと統合された
クラウド リソースの範囲 限定 ワイド ワイド
費用の最適化 ある程度関心がある ある程度関心がある 使用
セキュリティ どちらでもよい ある程度関心がある 非常に関心がある
コンプライアンス どちらでもよい ある程度関心がある 非常に関心がある

推奨事項

次の表に、組織の成熟度と Google Cloudで Terraform を使用するユースケースに基づく推奨トピックを示します。

導入 ビルド スケーラビリティ
発見と学習
トレーニングとチュートリアル
テンプレート/
すぐに使用できる
  • ジャンプ スタート ソリューションのカスタマイズ
  • Terraform ブループリントとモジュールのカスタマイズ
  • 独自の Terraform ブループリントの作成
  • 独自の Terraform モジュールの作成
デプロイと管理
サポート
  • Google Cloud クラウド カスタマーケア
  • Google Cloud + HashiCorp サポート(お客様が両方のサポートを利用できる場合の優先サポート)