之前在centos7 搭建了 docker1.13 和 k8s 1.5.2 ,最后,k8s 的 kube-dns 没有创建成功,flannel 网络没有创建成功。今天这个 ubantu 都成了。

 

harbor 的安装请看我的其他博文。

操作地址:比较好的 ubantu 搭建k8s集群博文

 

注意两点:

 

一 :docker harbor 私服仓库,需要在每个 k8s工作节点上 配置 地址,这样,slave 上 才可以找到 harbor 中的镜像命令如下:

echo '{ "insecure-registries":["9.2.1.26:5000"] }' > /etc/docker/daemon.json

上面的 9.2.1.26 是 harbor 所在服务器的ip, 5000 是 在harbor docker-commples.yml 中 的registery 配置的。

配置完成后,重启harbor 和 docker。

二:每次 k8s master 通过 kubelet 调度 k8s 各个slave 的时候,每个 slave去 doker pull harbor 镜像的时候,会提示失败。

通过如下命令可以查看该pod 的错误日志:

#当pod 启动失败后, 可以用如下命令查看pod 日志,web-gateway-deployment-7bcd9f8f8c-85lcq他是pod name.
kubectl describe pod web-gateway-deployment-7bcd9f8f8c-85lcq 

错误信息为如下:

 Warning  Failed     6m (x4 over 7m)   kubelet, 9.42.19.118  Failed to pull image "9.42.41.226:5000/wsjc-web/web-gateway:latest": rpc error: code = Unknown desc = Error response from daemon: pull access denied for 9.2.1.26:5000/wsjc-web/web-gateway, repository does not exist or may require 'docker login'

 

解决办法:

没有kubelet的这个文件夹就创建一下。

sudo cp ~/.docker/config.json /var/lib/kubelet/config.json

最好重启docker 服务:systemctl restart docker.service 。

 

 

 

 

 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐