全部产品
Search
文档中心

Resource Orchestration Service:Contoh Template Terraform

更新时间:Jun 26, 2025

Topik ini menyajikan contoh template Terraform yang sering digunakan, termasuk template untuk membuat Instance Elastic Compute Service (ECS), instance ApsaraDB RDS, dan instance Server Load Balancer (SLB).

Buat Instance ECS

Kode berikut menunjukkan contoh template untuk membuat virtual private cloud (VPC), vSwitch, grup keamanan, dan instance ECS.

Catatan

Anda dapat menjalankan kode ini dengan beberapa klik pada tab Kode.

variable "region"{
  default = "cn-beijing"
}

provider "alicloud"{
  region = var.region
}

variable "instance_type" {
  type    = string
  default = "ecs.e-c1m1.large"
}

data "alicloud_zones" "default" {
  available_instance_type     = var.instance_type
  available_resource_creation = "VSwitch"
  available_disk_category     = "cloud_essd"
}

variable "vpc_cidr_block" {
  default = "172.16.0.0/16"
}

variable "vsw_cidr_block" {
  default = "172.16.0.0/24"
}

resource "random_integer" "default" {
  min = 10000
  max = 99999
}

resource "alicloud_vpc" "vpc" {
  vpc_name   = "vpc-test_${random_integer.default.result}"
  cidr_block = var.vpc_cidr_block
}

resource "alicloud_security_group" "group" {
  name   = "test_${random_integer.default.result}"
  vpc_id = alicloud_vpc.vpc.id
}

resource "alicloud_vswitch" "vswitch" {
  vpc_id       = alicloud_vpc.vpc.id
  cidr_block   = var.vsw_cidr_block
  zone_id      = data.alicloud_zones.default.zones[0].id
  vswitch_name = "vswitch-test-${random_integer.default.result}"
}

resource "alicloud_instance" "instance" {
  availability_zone          = data.alicloud_zones.default.zones[0].id
  security_groups            = alicloud_security_group.group.*.id
  instance_type              = var.instance_type
  system_disk_category       = "cloud_essd"
  system_disk_name           = "test_foo_system_disk_${random_integer.default.result}"
  system_disk_description    = "deskripsi_test_foo_system_disk"
  image_id                   = "aliyun_2_1903_x64_20G_alibase_20240628.vhd"
  instance_name              = "test_ecs_${random_integer.default.result}"
  vswitch_id                 = alicloud_vswitch.vswitch.id
  internet_max_bandwidth_out = 10
  password                   = "Terraform@Example"
}

Buat Instance ApsaraDB RDS

Kode berikut menunjukkan contoh template untuk membuat VPC, vSwitch, dan instance ApsaraDB RDS.

Catatan

Anda dapat menjalankan kode ini dengan beberapa klik pada tab Kode.

variable "region" {
  default = "cn-beijing"
}

provider "alicloud" {
  region = var.region
}

data "alicloud_zones" "default" {
  available_resource_creation = "VSwitch"
  available_disk_category     = "cloud_essd"
}

variable "vpc_cidr_block" {
  default = "172.16.0.0/16"
}

variable "vsw_cidr_block" {
  default = "172.16.0.0/24"
}

resource "random_integer" "default" {
  min = 10000
  max = 99999
}

resource "alicloud_vpc" "vpc" {
  vpc_name   = "vpc-test_${random_integer.default.result}"
  cidr_block = var.vpc_cidr_block
}

resource "alicloud_vswitch" "vswitch" {
  vpc_id       = alicloud_vpc.vpc.id
  cidr_block   = var.vsw_cidr_block
  zone_id      = data.alicloud_zones.default.zones[0].id
  vswitch_name = "vswitch-test-${random_integer.default.result}"
}

resource "alicloud_db_instance" "example" {
  engine               = "MySQL"
  engine_version       = "5.6"
  instance_type        = "rds.mysql.s2.large"
  instance_storage     = "30"
  instance_charge_type = "Postpaid"
  instance_name        = "my_db_${random_integer.default.result}"
  vswitch_id           = alicloud_vswitch.vswitch.id
  monitoring_period    = "60"
}

Buat Instance SLB

Kode berikut menunjukkan contoh template untuk membuat VPC, vSwitch, dan instance SLB.

Catatan

Anda dapat menjalankan kode ini dengan beberapa klik pada tab Kode.

variable "region" {
  default = "cn-beijing"
}

provider "alicloud" {
  region = var.region
}

data "alicloud_zones" "default" {
  available_resource_creation = "VSwitch"
  available_disk_category     = "cloud_essd"
}

variable "vpc_cidr_block" {
  default = "172.16.0.0/16"
}

variable "vsw_cidr_block" {
  default = "172.16.0.0/24"
}

resource "random_integer" "default" {
  min = 10000
  max = 99999
}

resource "alicloud_vpc" "vpc" {
  vpc_name   = "vpc-test_${random_integer.default.result}"
  cidr_block = var.vpc_cidr_block
}

resource "alicloud_vswitch" "vswitch" {
  vpc_id       = alicloud_vpc.vpc.id
  cidr_block   = var.vsw_cidr_block
  zone_id      = data.alicloud_zones.default.zones[0].id
  vswitch_name = "vswitch-test-${random_integer.default.result}"
}

resource "alicloud_slb_load_balancer" "default" {
  load_balancer_name = "my_slb_${random_integer.default.result}"
  load_balancer_spec = "slb.s2.small"
  vswitch_id         = alicloud_vswitch.vswitch.id
}