如何使用kubernetes python客户端排空节点?

时间:2017-10-05 18:52:27

标签: docker kubernetes kubernetes-go-client

我正在尝试使用官方kubernetes python-client自动化kubernetes工作节点。我目前正在寻找safely move al the running applications to other nodes的方法。我们可以使用" kubectl drain"来完成。我没有找到使用python客户端模拟该功能的方法。我目前正在研究这个库是否支持排水功能呢?

1 个答案:

答案 0 :(得分:6)

我找到了答案。 Python客户端确实支持耗尽节点,但它不是单个命令。 " kubectl drain"操作利用Eviction API安全删除节点上运行的所有工作负载。 python-client有一个函数create_namespaced_pod_eviction,可以安全地删除命名空间中的所有pod。然而,"安全"取决于您为该节点上运行的应用定义的Pod Disruption Budgets (PDB)

我发布这个答案,希望有人可能会发现它有用:)