51300520
V2EX  ›  问与答

我用 kubeadm 安装 k8s 群集, mater 节点 Ready 了, work 节点怎么一直 NotReady 啊?

  •  
  •   51300520 · Mar 22, 2019 · 6463 views
    This topic created in 2630 days ago, the information mentioned may be changed or developed.

    版本 1.13.4,两台虚拟机 先用 kubeadm init 部署 master 节点没问题,然后另一台机器 kubeadm join 过后,用 kubectl get nodes 查看 work 节点一直是 NotReady 状态,describe 看了一下提示是

    NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized

    用 get pods 看发现有两个这个,running 那个应该是主节点的? work 节点一直在 init?

    kube-system kube-flannel-ds-amd64-qgptr 1/1 Running kube-system kube-flannel-ds-amd64-t597x 0/1 Init:0/1

    我明明已经 apply -f kube_flannel.yml 了啊,搞了几个小时了,真是醉了。

    是不是镜像的问题?我目前 master 节点那台机器有 k8s 所需的各种镜像,work 节点上用 docker images 查看是空的。我记得我 init master 节点的时候下载镜像失败,是我手动下载后才部署成功的,work 节点 join 过后怎么一个镜像都没有?

    3 replies    2019-03-22 16:14:20 +08:00
    privil
        1
    privil  
       Mar 22, 2019
    是,node 节点手动导入镜像,这个没那么智能
    kidlj
        2
    kidlj  
       Mar 22, 2019   ❤️ 2
    worker 节点也是需要下载镜像的,docker image ls 没有镜像那就是没下载成功。

    服务器在国内的话,最省心的是在服务器上跑一个 ss client service,然后再跑一个 privoxy service 把 ss 的 socks5 变成 http 协议。

    http://blog.zivers.com/post/2048.html

    最后配置 dockerd 拉取镜像时候使用 http 代理:

    ```
    $ cat /etc/systemd/system/docker.service.d/http-proxy.conf

    [Service]
    Environment="HTTP_PROXY=http://127.0.0.1:8118"
    Environment="HTTPS_PROXY=http://127.0.0.1:8118"

    $ sudo systemctl daemon-reload
    $ sudo systemctl restart dockerd
    ```

    这样以后什么镜像都能拉取下来了。
    51300520
        3
    51300520  
    OP
       Mar 22, 2019   ❤️ 1
    @kidlj
    谢谢,成功了,哎,还真是被墙了 image pull 不下来导致的,之所以我搞这么久没成功是因为我其实设置了 ALL_PROXY 为 socks5,以为不是墙的问题,按照你说的把 sock5 变成 http 就可以了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3386 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 11:12 · PVG 19:12 · LAX 04:12 · JFK 07:12
    ♥ Do have faith in what you're doing.