apiVersion: node.tke.cloud.tencent.com/v1beta1kind: MachineSetspec:type: NativedisplayName: mstestreplicas: 2autoRepair: truedeletePolicy: RandomhealthCheckPolicyName: test-allinstanceTypes:- C3.LARGE8subnetIDs:- subnet-xxxxxxxx- subnet-yyyyyyyyscaling:createPolicy: ZonePrioritymaxReplicas: 100template:spec:displayName: mtestruntimeRootDir: /var/lib/containerdunschedulable: falsemetadata:labels:key1: "val1"key2: "val2"providerSpec:type: Nativevalue:instanceChargeType: PostpaidByHourlifecycle:preInit: "echo hello"postInit: "echo world"management:hosts:- Hostnames:- lkongtestIP: 22.22.22.22nameservers:- 183.60.83.19- 183.60.82.98- 8.8.8.8metadata:creationTimestamp: nullsecurityGroupIDs:- sg-xxxxxxxxsystemDisk:diskSize: 50diskType: CloudPremium
参数所属模块 | 参数项 | YAML 字段 | 说明 |
启动配置 | 节点池类型 | 字段名:spec.type 字段值:Native | Native 代表原生节点池。 |
| 节点池名称 | 字段名:metadata.name 字段值:demo-machineset(自定义) | 自定义,可根据业务需求等信息进行命名,方便后续资源管理。 |
| 计费模式 | 字段名:spec.template.spec.providerSpec.value.instanceChargeType 字段值:PostpaidByHour(按量付费) | 提供按量计费的计费模式,请根据实际需求进行选择。 |
| 机型配置 | 机型: 字段名:spec.instanceTypes 字段值:S2.MEDIUM4(可参考控制台获取其他机型规格) 系统盘: 字段名:spec.template.spec.providerSpec.value.systemDisk.diskSize/diskType 字段值: diskSize: 50(系统盘大小,自定义,10 的倍数,最小为 50G) diskType: CloudPremium / CloudSSD(系统盘类型,支持高性能 / SSD) | 在“机型配置”窗口中参考以下信息按需选择: 机型:支持通过 CPU 核数、内存大小及实例类型进行筛选。系统盘:存储控制、调度节点运行的系统集合,建大小设置 > 100GB。 |
| 安全组 | 字段名:spec.template.spec.providerSpec.value.securityGroupIDs 字段值:sg-a7msxxx(安全组 ID) | 默认为创建集群时所设置的安全组,可根据实际需要进行更换或添加。 |
| 数量 | 字段名:spec.replicas 字段值:7(自定义) | 对应节点池内维护的期望节点数量,请根据实际需求进行设置。例如,此处数量填写为5,则节点池将创建5台节点维护。 |
| 容器网络 | 字段名:spec.subnetIDs 字段值:subnet-i2ghxxxx(容器子网 ID) | 请根据实际需求选择合适的可用子网。 1. 当您手动调节节点数量时,系统将按照子网列表顺序来尝试创建节点,如果顺序靠前的子网可以创建成功,则总在该子网创建。 2. 若节点池开启了自动伸缩,将根据您配置的扩容策略选择合适的子网进行创建节点。 |
运维功能 | 故障自愈 | 字段名:spec.autoRepair 字段值:true(开启)/ false(关闭) | 可选项,推荐开启。该功能可实时检测原生节点上的各种异常情况并提供一定的自愈手段,包含:OS、Runtime、kubelet 异常等。 |
| 检查和自愈规则 | 字段名:spec.healthCheckPolicyName 字段值:test-all(绑定故障自愈 CR 名称) | 您可为当前节点池选择不同的故障自愈规则,每个节点池支持绑定一个规则。 |
| 自动升级 (alpha 版本) | - | 可选项,该功能目前内测中。平台支持在运维窗口内提供自动升级功能来简化繁琐的版本运维操作,升级项包含:Kuberbetes、运行时、操作系统内核版本上的迭代和维护,并结合腾讯安全情报及时更新安全漏洞。 |
| 升级项 | - | 系统将根据您选择的升级项进行版本维护,不同升级项对应单独的升级包,版本升级前将至少提前一周在控制台和文档提供版本更新说明。 |
| 运维窗口 | - | 系统将在您设置的运维窗口内进行自动升级。 |
| 最大升级节点数 | - | 在运维时间窗口内,第一批升级的节点数为1,后续可升级节点数以2的幂数进行增长,可同时升级的节点数目不会超过您设置的最大升级节点数。 |
| 自动伸缩 | 字段名:spec.scaling | 开启后 CA 组件对该类节点池进行自动伸缩。 |
| 节点数量范围 | 字段名:spec.scaling.maxReplicas / minReplicas 字段值: maxReplicas: 7(自定义) minReplicas: 2(自定义) | 节点池内的节点数量受限于该范围内的最小值/最大值,若节点池开启了自动伸缩,原生节点数量将在设定的范围内自动调节。 |
| 扩容策略 | 字段名:spec.scaling.createPolicy 字段值:ZonePriority(首选可用区优先)/ ZoneEquality(多可用区打散) | 1. 首选可用区优先:弹性伸缩会在您首选的可用区优先执行扩缩容。若首选可用区无法扩缩容,才会在其他可用区进行扩缩容。 2. 多可用区打散:在伸缩组指定的多可用区(即指定多个子网)之间尽最大努力均匀分配节点实例。只有配置了多个子网时该策略才能生效。 |
高级参数 | Lables | 字段名:spec.template.spec.metadata.labels 字段值: key1: “value1”(lable 的 key/value 为自定义) | 节点属性,方便对节点进行筛选和管理,该节点池下所创建的节点均将自动增加设置的 Label。 |
| Taints | 字段名:spec.template.spec.metadata.taints 字段值:effect: NoSchedule/PreferNoSchedule/NoExecute(填写 taints 类型) | 节点属性,通常与 Tolerations 配合使用,确保不符合条件的 Pod 不能调度到该节点上,该节点池下所创建的节点均将自动增加设置的 Taints。 |
| 容器目录 | 字段名:spec.template.spec.runtimeRootDir 字段值:/data/containerd(自定义) | 勾选即可设置容器和镜像存储目录,例如 /var/lib/ |
| kubelet 自定义参数 | 该字段为白名单控制,可通过工单/售后申请开放 | 白名单控制,支持配置 kubelet 常见参数。 |
| Management | 字段名:spec.template.spec.providerSpec.value.management.hosts/nameservers/KernelArgs 字段值: hosts: Hostnames: [ 'test' ], IP: '22.22.22.22'nameservers: [ '183.60.83.19', '183.60.82.98']KernelArgs: 该字段为白名单控制,您可以 提交工单 来寻求帮助。 | 支持配置 Nameservers\\Hosts\\KernelArgs 类型参数。 |
| 自定义脚本 | 字段名:spec.template.spec.providerSpec.value.lifecycle.preInit/postInit 字段值: preInit: "echo hello"(节点初始化前执行脚本,自定义) postInit: "echo world"(节点初始化后执行脚本,自定义) | 指定自定义数据来配置节点,提供 节点初始化前 / 节点初始化后 两个设置阶段。需确保脚本的可重入及重试逻辑,脚本及其生成的日志文件可在节点的 /usr/local/qcloud/tke/userscript 路径查看。 |
本页内容是否解决了您的问题?