Skip to content

Commit faca8c0

Browse files
authored
Merge branch 'master' into master
2 parents 913acef + c08c1fb commit faca8c0

File tree

3 files changed

+64
-122
lines changed

3 files changed

+64
-122
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
ENHANCEMENTS:
44

55
* Resource: `tencentcloud_gaap_http_rule` argument `realservers` now is optional.
6+
* Resource: `tencentcloud_kubernetes_cluster` supports multiple `availability_zone`.
7+
68

79
## 1.39.0 (July 18, 2020)
810

tencentcloud/resource_tc_kubernetes_cluster.go

Lines changed: 31 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -4,41 +4,53 @@ Provide a resource to create a kubernetes cluster.
44
Example Usage
55
66
```hcl
7-
variable "availability_zone" {
7+
variable "availability_zone_first" {
88
default = "ap-guangzhou-3"
99
}
1010
11-
variable "vpc" {
12-
default = "vpc-dk8zmwuf"
11+
variable "availability_zone_second" {
12+
default = "ap-guangzhou-4"
1313
}
1414
15-
variable "subnet" {
16-
default = "subnet-pqfek0t8"
15+
variable "cluster_cidr" {
16+
default = "10.31.0.0/16"
1717
}
1818
1919
variable "default_instance_type" {
20-
default = "S1.SMALL1"
20+
default = "SA2.2XLARGE16"
21+
}
22+
23+
data "tencentcloud_vpc_subnets" "vpc_first" {
24+
is_default = true
25+
availability_zone = var.availability_zone_first
26+
}
27+
28+
data "tencentcloud_vpc_subnets" "vpc_second" {
29+
is_default = true
30+
availability_zone = var.availability_zone_second
2131
}
2232
23-
#examples for MANAGED_CLUSTER cluster
2433
resource "tencentcloud_kubernetes_cluster" "managed_cluster" {
25-
vpc_id = var.vpc
26-
cluster_cidr = "10.31.0.0/16"
27-
cluster_max_pod_num = 32
28-
cluster_name = "test"
29-
cluster_desc = "test cluster desc"
30-
cluster_max_service_num = 32
34+
vpc_id = data.tencentcloud_vpc_subnets.vpc_first.instance_list.0.vpc_id
35+
cluster_cidr = var.cluster_cidr
36+
cluster_max_pod_num = 32
37+
cluster_name = "test"
38+
cluster_desc = "test cluster desc"
39+
cluster_max_service_num = 32
40+
cluster_internet = true
41+
managed_cluster_internet_security_policies = ["3.3.3.3", "1.1.1.1"]
42+
cluster_deploy_type = "MANAGED_CLUSTER"
3143
3244
worker_config {
33-
count = 2
34-
availability_zone = var.availability_zone
45+
count = 1
46+
availability_zone = var.availability_zone_first
3547
instance_type = var.default_instance_type
3648
system_disk_type = "CLOUD_SSD"
3749
system_disk_size = 60
3850
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
3951
internet_max_bandwidth_out = 100
4052
public_ip_assigned = true
41-
subnet_id = var.subnet
53+
subnet_id = data.tencentcloud_vpc_subnets.vpc_first.instance_list.0.subnet_id
4254
4355
data_disk {
4456
disk_type = "CLOUD_PREMIUM"
@@ -51,55 +63,16 @@ resource "tencentcloud_kubernetes_cluster" "managed_cluster" {
5163
password = "ZZXXccvv1212"
5264
}
5365
54-
labels = {
55-
"test1" = "test1",
56-
"test2" = "test2",
57-
}
58-
59-
cluster_deploy_type = "MANAGED_CLUSTER"
60-
}
61-
62-
#examples for INDEPENDENT_CLUSTER cluster
63-
resource "tencentcloud_kubernetes_cluster" "independing_cluster" {
64-
vpc_id = var.vpc
65-
cluster_cidr = "10.1.0.0/16"
66-
cluster_max_pod_num = 32
67-
cluster_name = "test"
68-
cluster_desc = "test cluster desc"
69-
cluster_max_service_num = 32
70-
71-
master_config {
72-
count = 3
73-
availability_zone = var.availability_zone
74-
instance_type = var.default_instance_type
75-
system_disk_type = "CLOUD_SSD"
76-
system_disk_size = 60
77-
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
78-
internet_max_bandwidth_out = 100
79-
public_ip_assigned = true
80-
subnet_id = var.subnet
81-
82-
data_disk {
83-
disk_type = "CLOUD_PREMIUM"
84-
disk_size = 50
85-
}
86-
87-
enhanced_security_service = false
88-
enhanced_monitor_service = false
89-
user_data = "dGVzdA=="
90-
password = "MMMZZXXccvv1212"
91-
}
92-
9366
worker_config {
94-
count = 2
95-
availability_zone = var.availability_zone
67+
count = 1
68+
availability_zone = var.availability_zone_second
9669
instance_type = var.default_instance_type
9770
system_disk_type = "CLOUD_SSD"
9871
system_disk_size = 60
9972
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
10073
internet_max_bandwidth_out = 100
10174
public_ip_assigned = true
102-
subnet_id = var.subnet
75+
subnet_id = data.tencentcloud_vpc_subnets.vpc_second.instance_list.0.subnet_id
10376
10477
data_disk {
10578
disk_type = "CLOUD_PREMIUM"
@@ -116,8 +89,6 @@ resource "tencentcloud_kubernetes_cluster" "independing_cluster" {
11689
"test1" = "test1",
11790
"test2" = "test2",
11891
}
119-
120-
cluster_deploy_type = "INDEPENDENT_CLUSTER"
12192
}
12293
```
12394
*/
@@ -563,7 +534,6 @@ func resourceTencentCloudTkeCluster() *schema.Resource {
563534
Type: schema.TypeList,
564535
ForceNew: true,
565536
Optional: true,
566-
MaxItems: 1,
567537
Elem: &schema.Resource{
568538
Schema: TkeCvmCreateInfo(),
569539
},
@@ -572,7 +542,6 @@ func resourceTencentCloudTkeCluster() *schema.Resource {
572542
"worker_config": {
573543
Type: schema.TypeList,
574544
ForceNew: true,
575-
MaxItems: 1,
576545
Optional: true,
577546
Elem: &schema.Resource{
578547
Schema: TkeCvmCreateInfo(),

website/docs/r/kubernetes_cluster.html.markdown

Lines changed: 31 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -13,41 +13,53 @@ Provide a resource to create a kubernetes cluster.
1313
## Example Usage
1414

1515
```hcl
16-
variable "availability_zone" {
16+
variable "availability_zone_first" {
1717
default = "ap-guangzhou-3"
1818
}
1919
20-
variable "vpc" {
21-
default = "vpc-dk8zmwuf"
20+
variable "availability_zone_second" {
21+
default = "ap-guangzhou-4"
2222
}
2323
24-
variable "subnet" {
25-
default = "subnet-pqfek0t8"
24+
variable "cluster_cidr" {
25+
default = "10.31.0.0/16"
2626
}
2727
2828
variable "default_instance_type" {
29-
default = "S1.SMALL1"
29+
default = "SA2.2XLARGE16"
30+
}
31+
32+
data "tencentcloud_vpc_subnets" "vpc_first" {
33+
is_default = true
34+
availability_zone = var.availability_zone_first
35+
}
36+
37+
data "tencentcloud_vpc_subnets" "vpc_second" {
38+
is_default = true
39+
availability_zone = var.availability_zone_second
3040
}
3141
32-
#examples for MANAGED_CLUSTER cluster
3342
resource "tencentcloud_kubernetes_cluster" "managed_cluster" {
34-
vpc_id = var.vpc
35-
cluster_cidr = "10.31.0.0/16"
36-
cluster_max_pod_num = 32
37-
cluster_name = "test"
38-
cluster_desc = "test cluster desc"
39-
cluster_max_service_num = 32
43+
vpc_id = data.tencentcloud_vpc_subnets.vpc_first.instance_list.0.vpc_id
44+
cluster_cidr = var.cluster_cidr
45+
cluster_max_pod_num = 32
46+
cluster_name = "test"
47+
cluster_desc = "test cluster desc"
48+
cluster_max_service_num = 32
49+
cluster_internet = true
50+
managed_cluster_internet_security_policies = ["3.3.3.3", "1.1.1.1"]
51+
cluster_deploy_type = "MANAGED_CLUSTER"
4052
4153
worker_config {
42-
count = 2
43-
availability_zone = var.availability_zone
54+
count = 1
55+
availability_zone = var.availability_zone_first
4456
instance_type = var.default_instance_type
4557
system_disk_type = "CLOUD_SSD"
4658
system_disk_size = 60
4759
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
4860
internet_max_bandwidth_out = 100
4961
public_ip_assigned = true
50-
subnet_id = var.subnet
62+
subnet_id = data.tencentcloud_vpc_subnets.vpc_first.instance_list.0.subnet_id
5163
5264
data_disk {
5365
disk_type = "CLOUD_PREMIUM"
@@ -60,55 +72,16 @@ resource "tencentcloud_kubernetes_cluster" "managed_cluster" {
6072
password = "ZZXXccvv1212"
6173
}
6274
63-
labels = {
64-
"test1" = "test1",
65-
"test2" = "test2",
66-
}
67-
68-
cluster_deploy_type = "MANAGED_CLUSTER"
69-
}
70-
71-
#examples for INDEPENDENT_CLUSTER cluster
72-
resource "tencentcloud_kubernetes_cluster" "independing_cluster" {
73-
vpc_id = var.vpc
74-
cluster_cidr = "10.1.0.0/16"
75-
cluster_max_pod_num = 32
76-
cluster_name = "test"
77-
cluster_desc = "test cluster desc"
78-
cluster_max_service_num = 32
79-
80-
master_config {
81-
count = 3
82-
availability_zone = var.availability_zone
83-
instance_type = var.default_instance_type
84-
system_disk_type = "CLOUD_SSD"
85-
system_disk_size = 60
86-
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
87-
internet_max_bandwidth_out = 100
88-
public_ip_assigned = true
89-
subnet_id = var.subnet
90-
91-
data_disk {
92-
disk_type = "CLOUD_PREMIUM"
93-
disk_size = 50
94-
}
95-
96-
enhanced_security_service = false
97-
enhanced_monitor_service = false
98-
user_data = "dGVzdA=="
99-
password = "MMMZZXXccvv1212"
100-
}
101-
10275
worker_config {
103-
count = 2
104-
availability_zone = var.availability_zone
76+
count = 1
77+
availability_zone = var.availability_zone_second
10578
instance_type = var.default_instance_type
10679
system_disk_type = "CLOUD_SSD"
10780
system_disk_size = 60
10881
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
10982
internet_max_bandwidth_out = 100
11083
public_ip_assigned = true
111-
subnet_id = var.subnet
84+
subnet_id = data.tencentcloud_vpc_subnets.vpc_second.instance_list.0.subnet_id
11285
11386
data_disk {
11487
disk_type = "CLOUD_PREMIUM"
@@ -125,8 +98,6 @@ resource "tencentcloud_kubernetes_cluster" "independing_cluster" {
12598
"test1" = "test1",
12699
"test2" = "test2",
127100
}
128-
129-
cluster_deploy_type = "INDEPENDENT_CLUSTER"
130101
}
131102
```
132103

0 commit comments

Comments
 (0)