Mic*_*ael 11 kubernetes google-kubernetes-engine
我有一个包含21个节点的Google容器引擎群集,特别是有一个pod我需要始终在具有静态IP地址的节点上运行(出于出站目的).
Kubernetes支持DaemonSets
通过为节点提供与DaemonSet中的nodeSelector匹配的标签,可以将pod部署到特定节点(或一组节点).然后,您可以为标记节点所在的VM实例分配静态IP.但是,GKE似乎不支持DaemonSet类型.
$ kubectl create -f go-daemonset.json
error validating "go-daemonset.json": error validating data: the server could not find the requested resource; if you choose to ignore these errors, turn validation off with --validate=false
$ kubectl create -f go-daemonset.json --validate=false
unable to recognize "go-daemonset.json": no kind named "DaemonSet" is registered in versions ["" "v1"]
Run Code Online (Sandbox Code Playgroud)
何时支持此功能以及解决方法是什么?
如果您只想在单个节点上运行pod,则实际上您不想使用DaemonSet.DaemonSet旨在在每个节点上运行pod ,而不是在单个特定节点上运行.
要在特定节点上运行pod,可以在pod规范中使用nodeSelector,如文档中的Node Selection示例中所述.
编辑:但是对于那些想要在GKE中的每个节点上运行某些内容的人来说,我可以说两件事:
首先,将在计划于3月份发布的1.2版本的GKE中启用DaemonSet.在版本1.1中的GKE中未启用它,因为在1.1被切断时它被认为不够稳定.
其次,如果你想在1.2之前在每个节点上运行某些东西,我们建议创建一个复制控制器,其复制数大于你的节点数,并hostPort在容器规范中要求a .这hostPort将确保每个节点将运行RC中不超过一个pod.
| 归档时间: |
|
| 查看次数: |
805 次 |
| 最近记录: |