【发布时间】:2019-10-11 14:29:47
【问题描述】:
我现在正在使用 Kubernetes 1.12 版本在谷歌云中学习 kubernetes
我部署了一个守护程序集,然后突然守护程序集处于待处理状态。这是资源配额不足造成的。
我可以通过在集群中添加更多节点来解决这个问题。但是,我很好奇如何将守护进程部署为第一次部署而不是其他部署?
已阅读文档,但我仍然找不到解决方案。
【问题讨论】:
标签: kubernetes google-kubernetes-engine
我现在正在使用 Kubernetes 1.12 版本在谷歌云中学习 kubernetes
我部署了一个守护程序集,然后突然守护程序集处于待处理状态。这是资源配额不足造成的。
我可以通过在集群中添加更多节点来解决这个问题。但是,我很好奇如何将守护进程部署为第一次部署而不是其他部署?
已阅读文档,但我仍然找不到解决方案。
【问题讨论】:
标签: kubernetes google-kubernetes-engine
我想您正在为集群使用较小的计算大小,只有一两个计算。
要回答这个问题,不,你不能在 Kubernetes 中进行第一次部署,当你启动集群时,一些系统部署已经存在,你可以看到他们在做:kubectl -n kube-system get deployment
您也可以查找 pod,并使用 kubectl top node 确认您的集群状态。
首先升级您正在使用的计算类型是个好主意,拥有更多节点也是一个不错的解决方案。
【讨论】:
有办法做到这一点。
您可以在 pod 定义中使用 pod 优先级。您需要为 daemonsets 定义 pod 优先级。https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
尝试在所有部署之前部署这些守护程序集。
在其他部署 helm 图表之前定义 Helm 图表和部署图表。
假设您在一个掌舵图中拥有所有部署和守护程序集,然后将文件命名约定添加为 0-daemonsets.yaml , 1-deployments.yaml 。如果您这样做,0-daemonsets.yaml 将首先部署,然后是 1-deployments.yaml。
【讨论】: