阿里云经典负载均衡-Terraform模块
模块支持资源列表:
- VPC
- Subnet
- Load Balancer
- ECS Instance
- Security Group
- RDS Instance
- RDS Account
- RDS Database
- OSS Bucket
使用方法
VPC网络
resource "alicloud_vpc" "default" {
name = "${var.name}" //VPC名称
cidr_block = "172.16.0.0/16" //对应IP段
}
VSWITCH
resource "alicloud_vswitch" "default" {
name = "${var.name}" //vswitch名称
vpc_id = "${alicloud_vpc.default.id}" //所在VPC的ID
cidr_block = "172.16.0.0/24" //管理网段
availability_zone = "${data.alicloud_zones.default.zones.0.id}"
//可用区
}
ECS服务器
resource "alicloud_instance" "instance" {
instance_name = "test2" // 实例名称
instance_type = "ecs.n1.tiny" // 实例规格.如CPU、内存等,详见《ECS实例规格表》
image_id = "${var.alicloud_instance_name}" // 镜像ID
system_disk_category = "${var.system_category}" // 云盘类型:"cloud_efficiency"等
vswitch_id = "${var.vswitch_id}" // 交换机ID
security_groups = ["${security_group.id}"] // 安全组ID
count = "${var.ecs_instance_count}" // 创建实例个数
Redis服务器
resource "alicloud_kvstore_instance" "default" {
instance_class = "redis.master.small.default" //redis类型
instance_name = "${var.name}"
vswitch_id = "${alicloud_vswitch.default.id}"
private_ip = "172.16.0.10"
security_ips = ["10.0.0.1"]
instance_type = "Redis"
engine_version = "4.0"
}
SLB负载均衡
resource "alicloud_slb_server_group" "default" {
load_balancer_id = "${alicloud_slb.default.id}" // 负载均衡器ID
servers {
server_ids = ["${alicloud_instance.instance.0.id}", "${alicloud_instance.instance.1.id}"] // ECS服务器ID
port = 80 // 端口
weight = 100 // 权重
}
}