worker添加但不存在于kubectl get nodes中

时间:2016-01-21 16:34:05

标签: kubernetes

我正在设置一个双节点Kubernetes系统,遵循Docker多节点instructions

我的问题是kubectl get nodes只显示主节点,而不是工作节点。

  • 设置似乎有效,所有预期的容器都在运行(据我所知)
  • 我已经确认网络通过法兰绒工作。
  • 工作节点的子网显示在主节点的子网列表中。

所以一切看起来都不错,除了节点没有出现。

我的问题:

  1. 我是否认为工作节点现在应该可以从“获取节点”中看到?

  2. 用于进行设置的MASTER_IP是主节点的公共IP地址还是docker IP是否重要? (我试过了......)

  3. 从哪里开始调试?

  4. 任何指针都被感激地接受......

    版本:

    • Ubuntu Trusty 14.04 LTS主人和工人
    • Kubernetes v1.1.4
    • hyperkube:V1.0.3

1 个答案:

答案 0 :(得分:2)

回答我自己的#cloudplatform问题......

在Kubernetes v1.1.4中,它在worker.sh中出现了问题。

使用" 调用kubectl

在此计算机上,返回IPv6地址。

K8s代码试图将其转换为DNS名称,然后失败。

所以查看kubectl容器的日志文件,我们看到了:

I0122 15:57:33.891577    1786 kubelet.go:1942] Recording NodeReady event message for node 2001:41c9:1:41f::131
I0122 15:57:33.891599    1786 kubelet.go:790] Attempting to register node 2001:41c9:1:41f::131
I0122 15:57:33.894076    1786 kubelet.go:793] Unable to register 2001:41c9:1:41f::131 with the apiserver: Node "2001:41c9:1:41f::131" is invalid: [metadata.name: invalid value '2001:41c9:1:41f::131': must be a DNS subdomain (at most 253 characters, matching regex [a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*): e.g. "example.com", metadata.labels: invalid value '2001:41c9:1:41f::131': must have at most 63 characters, matching regex (([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])?: e.g. "MyValue" or ""]

这就是我的问题。把它拿出来一切都很好。

所以回答我的3个问题:

  1. 是的,工作节点应立即显示在“获取节点”中。
  2. 我觉得让它上班很重要;出于安全原因,这可能很重要。
  3. 检查基本网络是否正确且容器是否正在运行后的第一步:查看新节点的kubectl容器的日志文件。
  4. 更新:我写了这篇博文来解释我是如何使它运作的http://blog.willmer.org/2016/11/kubernetes-bytemark/