红联Linux门户
Linux帮助

Ubuntu部署K8S的一个问题及解决

发布时间:2016-10-16 23:12:28来源:linux网站作者:tomcat
1.背景
在Ubuntu 14.04 上部署K8S过程大致如下:
1].执行apt-get update 和 apt-upgrade
2].配置apt的代理(公司网络通过代理上网)
3].通过apt-get install docker.io方式安装docker
4].编译k8s,以本地模式启动
参考国内Ubuntu 14.04主机上部署k8s集群:http://www.linuxdiyf.com/linux/22927.html
 
2.问题
发现无法正常启动,无法执行kubectl 命令,日志中包含的错误信息为:某个资源在Busy状态,并且无法删除。最终跟踪到apiserver.log,controller.log和scheduler.log发现docker的api version过低,原来k8s要求的docker 的 api version >= 1.2 这里需要注意的是,docker api version 并不是docker 的版本,通过 apt-get install docker.io的方式安装的docker版本为1.6,但是api version 却是1.1,倒是k8s无法正常启动。
 
3.解决方案
安装docker engine,而不是docker.io,执行apt-get install docker-engine
docker engine 的 相关信息如下:
root@ubuntu:~# docker version
Client:
Version:      1.9.1
API version:  1.21
Go version:   go1.4.3
Git commit:   a34a1d5
Built:        Fri Nov 20 17:56:04 UTC 2015
OS/Arch:      linux/amd64
Server:
Version:      1.9.1
API version:  1.21
Go version:   go1.4.3
Git commit:   a34a1d5
Built:        Fri Nov 20 17:56:04 UTC 2015
OS/Arch:      linux/amd64
root@ubuntu:~#
或者使用lxc-docker 也可以,只需要api version 版本 >= 1.2 即可。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/25103.html