2015年第一次接触k8s,当时的搭建过程没那么复杂,yum装装,手工配配,没有证书,没有Dashboard,也没有墙…… 。过了3年没碰k8s,现在再来看,发现变化太大了,有了各式的自动部署工具,有了容器,也有了墙…… 。按照新的方式从新搭建了一遍,参考的帖子放在前面,由于别人写的比我好多了,因此这里只总结经验。html
1. 手工搭建k8s:https://www.kubernetes.org.cn/3096.htmllinux
这篇帖子写的很细,一步一步作证书,修改各个配置文件,纯手工部署。但这不是主流的部署方式,适合新手经过手工搭建去深刻理解k8s各个组件。git
2. Kubeadm搭建k8s:https://www.kubernetes.org.cn/3536.htmlgithub
Kubeadm和kubespray的优劣我没仔细研究过。多是由于玩kolla时用过ansible,因此对kubespray感受比较亲切,而对Kubeadm就没那么多兴趣了。另一个有意思的是,写Kubeadm部署的帖子大部分是16年的,而kubespray的帖子大部分是17年的。github上kubespray的start也远高于Kubeadm,因此如今的主流是kubespray了?docker
言归正传,帖子的详细程度通常般,虽然是18年写的,但内容有点老。搭建的麻烦之处就是去搞kubeadm等rpm包和pause-amd64等镜像。我经过google虚机去搞到了相关的东东,但总的来讲仍是很是麻烦。毕竟不是主流,没仔细研究。centos
3. Kubespray搭建k8s:工具
https://www.jianshu.com/p/68925cb902e7google
https://www.cnblogs.com/iiiiher/p/8128184.html阿里云
Kubespray的部署帖子写的比较全一些,镜像都被做者放到了阿里云仓库上,下载镜像也很方便。和帖子不太同样的地方是我装的docker-ce版本有点高,docker-ce-17.12.1.ce-1.el7.centos,而做者提供的kubespray里面要校验docker-engine-selinux(在docker-ce-17.12.1版本中已经没了)。因此改了kubespray/roles/docker/vars/redhat.yml配置文件,去掉了docker_selinux校验。其它的参考帖子,改改Ip什么的。总的来讲搭建过程很顺利,重新建虚机装系统到部署完成,大概3个小时左右吧。htm
最后上个图,mark一下