採用に関する考慮事項
IBM Cloud Schematics を導入する際には、以下の点を検討してください。 また、 Git リポジトリに保存されたTerraform構成を操作する方法の詳細については、「 ワークスペースの設定 」のセクションも参照してください。
ネイティブの Terraform との違い
以前にネイティブのTerraformを使用しており、Terraformテンプレートを IBM Cloud Schematics に移行する予定の場合は、スタンドアロンのTerraformの使用方法と、 Schematics 経由での使用方法の違いを十分に理解した上で、テンプレートを修正してください。
IBM Cloud API キーを provider ブロックに提供する必要はありますか?
Schematics では、API キーを渡す必要はありません。
API キーが provider ブロックで定義されていない場合、 Schematics は、 IBM Cloud Kubernetes Service クラスターおよび VPC インフラストラクチャー・リソースを含むすべての IAM 対応リソースのユーザー IAM トークンを渡します。 ただし、 クラシック・インフラストラクチャーについては、IAMトークンは取得されないため、 provider ブロックにAPIキーを指定する必要があります。
IBM Cloud® のAPIキーが渡された場合、そのキーは IBM Cloud プラットフォームでの認証、 Schematics がリソースのAPIを操作するために必要なIAMトークンおよびIAMリフレッシュトークンの生成、およびプロビジョニング操作を実行するために付与された権限の判定に使用されます。
provider ブロックを構成する方法について詳しくは、provider ブロックの構成を参照してください。
ローカルの terraform.tfvars ファイルを使用できますか?
terraform.tfvars ファイルは、ネイティブのTerraformを使用する際に、 IBM Cloud のAPIキーやクラシック・インフラストラクチャーユーザー名などの機密情報を保存するために使用できるローカル変数ファイルです。 Terraform CLI を初期化する際に、Terraform が認証情報の読み込みを行うためには、ローカルマシンにこのファイル、または環境変数が存在している必要があります。
IBM Cloud Schematics では、ローカルの terraform.tfvars ファイルは使用しません。 代わりに、Terraform 構成ファイル内で変数を宣言し、ワークスペースの作成時にその変数の値を入力します。 変数の値は、後でワークスペースの詳細ページから変数を更新して変更できます。
Terraformのリモートステートはサポートされていますか?
Schematics には暗黙的なバックエンド・サポートが含まれており、リモート・バックエンドを定義する必要はありません。
Schematics ibm_schematics_output データ・ソースを使用して、他のワークスペースからワークスペースの状態情報にアクセスできます。 これにより、リモート・バックエンド・サポートとともにネイティブ Terraform で使用される remote_state データ・ソースが置き換えられます。 これは、Terraform ワークスペースへのアクセスを許可するのと同じ方法で機能します。
ibm_schematics_output データ・ソースを使用すると、組み込みの Schematics バックエンドに自動的にアクセスでき、ワークスペース情報に直接アクセスできます。
ibm_schematics_state データ・ソースも参照してください。
これらのデータソースの使用方法の詳細については、「 Terraform を使用したワークスペース間の状態へのアクセス管理 」を参照してください。
local-exec および remote-exec プロビジョナーが 30 分後に終了するのはなぜですか?
Terraform の local exec 操作と remote exec 操作には、 30 minutes の時間制限があります。 これは、すべてのユーザーが Schematics サービスを適切に使用できるようにするためです。 これを超えると、コマンドは終了し、ジョブの実行は失敗します。
リフレッシュ・トークン・ヘッダーの用途は何ですか?
destroyresource フラグが true に設定されている場合、すべてのCloudリソースおよび Schematics ワークスペースを削除するには、リフレッシュトークンヘッダーの設定が必要です。 リフレッシュ・トークン・ヘッダーの用途は以下のとおりです。
- トークンの有効期限が切れた場合は、
refresh tokenを使用して新しい IAM アクセス・トークンを取得できます。IAM アクセス・トークンを参照してください。 refresh_tokenパラメーターを使用して新しい IAM アクセス・トークンを取得することはできません。- IAMアクセストークンの有効期限が切れそうになったら、 APIキー を使用して新しいアクセストークンを作成してください。
Git リポジトリーの制約事項
/(バックスラッシュ)を含むブランチ名はサポートされていません。
費用の見積もり
コスト見積もりはテンプレートで使用できます。 この見積もり金額は、アーキテクチャーがプロジェクト内でカスタマイズされているため変更される可能性があり、すべてのリソース、使用量、ライセンス、料金、割引、または税金が含まれているわけではありません。 将来的には、さまざまな基準でグループ化できる複数のプロジェクトにわたってコストを集約することができます。 詳しくは、 インフラストラクチャー・コストの見積もり を参照してください。