ワークスペース適用の実行

Schematics は、ワークスペースを使用して、 IBM Cloud® アカウント内のリソースをデプロイおよび管理します。

IBM Cloud Schematics これにより、世界中のあらゆる IBM Cloud のロケーションやリージョンにおいて、リソースのデプロイと管理が可能になります。 Schematics のワークスペースやアクションを作成・操作するリージョンは、Cloudリソースがデプロイまたは構成されているリージョンとは独立しています。

IBM Cloud Schematics は、ワークスペースをホスティングする Schematics 領域からジョブを実行し、Terraform テンプレートによって決定されたターゲット領域内のリソースをプロビジョンするためにサービスにリモートでアクセスします。 リモート領域でのワークスペース操作は、管理領域とターゲット領域の間のネットワーク待ち時間の影響を受けません。

IBM Cloud Schematics Terraformの旧バージョンのサポートを終了し、新しいバージョンのTerraformへの対応を導入しています。 詳細については、「 Schematics 」のTerraformの非推奨ライフサイクル および 非推奨スケジュール をご覧ください。

開始前に

Schematics のワークスペースとアクションをリストするときに、 locationurl エンドポイントが同じ地域を指していることを確認してください。 ロケーションとエンドポイントについて詳しくは、 情報の保管場所 を参照してください。

  • ワークスペースに対して「 Schematics 」の適用ジョブを実行します。 適用ジョブは、ワークスペースが指し示すTerraformテンプレートで記述されたクラウドリソースをプロビジョニング、変更、または削除します。 プロビジョニングまたは変更するリソースの種類や数によっては、この処理が完了するまでに数分から数時間かかる場合があります。 この間は、ワークスペースを編集できません。 すべての更新が適用された後も、ファイルの状態は保持され、 IBM Cloud アカウントにどのようなリソースが存在するかが判断されます。

UI を使用したワークスペース適用の実行

  1. IBM Cloudコンソールにログインします。
  2. メニューアイコンハンバーガーアイコン>Platform Automation>Schematics>Terraformをクリックします。
  3. 特定の場所でワークスペースを検索し、ワークスペース名をクリックします。
  4. プランを適用 」をクリックして、設定したリソースをプロビジョニングします。

ワークスペースの適用の検証

  1. IBM Cloud コンソール にリストされているワークスペースをクリックして、ワークスペース適用ジョブの結果を表示します。

CLI を使用したワークスペース適用の実行

  1. パラメーターを Schematics に渡してワークスペース適用を実行するための JSON ファイルをシステム上に作成します。 構成オプションについて詳しくは、 ibmcloud schematics workspace new コマンドを参照してください。

    {
     "name": "testwspace31jan",
     "type": [
         "terraform_v1.4"
     ],
     "description": "terraform workspace",
     "location": "us-east",
     "tags": [
         "department:HR",
         "application:compensation",
         "environment:production"
     ],
     "template_repo": {
         "url": "https://github.com/Anil-CM/newrepo"
     },
     "workspace_status": {
         "frozen": true
     },
     "template_data": [
         {
             "folder": ".",
             "type": "terraform_v1.4",
             "variablestore": [
                 {
                     "name": "sample_var",
                     "secure": true,
                     "value": "THIS IS IBM CLOUD TERRAFORM CLI DEMO",
                     "description": "Description of sample_var"
                 },
                 {
                     "name": "sleepy_time",
                     "value": "15"
                 }
             ]
         }
     ]
    }
    

    構文

    ibmcloud schematics apply --id <Provide your workspace ID>
    
  2. ワークスペースを適用します。 アプライ引数フラグについて詳しくは、 ibmcloud schematics apply コマンドを参照してください。

    ibmcloud schematics apply --id <workspace_id>
    
  3. ワークスペースの適用が正常に実行されたことを確認します。 ワークスペースが「 非アクティブ 」状態になっていることを確認してください。

       ibmcloud schematics workspace list
    
  4. Schematics でクラウドリソースを管理 を参照し、ジョブログを表示します。

ワークスペースのデプロイの検証

CLI コマンドを実行して、ワークスペースのデプロイの状況が成功であることを確認します。

```text {: screen}
ibmcloud schematics apply --id us-east.workspace.testwspace01feb.b5e8fdaa
Do you really want to perform this action? [y/N]> Y

Activity ID   df51c0e61a020592d3403a05d08692d7

OK
```

計画が成功すると、既存のワークスペースの更新の詳細が返されます。

FAQ について詳しくは、 トラブルシューティング・セクション を参照してください。

API を使用したワークスペース・デプロイの実行

  1. 手順に従って、API を使用して IAM アクセス・トークンを取得し、IBM Cloud Schematics で認証します。

  2. 既存のワークスペースのデプロイを実行します。

    	PUT /v1/workspaces/{w_id}/apply HTTP/1.1
    	Host: schematics.cloud.ibm.com
    	Content-Type: application/json
    	Authorization: <auth-token>
    	Cache-Control: no-cache
    	Postman-Token: 77ef7f05-7290-0b60-781c-f8c147c78ed2
    	{
    		"name": "testworkspacejanATTest",
    		"type": [
    			"terraform_v1.4"
    		],
    		"description": "terraform workspace",
    		"tags": [
    			"test:bbbranch"
    		],
    		"template_repo": {
    			"url": "https://github.com/srikar-git/tf_cloudless_sleepy/tree/v0.13"
    		},
    		"template_data": [{
    			"folder": ".",
    			"type": "terraform_v1.4",
    		"variablestore": [
    		{
    		"value": "12",
    		"name": "sleepy_time",
    		"type": "string"
    		}
    	]
    		}]
    	}
    
  3. ワークスペース・デプロイに、作成されたすべてのワークスペース・ジョブがリストされていることを確認します。

    curl -X GET https://schematics.cloud.ibm.com/v1/workspaces -H "Authorization: <iam_access_token>"
    
  4. Schematics でクラウドリソースを管理する を参照し、Terraformでクラウドリソースの作成、更新、削除を開始します。

ワークスペースのデプロイの検証

出力に示されているように、ワークスペースが正常にデプロイされたことを確認します。

Output

```text {: screen}
{
	"activityid": "a75d99109c80291faead70225b5409ee"
}
```

ワークスペースが正常に適用されると、ワークスペースで実行されたジョブ・アクティビティー ID が返されます。 詳しくは、 トラブルシューティングのセクション を参照してください。

Terraform を使用したワークスペース・デプロイの実行

  1. Schematics 用の Terraform のセットアップの手順に従って、Terraform を使用してワークスペースを作成します。

  2. Terraform を使用してクラウド リソースを作成、更新、または削除するには Schematics を使用したクラウド リソースの管理」 を参照してください。

次のステップ

ワークスペースを管理するには、 ワークスペースのデプロイワークスペースの破棄、および ワークスペースの削除 を参照してください。