反亲和性配置
- 需求背景: 将sts控制器类型的pod进行指定节点调度,在指定的节点中再做反亲和,使这些pod调度到不同的node节点
nodeSelector:
type: middleware # 指定调度节点标签
affinity:
podAntiAffinity: # 反亲和调度
preferredDuringSchedulingIgnoredDuringExecution: # 软策略
- podAffinityTerm:
labelSelector:
# pod亲和性,匹配pod标签
matchLabels:
app: consul
component: server
topologyKey: kubernetes.io/hostname # 拓展域 不能为空 调度到有这个key标签的node上 这里的topologyKey只对应key,没有value
weight: 1 # 调度权重为1
命令行修改svc类型
- 先删除nodeport、再修改type类型为ClusterIP。(使用场景,由Lb类型改为ClusterIP)
kubectl patch svc mqdownloadcenterservices -n wetax-dev --type='json' -p '[{"op":"remove","path":"/spec/ports/0/nodePort"},{"op":"replace","path":"/spec/type","value":"ClusterIP"}]'
- 直接修改类型为ClusterIP (使用场景,由Nodeport类型改为ClusterIP)
kubectl patch svc nginx-deployment -p '{"spec":{"type": "ClusterIP"}}'