CIS 用 Terraform のセットアップ
IBM Cloud® 上のTerraformを利用することで、 IBM Cloud サービスの予測可能かつ一貫性のある構築が可能となり、Infrastructure as Code( IaC )の原則に従って、複雑で多層的なクラウド環境を迅速に構築できます。 IBM Cloud のCLIやAPI、SDKを使用する場合と同様に、 HashiCorp Configuration Language(HCL)を使用することで、 IBM Cloud Internet Services インスタンスの作成、更新、削除を自動化できます。
管理対象の Terraform on IBM Cloud® ソリューションをお探しですか? IBM Cloud® Schematics をお試しください。 Schematics を使用すれば、使い慣れた Terraform スクリプト言語を利用できるだけでなく、Terraform コマンドラインや「 IBM Cloud® 」プロバイダ・プラグインの設定や保守について心配する必要もありません。また、 Schematics では、 IBM Cloud® カタログからインストールできる、あらかじめ定義された Terraform テンプレートも提供されています。
Terraform のインストールと IBM Cloud Internet Services のリソースの構成
Terraformを使用して認可を作成する前に、以下の前提条件を完了してください:
- IBM Cloud Internet Services の作成と操作に 必要なアクセス権を持って いることを確認してください。
- Terraform CLI をインストールし、Terraform 用の「 IBM Cloud 」プロバイダープラグインを設定します。 詳しくは、 IBM Cloud のTerraformを始めるを 参照のこと。 このプラグインは、このタスクを実行するために使用される IBM Cloud のAPIを抽象化しています。
main.tfという名前の Terraform 設定ファイルを作成します。 このファイルを使用して、 HashiCorp Configuration Language (HCL) でTerraformコードを記述することで、サービス間の認可を定義する。 詳細については、 Terraformのドキュメントを参照してください。
-
Terraformの設定ファイルで、 CIS インスタンスの作成に使用したTerraformコードを探してください。
-
main.tfファイルのibm_resource_instanceリソース引数を使用して、 CIS インスタンスを作成します。 次の例にある CIS インスタンスは、「test」という名前で、Standard料金プランで作成されています。resource_group_idはdata.ibm_resource_group.group.idであり、ロケーション・プロパティーはglobalに設定されます。data "ibm_resource_group" "group" { name = "test" } resource "ibm_cis" "cis_instance" { name = "test" plan = "standard-next" resource_group_id = data.ibm_resource_group.group.id tags = ["tag1", "tag2"] location = "global" //User can increase timeouts timeouts { create = "15m" update = "15m" delete = "15m" } }resource_group_idを指定しない場合、 CIS インスタンスはデフォルトのリソース・グループに作成されます。API_KEY、このグループのパーミッションを持っていなければならない。あるプランから別のプランに移行する場合、その変更は既存のリソースの変更とみなされます。 リソースの作成や削除とはみなされない。
-
構成ファイルの作成が完了したら、Terraform CLI を初期化します。 詳しくは、 作業ディレクトリの初期化を参照。
terraform init -
main.tfファイルからリソースをプロビジョンします。 詳しくは、 インフラストラクチャをプロビジョニングするためのTerraformワークフローを参照してください。terraform planを実行して、提案されたアクションをプレビューするための Terraform 実行プランを生成します。
terraform planterraform applyを実行して、計画に定義されているリソースを作成します。
terraform apply -
「 IBM Cloud 」のリソース一覧から、作成した CIS インスタンスを選択し、インスタンスIDを確認してください。
-
アクセス・ポリシーが正常に割り当てられていることを確認します。 詳細については、割り当てられたアクセス権限をコンソールで確認を参照してください。
次のステップ
IBM Cloud で Terraform を使用して最初の CIS サービスインスタンスの作成に成功したところで、 CIS Cloud Internet Services (CIS) の Terraform レジストリにアクセスし、Terraform を使用してさらなるタスクを実行することができます。