让豆荚在kubernetes中入睡

时间:2019-03-07 15:30:58

标签: linux kubernetes google-kubernetes-engine

我知道如何通过命令使豆荚进入睡眠状态

kubectl -n logging patch sts <sts name> --type='json' -p='[{"op": "add", "path": "/spec/template/spec/containers/0/command", "value": ["sleep", "infinity"] }]'

唤醒豆荚的命令是什么?

1 个答案:

答案 0 :(得分:0)

您实际上要做的是更新状态集,更改其pod的 command 参数。 command 参数设置容器的入口点,换句话说,是启动容器时执行的命令。

您正在将该命令设置为sleep infinity。因此,要唤醒Pod,只需更新状态集并将命令设置为原始命令即可。

最好的解决方案是使用以下方法将状态集缩放为0个副本:

kubectl -n logging scale sts <sts name> --replicas 0

并使用以下方法扩展到原始副本数量:

kubectl -n logging scale sts <sts name> --replicas <original number>

这样,您的群集中就没有运行任何sleep infinity的Pod,并且通过避免这种无用的Pod浪费资源,可以节省成本。