如何在 kubernetes 中模拟 pod 故障
How to simulate a pod failure in kubernetes
为了在多 pod 系统上进行一些稳健性测试,我需要以某种方式模拟 pod 故障。
我不想在部署中使用缩减,因为它不太现实。
删除 pods 对我来说也不是很实用,因为 pods 很快就会回来。
我检查了以下回复:
How to simulate Power Failure In Kubernetes
而且不符合我的需求。
有什么建议吗?
为了模拟网络问题,我建议关闭其中一个节点或弄乱它的 IP 地址,这样它就无法访问了。
另一种方法是模拟 max out resources
。你可以 exec
到一个 pod 和 运行 一些会消耗大量资源(CPU,RAM)的东西,同时为它们设置限制。或者,您可以将限制设置为低于实际使用量。
您还可以设置探测器并模拟它们的故障。失败 Liveness
探测将强制重新启动 pod。
最后,您还可以查看Chaos Controller。它为混沌测试提供控制器并支持 irch 集故障场景。
您可以查看这个名为 Chaos Mesh 的工具。
这有 Pod 故障、网络故障、创建压力、IO 混乱等选项。混沌网格是专门为 Kubernetes 及其开源设计的。
还有另一个很棒的工具,叫做 Litmus。这也是专门为kubernetes设计的。
也许你可以着重强调内存使用情况,这样它就会因为 OOM 问题而被杀死。并尝试终止容器内的主进程 运行,这也会重新启动 pod。和我建议的最后一个选项配置错误的活性和就绪探测器。
为了在多 pod 系统上进行一些稳健性测试,我需要以某种方式模拟 pod 故障。 我不想在部署中使用缩减,因为它不太现实。 删除 pods 对我来说也不是很实用,因为 pods 很快就会回来。
我检查了以下回复: How to simulate Power Failure In Kubernetes 而且不符合我的需求。 有什么建议吗?
为了模拟网络问题,我建议关闭其中一个节点或弄乱它的 IP 地址,这样它就无法访问了。
另一种方法是模拟 max out resources
。你可以 exec
到一个 pod 和 运行 一些会消耗大量资源(CPU,RAM)的东西,同时为它们设置限制。或者,您可以将限制设置为低于实际使用量。
您还可以设置探测器并模拟它们的故障。失败 Liveness
探测将强制重新启动 pod。
最后,您还可以查看Chaos Controller。它为混沌测试提供控制器并支持 irch 集故障场景。
您可以查看这个名为 Chaos Mesh 的工具。
这有 Pod 故障、网络故障、创建压力、IO 混乱等选项。混沌网格是专门为 Kubernetes 及其开源设计的。
还有另一个很棒的工具,叫做 Litmus。这也是专门为kubernetes设计的。
也许你可以着重强调内存使用情况,这样它就会因为 OOM 问题而被杀死。并尝试终止容器内的主进程 运行,这也会重新启动 pod。和我建议的最后一个选项配置错误的活性和就绪探测器。