kubernetes服务未启动

时间:2019-01-23 16:47:13

标签: json linux kubernetes yaml

我正在尝试启动添加到kubernetes的服务,但不确定为什么它无法启动。我可以用

添加它
d2 swarm service add 'testservice/daemonset.yaml'

然后当我启动它时看到

d2 swarm service add 'testservice/daemonset.yaml'
creating service

现在,当我进入群居并做

kubectl get ds -n testing

它显示为服务,而不是启动的

还有其他我可以使用的日志或调试服务命令吗?谢谢

1 个答案:

答案 0 :(得分:1)

get ds为您提供DaemonSet的当前状态,但是要了解为什么其Pod(或更确切地说,这些Pod中的容器)没有运行,您必须描述一下Pod ,而不是DaemonSet。

  1. 运行kubectl get pods -n testing以获得吊舱列表。由于这是一个DaemonSet,因此每个工作程序节点应该有一个Pod。 STATUS列告诉您广告连播当前处于哪个状态。理想情况下,它应该显示Running
  2. 如果STATUS不是Running,请抓住吊舱NAME并运行kubectl describe pod <pod_name> -n testing。在底部寻找Events部分;它通常会告诉您您的广告连播有什么问题。
  3. 如果日志显示它正在尝试重新启动发生故障的容器,则意味着该服务本身很可能崩溃了。您可以通过运行kubectl logs <pod_name> -n testing从服务中查看日志。

这通常足以解决与服务相关的问题,从而阻止Pod启动。如果您仍然无法确定问题出在哪里,请使用以下每个步骤的输出结果来更新您的问题(当然,在忽略个人/敏感信息之后),以便我们为您提供进一步的帮助。