Terraform テンプレートからのカタログアイテムの作成
Terraform テンプレートからカタログアイテムを作成して、クラウドリソースのプロビジョニングを要求します。アクティブ化されたカタログアイテムは、クラウドユーザーポータルに表示されます。
始める前に
- 適切な Terraform 構成プロバイダーが利用可能であることを確認します。構成プロバイダーの作成の詳細については、「Terraform Open Source 構成プロバイダーの作成」および「Terraform Enterprise または Terraform Cloud 構成プロバイダーの作成」を参照してください。
- Terraform テンプレートが機能していることを確認します (つまり、Terraform システムでテンプレートを直接使用して、指定されたクラウドリソースをプロビジョニングできます)。Terraformテンプレートの詳細については、 Terraform 言語ドキュメント.
- Terraform テンプレートの provider ブロックが次の構文に従っていることを確認します。
- Microsoft Azure クラウドの provider ブロックの構文:
provider "azurerm" { subscription_id = "${var.subscriptionId}" client_id = "${var.clientId}" client_secret = "${var.clientSecret}" tenant_id = "${var.tenantId}" } - Amazon Web サービス クラウドの provider ブロックの構文:
provider "aws" { access_key = "${var.access_key}" secret_key = "${var.secret_key}" region = "${var.region}" } - Google Cloud Platform の provider ブロックの構文
terraform { required_providers { google = { source = "hashicorp/google" version = "5.10.0" } } } provider "google" { credentials = var.credentials project = var.project region = var.region } - VMware Cloud の provider ブロックの構文:
provider "vsphere" { user = "${var.user}" password = "${var.password}" vsphere_server = "${var.vsphere_server}" }注:Terraform テンプレートに認証情報をハードコーディングしないでください。適切な Terraform 変数を使用して、Now Platform から認証情報をフェッチしてください。
- Microsoft Azure クラウドの provider ブロックの構文:
- 変数定義ファイル (variable.tf、.tfvars、または .tfvars.json) に、provider ブロックで使用される変数の定義が含まれていることを確認します。
- Terraform Enterprise または Terraform Cloudを使用している場合は、MID サーバー が Terraform 組織でプロビジョニングされたバージョン管理システム (VCS) アカウントに接続できることを確認してください。 Terraform 組織でプロビジョニングされた VCS アカウントとの接続を確認するには、MID サーバー で適切な curl コマンドを実行します。
- GitHub
curl -H "Authorization: <API credential> https://<github-api-host>/user/repos?per_page=100&page=1"- GitLab
curl -H "Authorization: <API credential>" https://<gitlab-api-host>/api/v4/projects?visibility=private&per_page=100&page=1- Microsoft Azure DevOps
curl -H "Authorization: <API credential> https://<azure-devops-api-host>/<organization>/<project>/_apis/git/repositories?api-version=6.0"ここで、- organization は、Microsoft Azure DevOps 組織の名前です。
- project は、Microsoft Azure DevOps プロジェクトの名前です。
API 認証情報の詳細については、「[クラウドプロビジョニングとガバナンス:Terraform Connector API キー認証情報] フォームの参照」を参照してください。
必要なロール:sn_cmp.cloud_service_designer
このタスクについて
- 文字列
- 番号
- ブール
- リスト
- タプル
- マップ
- オブジェクト
手順
-
クラウドカタログアイテムを作成します。
-
Terraform テンプレートをカタログアイテムに関連付けます。
- オプション: カタログアイテムフォームのフィールドを追加または削除するには、カタログアイテムに関連付けられた変数セットを編集します。
- [アクティブ] チェックボックスを選択して、カタログアイテムを有効にします。
- [更新] を選択します。