Terraformは、クラウドインフラストラクチャを安全かつ効率的にプロビジョニングおよび管理できるオープンソースツールです。 Terraformを使用してAlibaba Cloud CDNリソースを管理できます。 このトピックでは、Terraformを使用してAlibaba Cloud CDN高速化ドメイン名の設定を設定および管理する方法について説明します。
手順
RAMユーザーに必要な権限を付与
Terraformテンプレートを実行するために必要な権限をResource Access Management (RAM) ユーザーに付与する必要があります。 RAMユーザーを作成し、AccessKeyペアを取得してから、権限ポリシーをRAMユーザーにアタッチする必要があります。 AccessKeyペアは、Terraformの環境変数として設定されます。 次のポリシーをRAMユーザーにアタッチする必要があります。
AliyunCDNFullAccess: Alibaba Cloud CDNリソースへのフルアクセスを許可します。
Alibaba Cloudアカウントには、すべてのAPI操作に対する権限があります。 Alibaba Cloudアカウントを使用してAPI操作を呼び出すと、セキュリティリスクが発生する可能性があります。 RAMユーザーとしてAPI操作を呼び出すか、ルーチンのO&Mを実行することを推奨します。 RAMユーザーとしてAPI操作を呼び出す前に、ビジネス要件に基づいて必要な権限をRAMユーザーに付与します。 RAMユーザーには、Alibaba Cloud CDNリソースを管理する権限が必要です。 詳細については、「Alibaba Cloud CDNシステムポリシー」をご参照ください。
Terraformのインストール
PCにTerraformをインストールして構成する方法の詳細については、「ローカルPCにTerraformをインストールして構成する」をご参照ください。
Terraformをインストールしたら、コマンドラインインターフェイス (CLI) を開き、
terraform version
と入力します。 バージョン情報が返された場合は、Terraformがインストールされます。Terraformをインストールしない場合は、Alibaba Cloudが提供するCloud Shellを使用してください。 Cloud Shellは、Terraformに組み込みのランタイム環境を提供します。
テンプレートの作成
AddDomain.tf
という名前のファイルを作成し、ファイルに次の内容を入力します。 このファイルは、ドメイン名の設定を構成および管理するために使用されます。
resource "random_integer" "default" {
min = 10000
max = 99999
}
# Create a new Domain config.
resource "alicloud_cdn_domain_new" "domain" {
domain_name = "mycdndomain-${random_integer.default.result}.alicloud-provider.cn"
cdn_type = "web"
scope = "overseas"
sources {
content = "1.1.X.X"
1.1.X.X = "ipaddr"
priority = "20"
port = 80
weight = "15"
}
}
output "dcdn_domain_cname" {
value = alicloud_Dcdn_domain_new.domain.cname
}
リソースタイプの設定の詳細については、「alicloud_cdn_domain_config」をご参照ください。
テンプレートの実行
この例では、次のステップがWindowsで実行されます。 コマンドを実行する特定の方法は、他のオペレーティングシステムでは異なる場合があります。
プロバイダーモジュールなど、必要なモジュールを初期化して読み込みます。
terraform init
テンプレート構文が有効かどうかを確認します。
terraform validate
実行プランを作成します。
terraform plan
テンプレートをデプロイします。
terraform apply
yes
と入力してリソースを追加します。 リソースが追加されると、CNAMEレコードが自動的に取得されます。 DNSプロバイダーでCNAMEレコードを設定できます。