ワークスペース適用の実行
Schematics は、ワークスペースを使用して、 IBM Cloud® アカウント内のリソースをデプロイおよび管理します。
IBM Cloud Schematics これにより、世界中のあらゆる IBM Cloud のロケーションやリージョンにおいて、リソースのデプロイと管理が可能になります。 Schematics のワークスペースやアクションを作成・操作するリージョンは、Cloudリソースがデプロイまたは構成されているリージョンとは独立しています。
IBM Cloud Schematics は、ワークスペースをホスティングする Schematics 領域からジョブを実行し、Terraform テンプレートによって決定されたターゲット領域内のリソースをプロビジョンするためにサービスにリモートでアクセスします。 リモート領域でのワークスペース操作は、管理領域とターゲット領域の間のネットワーク待ち時間の影響を受けません。
IBM Cloud Schematics Terraformの旧バージョンのサポートを終了し、新しいバージョンのTerraformへの対応を導入しています。 詳細については、「 Schematics 」のTerraformの非推奨ライフサイクル および 非推奨スケジュール をご覧ください。
開始前に
- Terraform 構成を作成し、その構成を
GitHubリポジトリー、GitLabリポジトリー、またはBitbucketリポジトリーに保管します。 また、ローカルワークステーションからテープアーカイブファイル(.tar)をアップロードして、 IBM Cloud Schematics にテンプレートを提供することもできます。 詳細については、ibmcloud schematics workspace uploadコマンドおよび「tarファイルをワークスペースにアップロードする API」を参照してください。 - ワークスペースを作成する 権限 があることを確認してください。
Schematics のワークスペースとアクションをリストするときに、 location と url エンドポイントが同じ地域を指していることを確認してください。 ロケーションとエンドポイントについて詳しくは、 情報の保管場所 を参照してください。
- ワークスペースに対して「 Schematics 」の適用ジョブを実行します。 適用ジョブは、ワークスペースが指し示すTerraformテンプレートで記述されたクラウドリソースをプロビジョニング、変更、または削除します。 プロビジョニングまたは変更するリソースの種類や数によっては、この処理が完了するまでに数分から数時間かかる場合があります。 この間は、ワークスペースを編集できません。 すべての更新が適用された後も、ファイルの状態は保持され、 IBM Cloud アカウントにどのようなリソースが存在するかが判断されます。
UI を使用したワークスペース適用の実行
- IBM Cloudコンソールにログインします。
- メニューアイコンの
>Platform Automation>Schematics>Terraformをクリックします。
- 特定の場所でワークスペースを検索し、ワークスペース名をクリックします。
- 「 プランを適用 」をクリックして、設定したリソースをプロビジョニングします。
ワークスペースの適用の検証
- IBM Cloud コンソール にリストされているワークスペースをクリックして、ワークスペース適用ジョブの結果を表示します。
CLI を使用したワークスペース適用の実行
-
パラメーターを 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> -
ワークスペースを適用します。 アプライ引数フラグについて詳しくは、
ibmcloud schematics applyコマンドを参照してください。ibmcloud schematics apply --id <workspace_id> -
ワークスペースの適用が正常に実行されたことを確認します。 ワークスペースが「 非アクティブ 」状態になっていることを確認してください。
ibmcloud schematics workspace list -
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 を使用したワークスペース・デプロイの実行
-
手順に従って、API を使用して IAM アクセス・トークンを取得し、IBM Cloud Schematics で認証します。
-
既存のワークスペースのデプロイを実行します。
例
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" } ] }] } -
ワークスペース・デプロイに、作成されたすべてのワークスペース・ジョブがリストされていることを確認します。
curl -X GET https://schematics.cloud.ibm.com/v1/workspaces -H "Authorization: <iam_access_token>" -
Schematics でクラウドリソースを管理する を参照し、Terraformでクラウドリソースの作成、更新、削除を開始します。
ワークスペースのデプロイの検証
出力に示されているように、ワークスペースが正常にデプロイされたことを確認します。
Output
```text {: screen}
{
"activityid": "a75d99109c80291faead70225b5409ee"
}
```
ワークスペースが正常に適用されると、ワークスペースで実行されたジョブ・アクティビティー ID が返されます。 詳しくは、 トラブルシューティングのセクション を参照してください。
Terraform を使用したワークスペース・デプロイの実行
-
Schematics 用の Terraform のセットアップの手順に従って、Terraform を使用してワークスペースを作成します。
-
Terraform を使用してクラウド リソースを作成、更新、または削除するには Schematics を使用したクラウド リソースの管理」 を参照してください。
次のステップ
ワークスペースを管理するには、 ワークスペースのデプロイ、 ワークスペースの破棄、および ワークスペースの削除 を参照してください。