Skip to content

Commit 52dc1b6

Browse files
authored
feat: tke cluster - support log agent / audit / event persistense (#1053)
* feat: tke cluster - support log agent / audit / event persistense * fix: tke attach - instance available type
1 parent 39af03e commit 52dc1b6

File tree

14 files changed

+2957
-604
lines changed

14 files changed

+2957
-604
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ require (
5555
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tcaplusdb v1.0.199
5656
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tcr v1.0.267
5757
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdmq v1.0.268
58-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.381
58+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.401
5959
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199
6060
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.398
6161
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199

go.sum

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -464,10 +464,6 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.199 h1:ji9wSYF
464464
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cdn v1.0.199/go.mod h1:gJDjRbA4JhsRGKkNzqwx053/vqgNMhf42ID2a7lcE0g=
465465
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cfs v1.0.199 h1:VyOKZOlgTXW0szboWhI1N35khPsaHE4CyH9pf42o7P8=
466466
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cfs v1.0.199/go.mod h1:9ldm0D1ToaztnlD2bFC5yjMMqvQfVeAMhvcoCCVnZb8=
467-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.376 h1:q7TNQ/5zalD483Z6ufGtxeZIEgO0eUN+5M9y1qxg/ck=
468-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.376/go.mod h1:YVajJ5YZ8YIFtecbXknudDPXLfG1oRwrL6GxZel5rY8=
469-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.399 h1:GWa+5s6tbgf5B1AakoirllClfdOmUUSZpb/qso7YiuE=
470-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.399/go.mod h1:IvRRjtjGHNzOeH+r0CuyTKeZRZhwqqFzPw6jgAMK9NM=
471467
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.403 h1:rD9H4dQkULnRpq1BiD2KuDKsd9VEKHun2gMT+V6DNOE=
472468
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/ckafka v1.0.403/go.mod h1:yWwwGj2gV0hRPfM9GXG4EgDee0cEWYcAwl/M8CTTvzM=
473469
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/clb v1.0.283 h1:8pML0UtXgui5WZFLLrCv6QdR8e0fUva0V4W5wSgTCSc=
@@ -480,21 +476,14 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.194/go.mod
480476
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.358/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
481477
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.359/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
482478
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.363/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
483-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.376/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
484479
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.377/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
485-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.381/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
486480
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.383/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
487481
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.385/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
488482
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.389/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
489483
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.391/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
490-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.392 h1:UqcmPErxEm77NwqaRq6J1i2rcbhXcZHzq7WOuc9clAQ=
491-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.392/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
492-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.397 h1:oYU+ghWYDEXSpU8aogzPYHiuZAI1291BMroSG0WKdAc=
493484
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.397/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
494-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.398 h1:+VbaPRPCKAplIvwj9oGEOTbZmYiEX9AeqaTCPqLzwS8=
495485
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.398/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
496-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.399 h1:iTkEybEo9axJoE7FXnAS1jP6qGdgLi1FMFBNxPk+99k=
497-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.399/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
486+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.401/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
498487
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.403 h1:61iPtR+lIVT8BtAaviUx0t5InIHcJ/N51xQdezu2r1s=
499488
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/common v1.0.403/go.mod h1:7sCQWVkxcsR38nffDW057DRGk8mUjK1Ing/EFOK8s8Y=
500489
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/cvm v1.0.385 h1:8bwloRxRwSADSK48KxaUeO9JHmmgniNGJbA7Or/HUEk=
@@ -511,8 +500,6 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/emr v1.0.287 h1:+9COBXA
511500
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/emr v1.0.287/go.mod h1:xRvd0xsyCoviCiMRfJMh5lODPnLx+bnTfENNx6GHzFA=
512501
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/es v1.0.383 h1:OhKvreaRPhwBEButv45yBcu6BvfvR1JAEXbU/NTck94=
513502
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/es v1.0.383/go.mod h1:WLskTV0GsorWBboZsLUWrgj+f1xGOKGzPGCK9275tdU=
514-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/gaap v1.0.199 h1:tmjUPp0VBKuzjTqt0IQ5PT6iYt0yLmvM2DUzMFF7SGk=
515-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/gaap v1.0.199/go.mod h1:tuPVv7O2B2fIpoDsrV/kvC62FO4CE4FihUxZY0JX2ek=
516503
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/gaap v1.0.397 h1:i0GyUqV/dAJkvEO1foUBB4GG/KrwbseORspjLNdTcfo=
517504
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/gaap v1.0.397/go.mod h1:5XosT/WYkH2v6Q6L34hjJIeQXOymyoBWYcvlmxupjFo=
518505
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/kms v1.0.194/go.mod h1:yrBKWhChnDqNz1xuXdSbWXG56XawEq0G5j1lg4VwBD4=
@@ -546,12 +533,10 @@ github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tcr v1.0.267 h1:Aqnh1ed
546533
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tcr v1.0.267/go.mod h1:SEUO10oGtg+4AGCfpJDn9ynf47P+ZiyvhzOyXLt0mOY=
547534
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdmq v1.0.268 h1:ez5lvKQVWGQV90BV3m9SeFODaoDbrtkMzw2S0DRMncA=
548535
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tdmq v1.0.268/go.mod h1:fchXZhmqaYaG2c4wTCBTdnW6TFAtxl3D/P/yuuuLMfA=
549-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.381 h1:hi3fczplLOukXZZIhPA3ouoPk0bWe3Bx06X6t0zuoCk=
550-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.381/go.mod h1:Y8HK7RDWAdM4QvYsKyoqmn1qL8mEGNaDPJMkZP2TolM=
536+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.401 h1:L54Iof1fzxnuWyfvqA6BzUS4se7dO2Brv7uVSOQw/uw=
537+
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/tke v1.0.401/go.mod h1:VferweibNGBu3H6R7v2V3+6L0rZTTi/Xwjhn/nMMylw=
551538
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199 h1:6Yt74l4pA5QtzhwMNIEUt0spXdSBKH744DDqTHJOCP0=
552539
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vod v1.0.199/go.mod h1:Yw6OQ33z3s4k0HVYTNSffB12qOzEJ2Zf1Vj4+5S3sRs=
553-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.392 h1:nx8MQ8yJ3srpfEAlKLQKtOsBCBc30QJ3Q0RsSOGSphQ=
554-
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.392/go.mod h1:IAl660UAxdUtp1rHUwbUwxFCVqwk61xAIRbBk6QtTy8=
555540
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.398 h1:1JVKMl+yjZbntwAW0A6esjQI1/dXXqjQ9+OLai7ZS2w=
556541
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/vpc v1.0.398/go.mod h1:+TD/TRnb5WrLcE2SL3db7ROOpwED5gBfbC19gaXnGxs=
557542
github.com/tencentcloud/tencentcloud-sdk-go/tencentcloud/wss v1.0.199 h1:hMBLtiJPnZ9GvA677cTB6ELBR6B68wCR2QY1sNoGQc4=

tencentcloud/basic_test.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -617,9 +617,11 @@ data "tencentcloud_instance_types" "ins_type" {
617617
availability_zone = "` + defaultCvmAZone + `"
618618
cpu_core_count = 1
619619
memory_size = 2
620+
exclude_sold_out = true
620621
}
621622
622623
locals {
624+
ins_az = "` + defaultCvmAZone + `"
623625
type1 = [for i in data.tencentcloud_instance_types.ins_type.instance_types: i if lookup(i, "instance_charge_type") == "POSTPAID_BY_HOUR"][0].instance_type
624626
type2 = [for i in data.tencentcloud_instance_types.ins_type.instance_types: i if lookup(i, "instance_charge_type") == "POSTPAID_BY_HOUR"][1].instance_type
625627
}

tencentcloud/resource_tc_kubernetes_as_scaling_group.go

Lines changed: 21 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,32 @@
11
/*
2-
Provide a resource to create an auto scaling group for kubernetes cluster.
2+
Auto scaling group for kubernetes cluster (offlined).
33
4-
~> **NOTE:** It has been deprecated and replaced by `tencentcloud_cluster_node_pool`.
5-
~> **NOTE:** To use the custom Kubernetes component startup parameter function (parameter `extra_args`), you need to submit a ticket for application.
4+
~> **NOTE:** This resource was offline no longer suppored.
65
76
Example Usage
87
98
```hcl
10-
11-
resource "tencentcloud_kubernetes_as_scaling_group" "test" {
12-
13-
cluster_id = "cls-kb32pbv4"
14-
15-
auto_scaling_group {
16-
scaling_group_name = "tf-guagua-as-group"
17-
max_size = "5"
18-
min_size = "0"
19-
vpc_id = "vpc-dk8zmwuf"
20-
subnet_ids = ["subnet-pqfek0t8"]
21-
project_id = 0
22-
default_cooldown = 400
23-
desired_capacity = "0"
24-
termination_policies = ["NEWEST_INSTANCE"]
25-
retry_policy = "INCREMENTAL_INTERVALS"
26-
27-
tags = {
28-
"test" = "test"
29-
}
30-
31-
}
32-
9+
# Use tencentcloud_kubernetes_node_pool instead
10+
resource "tencentcloud_kubernetes_node_pool" "mynodepool" {
11+
name = "mynodepool"
12+
cluster_id = "cls-xxxxxxxx"
13+
max_size = 6
14+
min_size = 1
15+
vpc_id = "vpc-xxxxxxxx"
16+
subnet_ids = ["subnet-xxxxxxxx"]
17+
retry_policy = "INCREMENTAL_INTERVALS"
18+
desired_capacity = 4
19+
enable_auto_scale = true
20+
multi_zone_subnet_policy = "EQUALITY"
3321
3422
auto_scaling_config {
35-
configuration_name = "tf-guagua-as-config"
36-
instance_type = "S1.SMALL1"
37-
project_id = 0
23+
instance_type = var.default_instance_type
3824
system_disk_type = "CLOUD_PREMIUM"
3925
system_disk_size = "50"
26+
security_group_ids = ["sg-24vswocp"]
27+
instance_charge_type = "SPOTPAID"
28+
spot_instance_type = "one-time"
29+
spot_max_price = "1000"
4030
4131
data_disk {
4232
disk_type = "CLOUD_PREMIUM"
@@ -46,85 +36,17 @@ resource "tencentcloud_kubernetes_as_scaling_group" "test" {
4636
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
4737
internet_max_bandwidth_out = 10
4838
public_ip_assigned = true
49-
password = "test123#"
39+
password = input_your_password
5040
enhanced_security_service = false
5141
enhanced_monitor_service = false
52-
53-
instance_tags = {
54-
tag = "as"
55-
}
56-
5742
}
5843
5944
labels = {
6045
"test1" = "test1",
61-
"test1" = "test2",
62-
}
63-
}
64-
```
65-
66-
Use Kubelet
67-
68-
```hcl
69-
70-
resource "tencentcloud_kubernetes_as_scaling_group" "test" {
71-
72-
cluster_id = "cls-kb32pbv4"
73-
74-
auto_scaling_group {
75-
scaling_group_name = "tf-guagua-as-group"
76-
max_size = "5"
77-
min_size = "0"
78-
vpc_id = "vpc-dk8zmwuf"
79-
subnet_ids = ["subnet-pqfek0t8"]
80-
project_id = 0
81-
default_cooldown = 400
82-
desired_capacity = "0"
83-
termination_policies = ["NEWEST_INSTANCE"]
84-
retry_policy = "INCREMENTAL_INTERVALS"
85-
86-
tags = {
87-
"test" = "test"
88-
}
89-
90-
}
91-
92-
93-
auto_scaling_config {
94-
configuration_name = "tf-guagua-as-config"
95-
instance_type = "S1.SMALL1"
96-
project_id = 0
97-
system_disk_type = "CLOUD_PREMIUM"
98-
system_disk_size = "50"
99-
100-
data_disk {
101-
disk_type = "CLOUD_PREMIUM"
102-
disk_size = 50
103-
}
104-
105-
internet_charge_type = "TRAFFIC_POSTPAID_BY_HOUR"
106-
internet_max_bandwidth_out = 10
107-
public_ip_assigned = true
108-
password = "test123#"
109-
enhanced_security_service = false
110-
enhanced_monitor_service = false
111-
112-
instance_tags = {
113-
tag = "as"
114-
}
115-
46+
"test2" = "test2",
11647
}
11748
118-
extra_args = [
119-
"root-dir=/var/lib/kubelet"
120-
]
121-
122-
labels = {
123-
"test1" = "test1",
124-
"test1" = "test2",
125-
}
12649
}
127-
```
12850
*/
12951
package tencentcloud
13052

0 commit comments

Comments
 (0)