使用Kubernetes,我有一组高cpu的节点,并且对给定的部署使用关联策略专门针对这些高cpu节点:
# deployment.yaml
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: high-cpu-node
operator: In
values:
- "true"
但是,这并不能阻止所有其他的部署都在这些高cpu节点上调度。如何指定这些高cpu节点仅在high-cpu-node=true
中运行pods?不需要修改所有其他部署配置(我有几十个部署),就能做到这一点吗?
发布于 2020-10-10 02:32:20
要获得这种行为,您应该污染节点并在部署中使用公差:https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
但是,不幸的是,您必须修改部署。仅仅通过标签是不可能做到这一点的。
https://stackoverflow.com/questions/64288582
复制相似问题