【发布时间】:2015-10-11 18:34:28
【问题描述】:
我们正在 AWS 上尝试使用 Kubernetes 版本 1.0.6 进行测试设置。
此设置涉及 Cassandra(2 个节点)、Spark(主节点、2 个工作节点、驱动程序)和 RabbitMQ(1 个节点)的 pod。此设置的一些 pod 会在一天左右后死亡
有没有办法从 Kubernetes 获取关于他们如何/为什么死亡的日志?
当您尝试手动重新启动已死亡的 pod 时,您会看到一些 pod 状态为“类别/spark-worker 已准备好,容器正在创建”,并且 pod 启动永远不会完成。
场景中的唯一选项是“kube-down.sh”,然后是 kube-up.sh,然后从头开始完成整个设置。
【问题讨论】:
-
您是直接运行 Pod 还是在复制控制器下运行?您是否为 pod 指定资源限制?查看运行 pod 的节点上的
/var/log/kubelet.log,看看它是否有任何有趣的内容。 -
死掉的都是直接运行的,因为它们是1个实例类型(如master,driver),不能在replication controller下运行。上述所有 8-pod 都在“3 台机器,每台 2 核”kubernetes 集群上以 CPU="100cpu" (0.10%) 运行
-
在 1 天后死亡的豆荚总是相同的吗?您是否查看了 kubelet 日志文件以了解它们失败的原因?
-
今天又死了一些,这次有些相同,有些不同。我没有看到 /var/log/kublet.log。我正在运行 Kubernetes 1.0.6,日志文件有不同的位置吗?
-
我还注意到这些 pod 位于运行 influxdb 的机器上(该进程的 CPU 使用率很高)。之前有 5 个 Pod,现在只有 2 个带有复制控制器的新 Pod 回来了(fluentd-elasticsearch、spark-worker-controller)其他 3 个 Pod - influxdb 和 2 个直接运行的 didi not
标签: kubernetes