Terraformは、クラウドインフラストラクチャを安全かつ効率的にプロビジョニングおよび管理できるオープンソースツールです。 Terraformを使用してENSリソースを管理できます。 このトピックでは、Terraformを使用してENSインスタンスを作成する方法について説明します。
手順
RAMユーザーに必要な権限を付与
Terraformテンプレートを実行するために必要な権限をResource Access Management (RAM) ユーザーに付与する必要があります。 RAMユーザーを作成し、AccessKeyペアを取得してから、権限ポリシーをRAMユーザーにアタッチする必要があります。 AccessKeyペアは、Terraformの環境変数として設定されます。 次のポリシーをRAMユーザーにアタッチする必要があります。
AliyunENSFullAccess: ENSリソースを管理するための権限。
Alibaba Cloudアカウントには、すべてのAPI操作に対する権限があります。 Alibaba Cloudアカウントを使用してAPI操作を呼び出すと、セキュリティリスクが発生する可能性があります。 RAMユーザーを使用してAPI操作を呼び出したり、ルーチンのO&Mを実行することを推奨します。RAMユーザーとしてAPI操作を呼び出す前に、ビジネス要件に基づいて必要な権限をRAMユーザーに付与します。 RAMユーザーには、Edge Node Serviceリソースを管理する権限が必要です。 詳細については、「ENSのシステムポリシー」をご参照ください。
Terraformのインストール
PCにTerraformをインストールして構成する方法の詳細については、「ローカルPCにTerraformをインストールして構成する」をご参照ください。
Terraformをインストールしたら、コマンドラインインターフェイス (CLI) を開き、
terraform versionと入力します。 バージョン情報が返された場合は、Terraformがインストールされます。Terraformをインストールしない場合は、Alibaba Cloudが提供するCloud Shellを使用してください。 Cloud Shellは、Terraformに組み込みのランタイム環境を提供します。
テンプレートの作成
eip.tfという名前のファイルを作成し、インスタンスを作成するためのファイルに次の内容を入力します。
variable "name" {
default = "terraform-example"
}
resource "alicloud_ens_eip" "default" {
description = "EipDescription_autotest"
bandwidth = "5"
isp = "cmcc"
payment_type = "PayAsYouGo"
ens_region_id = "cn-chenzhou-telecom_unicom_cmcc"
eip_name = var.name
internet_charge_type = "95BandwidthByMonth"
}テンプレートの実行
この例では、次のステップがWindowsで実行されます。 コマンドを実行する特定の方法は、他のオペレーティングシステムでは異なる場合があります。
プロバイダーモジュールなど、必要なモジュールを初期化して読み込みます。
terraform init
テンプレート構文が有効かどうかを確認します。
terraform validate
実行プランを作成します。
terraform plan
テンプレートをデプロイします。
terraform apply
はいと入力してリソースを変更します。
terraform destroyコマンドを実行して、テンプレートから作成されたリソースを解放します。
インスタンスが作成されたら、API操作を呼び出すか、SDKを使用するか、ENSコンソールにログインしてインスタンスを表示します。
