Skip to content

Commit a30e075

Browse files
lsy1968shanye997
authored andcommitted
201-use-case-accelerate-ipv4-service-for-ipv6-clients
1 parent c4abfb8 commit a30e075

File tree

2 files changed

+48
-28
lines changed
  • quickstarts/Global_Accelerator(GA)/201-use-case-accelerate-ipv4-service-for-ipv6-clients

2 files changed

+48
-28
lines changed

quickstarts/Global_Accelerator(GA)/201-use-case-accelerate-ipv4-service-for-ipv6-clients/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ No modules.
3636
| [alicloud_instance.example](https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/instance) | resource |
3737
| [alicloud_security_group.example](https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/security_group) | resource |
3838
| [alicloud_security_group_rule.egress](https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/security_group_rule) | resource |
39+
| [alicloud_security_group_rule.ingress](https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/security_group_rule) | resource |
3940
| [alicloud_vpc.example](https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/vpc) | resource |
4041
| [alicloud_vswitch.example](https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/vswitch) | resource |
4142
| [random_integer.example](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/integer) | resource |
@@ -48,7 +49,8 @@ No modules.
4849
|------|-------------|------|---------|:--------:|
4950
| <a name="input_create_ecs_service"></a> [create\_ecs\_service](#input\_create\_ecs\_service) | Do you want to create a service on ecs | `bool` | `true` | no |
5051
| <a name="input_domain_name"></a> [domain\_name](#input\_domain\_name) | Change to your domain name | `string` | `"tf-example.com"` | no |
51-
| <a name="input_region"></a> [region](#input\_region) | n/a | `string` | `"cn-hangzhou"` | no |
52+
| <a name="input_host_record"></a> [host\_record](#input\_host\_record) | 主机记录 | `string` | `"image"` | no |
53+
| <a name="input_region"></a> [region](#input\_region) | Choice a region | `string` | `"cn-hangzhou"` | no |
5254
| <a name="input_service_endpoint"></a> [service\_endpoint](#input\_service\_endpoint) | your service endpoint | `string` | `null` | no |
5355
<!-- END_TF_DOCS -->
5456

quickstarts/Global_Accelerator(GA)/201-use-case-accelerate-ipv4-service-for-ipv6-clients/main.tf

Lines changed: 45 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
1-
1+
# 选择地区
22
variable "region" {
3-
default = "cn-hangzhou"
4-
}
5-
6-
provider "alicloud" {
7-
region = var.region
3+
default = "cn-hangzhou"
4+
description = "Choice a region"
85
}
96

107
# 是否创建部署在ECS的ipv4服务
@@ -14,18 +11,35 @@ variable "create_ecs_service" {
1411
description = "Do you want to create a service on ecs"
1512
}
1613

14+
# 域名
15+
variable "domain_name" {
16+
type = string
17+
default = "tf-example.com"
18+
description = "Change to your domain name"
19+
}
20+
21+
# 主机记录
22+
variable "host_record" {
23+
type = string
24+
default = "image"
25+
}
26+
1727
# 服务地址
1828
variable "service_endpoint" {
1929
type = string
2030
default = null
2131
description = "your service endpoint"
2232
}
2333

24-
# 域名(改为您的域名)
25-
variable "domain_name" {
26-
type = string
27-
default = "tf-example.com"
28-
description = "Change to your domain name"
34+
provider "alicloud" {
35+
region = var.region
36+
}
37+
38+
# 查询可用区
39+
data "alicloud_zones" "example" {
40+
available_resource_creation = "VSwitch"
41+
available_disk_category = local.available_disk_category
42+
available_instance_type = local.instance_type
2943
}
3044

3145
locals {
@@ -34,26 +48,17 @@ locals {
3448
vsw_cidr_block = "172.16.0.0/24"
3549
instance_type = "ecs.e-c1m1.large"
3650
image_id = "aliyun_2_1903_x64_20G_alibase_20240628.vhd"
37-
password = "Terraform@Example"
38-
# ECS中部署服务脚本
51+
ecs_password = "Terraform@Example"
52+
# ECS中部署服务脚本
3953
ecs_command = <<EOS
4054
yum install -y nginx
4155
systemctl start nginx.service
4256
cd /usr/share/nginx/html/
43-
echo "Hello World ! This is ECS." > index.html
57+
echo "Hello World ! This is ECS." > index.html
4458
EOS
4559
}
4660

47-
# 可用区
48-
data "alicloud_zones" "example" {
49-
available_resource_creation = "VSwitch"
50-
available_disk_category = local.available_disk_category
51-
available_instance_type = local.instance_type
52-
available_slb_address_ip_version = "ipv4"
53-
available_slb_address_type = "classic_internet"
54-
}
55-
56-
# 随机数,取值${random_integer.example.result}
61+
# 随机数
5762
resource "random_integer" "example" {
5863
min = 10000
5964
max = 99999
@@ -82,14 +87,26 @@ resource "alicloud_security_group" "example" {
8287
vpc_id = alicloud_vpc.example.0.id
8388
}
8489

90+
# 添加允许TCP 80端口入方向流量的规则
91+
resource "alicloud_security_group_rule" "ingress" {
92+
type = "ingress" # 入方向规则
93+
ip_protocol = "tcp" # TCP协议
94+
nic_type = "intranet" # 内网网卡类型(VPC环境)
95+
policy = "accept" # 允许策略
96+
port_range = "80/80" # 允许80端口
97+
priority = 1 # 优先级设置
98+
security_group_id = alicloud_security_group.example.0.id # 关联的安全组ID
99+
cidr_ip = "10.0.0.0/8" # 允许的IP地址范围,示例为10.0.0.0/8
100+
}
101+
85102
# 添加允许TCP 80端口出方向流量的规则
86103
resource "alicloud_security_group_rule" "egress" {
87104
count = var.create_ecs_service ? 1 : 0
88105
type = "egress" # 入方向规则
89106
ip_protocol = "tcp" # TCP协议
90107
nic_type = "intranet" # 内网网卡类型(VPC环境)
91108
policy = "accept" # 允许策略
92-
port_range = "8/80" # 允许80端口
109+
port_range = "80/80" # 允许80端口
93110
priority = 1 # 优先级设置
94111
security_group_id = alicloud_security_group.example.0.id # 关联的安全组ID
95112
cidr_ip = "10.0.0.0/8" # 允许的IP地址范围,示例为10.0.0.0/8
@@ -108,7 +125,7 @@ resource "alicloud_instance" "example" {
108125
instance_name = "instance_name_${random_integer.example.result}"
109126
vswitch_id = alicloud_vswitch.example.0.id
110127
internet_max_bandwidth_out = 10
111-
password = local.password
128+
password = local.ecs_password
112129
}
113130

114131
# ECS命令
@@ -145,6 +162,7 @@ resource "alicloud_ga_accelerator" "example" {
145162
auto_use_coupon = true
146163
}
147164

165+
# 获取全球加速实例的CNAME
148166
data "alicloud_ga_accelerators" "example" {
149167
ids = [alicloud_ga_accelerator.example.id]
150168
}
@@ -185,7 +203,7 @@ resource "alicloud_ga_endpoint_group" "example" {
185203
resource "alicloud_alidns_record" "example" {
186204
domain_name = var.domain_name
187205
type = "CNAME"
188-
rr = "@"
206+
rr = var.host_record
189207
value = data.alicloud_ga_accelerators.example.accelerators[0].dns_name
190208
ttl = 600
191209
}

0 commit comments

Comments
 (0)