本文介紹如何通過Terraform購買並啟用KMS軟體密鑰管理執行個體。
概述
購買並啟用軟體密鑰管理執行個體時,您需要為該KMS執行個體綁定VPC以及交換器,也支援為該KMS執行個體關聯多個VPC。配置完成後產生CA執行個體認證,請您妥善儲存,在應用訪問KMS執行個體時需要配置該CA執行個體認證。
瞭解更多關於KMS軟體密鑰管理執行個體的配置資訊,請參見alicloud_kms_instance。
使用限制
Terraform需要為0.14.0及以上版本,建議使用最新版本,您可以登入Terraform官網下載。
僅支援購買及啟用軟體密鑰管理執行個體,不支援購買及啟用硬體密鑰管理執行個體。
前提條件
使用RAM使用者登入Terraform時,需要為該RAM使用者授予AliyunKMSFullAccess(管理Key Management Service)、AliyunVPCFullAccess(管理專用網路)和AliyunBSSFullAccess(管理費用中心BSS)許可權。具體操作,請參見為RAM使用者授權。
操作步驟
建立一個工作目錄,並且在工作目錄中建立以下名為
main.tf
的設定檔。main.tf:Terraform主檔案,定義了將要部署的資源。
//建立VPC resource "alicloud_vpc" "example" { vpc_name = "terraform-example" cidr_block = "172.16.XX.XX/16" } //建立一個Vswitch resource "alicloud_vswitch" "example1" { vpc_id = alicloud_vpc.example.id cidr_block = "172.16.XX.XX/24" zone_id = "cn-chengdu-a" vswitch_name = "terraform-example-1" } //建立另一個Vswitch resource "alicloud_vswitch" "example2" { vpc_id = alicloud_vpc.example.id cidr_block = "172.16.XX.XX/24" zone_id = "cn-chengdu-b" vswitch_name = "terraform-example-2" } //建立KMS軟體密鑰管理執行個體,並使用網路參數啟動 resource "alicloud_kms_instance" "software_instance_example" { //軟體密鑰管理執行個體 product_version = "3" //計算效能、密鑰數量、憑據數量、訪問管理數量 spec = "1000" key_num = "1000" secret_num = "2000" vpc_num = "3" //自動續約狀態、自動續約周期,單位“月” renew_status = "AutoRenewal" renew_period = "3" //為KMS執行個體設定網路參數 vpc_id = alicloud_vpc.example.id zone_ids = [alicloud_vswitch.example1.zone_id, alicloud_vswitch.example2.zone_id] vswitch_ids = [alicloud_vswitch.example1.id,alicloud_vswitch.example2.id] //為KMS執行個體關聯其他VPC //如果VPC與KMS執行個體的VPC屬於不同阿里雲帳號,您需要先共用交換器。 bind_vpcs { vpc_id = "vpc-j6cy0l32yz9ttxfy6****" vswitch_id = "vsw-j6cv7rd1nz8x13ram****" region_id = "cn-hangzhou" vpc_owner_id = "119285303511****" } bind_vpcs { vpc_id = "vpc-j6cy0l32yz9ttd7g3****" vswitch_id = "vsw-3h4yrd1nz8x13ram****" region_id = "cn-hangzhou" vpc_owner_id = "119285303511****" } } //儲存KMS執行個體CA認證到本地檔案 resource "local_file" "ca_certificate_chain_pem" { content = alicloud_kms_instance.default.ca_certificate_chain_pem filename = "ca.pem" }
執行
terraform init
命令初始化Terraform運行環境。執行
terraform plan
命令產生資源規劃。執行
terraform apply
命令。