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
}