使用kubeadm安装Kubernetes 1.9
最早接触kubernetes
已经是几年之前,一直觉得搭建和维护比较复杂,小团队大概用不到,就没有深入去研究和应用了。感觉今年kubernetes
大放异彩,各种相关消息里都少不了,于是还是决定尝试一下。
由于天朝特殊的网络环境,没有梯子的话,没法像kubernetes官方文档里写的那样去访问各种“不存在的网址”搭建集群。所以,只能找各种国内源去绕开网络问题(同时大大加速)。
搭建环境:ubuntu 16.04 + kubeadm 1.9 + docker 17.09
(当下最新)
本以为kubernetes
这么火了,各种套路肯定是一堆一堆的, 结果发现自己还是太年轻。网上好多都是基于centos
的(感觉ubuntu
是被嫌弃了么?),并且kubernetes
版本不高。可能因为官方更新迅速,很多方式现在已经不适用了,最后只能自己踩坑。
简单来说:
我把安装过程写成了脚本,下载、改改、运行就可以了
git clone git@github.com:EagleChen/kubernetes_init.gitcd kubernetes_init# 改一改文件!!!sudo ./install.sh pre sudo ./install.sh kubernetes
就可以了。网络稍微好点, 10多分钟就可以搞定(主要是安装工具和下载镜像)。
为了直观, 我直接写死了很多路径,需要根据自己的需求修改。 比如不要改动docker的存储路径, 就把install_docker
函数中graph那行去掉。
对脚本以及一些坑的解释:
脚本主要是解决特殊网络环境方面的问题(源、
registry
镜像等),只安装master
节点, 装node
的话, 非常类似。脚本并没有做什么风骚的操作,基本上就是照着官方的文档来(然后改变下载地址),所以对着官方文档运行脚本,是正确姿势!这点非常关键!
docker
源设置成了中科大的, 可以用其他的,非常多(清华源文档是错的,注意一下就行了)。kubernetes
(这么新的) 我没找到其他好的源。repo
里面的gpg
文件对应的是kubernetes
, 若不放心,可以(自行穿墙)从官方渠道下载。docker
的registry mirror
,非常多地方可以获取到,我这里就不打广告了。需要自己申请了,设置在shell
脚本里。shell
脚本中,保留了对于之前版本的kubeadm init
的设置方式,注释掉了。如果有特殊需求,需要用之前的版本,可以尝试一下(我是没试过,出错了我就没办法了)。运行完脚本之后,其实还有蛮多后续操作,但基本不涉及网络方面的内容了。所以需要照着输出和文档来。
阿里云registry上有两组仓库
google-containers
和google_containers
, 后者更新迅速一些,用!(但是为啥不是一个,这个鬼地方太坑人了)很多之前的文章说
cgroupfs
需要保持同步, 可能kubernetes
新版(1.9)改变了吧,我发现用不着改docker
的配置了。
作者:EagleChan
链接:https://www.jianshu.com/p/0e54aa7a20cf
共同学习,写下你的评论
评论加载中...
作者其他优质文章