能够以更高的级别定义一种方法来确定一组Pod应该在其上运行的节点集。
是否有一种使用kustomize的方法,以便我可以指定部署应具有的nodeSelector?
答案 0 :(得分:0)
我认为您可以tain个节点。此类节点保留用于特定的Pod。
节点亲和力是Pod的一种属性,可将Pod吸引到一组节点上(作为偏好或硬性要求)。相反,污渍-它们使节点可以排斥一组豆荚。
污渍和容忍度共同作用,以确保将豆荚安排在不适当的节点上。一个或多个污点应用于节点;这标志着节点不应该接受任何不能容忍污点的豆荚。容差应用于吊舱,并允许(但不要求)吊舱调度到具有匹配污点的节点上。
污渍和容忍度是一种灵活的方法,可将吊舱从不应运行的节点上移开或逐出吊舱。以下是其中一些示例:
您可以在这里找到更多信息:Kubernetes node for specific pods。
有趣的文档:taint-toleration-dedicated。
答案 1 :(得分:0)
我最终只是定义了一个补丁:
在kustomization.yaml
中:
patchesStrategicMerge:
- nodeSelectors.yaml
在nodeSelectors.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mysql
spec:
template:
spec:
nodeSelector:
group: infra
slurm: mysql
有点>绕;但我想它在定义我关心的Pod以及在何处定义方面提供了最大的灵活性。