如何在`kubernetes.io / hostname` nodeSelector中提供主机名列表

时间:2018-09-23 01:35:13

标签: kubernetes

我需要在kubernetes.io/hostname nodeSelector下提供主机名列表。我尝试提供逗号分隔的列表,但是当我执行kubectl apply -f <yaml file>时,kubernetes抛出一些验证错误。

我还尝试通过提供kubernetes.io/hostname的重复集来提供多个主机名,但是kubernetes只接受最后一个值。 浏览时找不到有效的示例。

谢谢

The DaemonSet "ssh-daemonset" is invalid: spec.template.spec.nodeSelector: Invalid value: "1z.t3.x52.y7,l0.1k7.1p0.2q0": a valid label must be an empty string or consist of alphanumeric characters, '-', '_' or '.', and must start and end with an alphanumeric character (e.g. 'MyValue',  or 'my_value',  or '12345', regex used for validation is '(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?')

1 个答案:

答案 0 :(得分:2)

要限制DaemonSet Pod只在特定节点上运行,请参见https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/#running-pods-on-only-some-nodes

使用相同的标签,标记要在其上运行DaemonSet窗格的节点(kubectl label nodes <node-name> <label-key>=<label-value>,然后在spec.template.spec.nodeSelector中指定该标签。

示例: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector