“ kubectl获取节点”仅显示主节点而不是工作线程

时间:2018-06-20 01:51:42

标签: kubernetes

我正在关注文档https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/,以尝试在本地Mac中使用3个无聊的ubuntu vm创建一个kubernetes集群。但是我只能通过在“ kubeadm join”成功后在主节点中运行“ kubectl get nodes”来看到主节点。在尝试了几种可能的方式从互联网上搜索之后,仍然是同样的问题。

以下列出了有关我的集群的一些信息:

  

3个无用的虚拟机(ubuntu 16.04):   -(master)eth0:10.0.2.15,eth1:192.168.101.101   -> kubeadm init --ignore-preflight-errors交换--apiserver-advertise-address = 192.168.101.101   -(worker1)eth0:10.0.2.15,eth1:192.168.101.102   -> kubeadm join 192.168.101.101:6443 --token * --discovery-token-ca-cert-hash sha256: --ignore-preflight-错误交换   -(worker2)eth0:10.0.2.15,eth1:192.168.101.103   -> kubeadm join 192.168.101.101:6443 --token --discovery-token-ca-cert-hash sha256:* --ignore-preflight -错误交换

对此有何想法?

关于, 杰基

kubelet日志的屏幕截图

screenshot for kubelet log

log-new-part1 log-new-part2

2 个答案:

答案 0 :(得分:0)

您在从属节点上使用默认路由的问题修复了路由表。

我使用这样的脚本来在操作系统启动后修复路由。

#!/bin/bash

if $( ip route |grep  -q '^default via 10.0.2.2 dev' ); then
        ip route delete default via  10.0.2.2
fi

if ! $( ip r |egrep -q '^default .* eth1'); then
        ip route add default via 192.168.15.1
fi
exit 0

答案 1 :(得分:0)

确保任何节点[主节点和工作节点]具有唯一的主机名。几个小时后,只需意识到我的主服务器和从主服务器克隆的虚拟机具有相同的主机名 master ,将工作节点的主机名更改为 worker-node-01 worker- node-02 一切正常。