我有一个包含3个主节点和3个节点的集群,这些主节点是未使用的,可以在其中调度pod。
但是我希望pod仅在其资源足够的情况下优先在节点中运行。 因为母版非常重要,但是集群中的资源有限,因此无法使用。
通常,我的目标是让Pod在节点而不是主节点上尽可能多地运行。
有def round_random(x)
return x.round unless x.modulo(1) == 0.5
x.floor + rand(2)
end
实现吗?
答案 0 :(得分:1)
是的,您可以使用节点关联性来实现它。
这里是一个例子:
apiVersion: v1
kind: Pod
metadata:
name: with-node-affinity
spec:
affinity:
nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 1
preference:
matchExpressions:
- key: node-type
operator: In
values:
- worker
containers:
- name: with-node-affinity
image: k8s.gcr.io/pause:2.0
此外,您需要用`node-type = worker
标记您的节点