Kubernetes是个有很多贡献者的开源大项目,理论上它作为一个不挑食的容器管理框架,可以无处不在。但可惜的是,无论实际编写还是贡献测试代码,引导kubernetes server都不太容易。里边的一些文件对于我来说有些乱,不是挂了的就是过时的。源文件更改和编译运行的示例非常少,如果本地跑kubernets cluster就必须从头开始摸索中前进。
下面分享一些摸索心得,尽量从头开始详细讲解,大家一起聊聊。
既然是从头开始,那就得做做样子。先创建个新的、干净的VM来运行。
至此,新的Google云平台VM实例创建完成,这是个干净无污染的新环境。
这一步要安装:
GCC,Make,socat和git; Docker; 其他的看自己需求,没啥需求就不用管了。
ssh到上面的新VM,安装GCC,Make,socat和git:
安装etcd:
安装golang(应该是1.8+版本):
在这个步骤,Git Kubernetes源代码会克隆下来并添加到GOPATH。注意,这里要用–depth 1,即只要最新版本。
把Kubernetes sources添加到GOPATH:
这里不难,因为它正好有个叫local-up-cluster.sh的好货。
输出显示:
虚拟机打开个新的shell,cd到Kubernetes源目录GOPATH,然后就可以测试了:
在kubernetes-apiserver添加日志行来改个entry point,而且要保证这条你能在日志中看到:
停止本地群集,重启root@instance-3:/gopath/src/k8s.io/kubernetes# hack/local-up-cluster.sh
在尾api server日志行检查下是否出现了更改:
这就是从头开始创建本地的Kubernetes集群的文档,不麻烦,但也包含了一些比较重要的点:执行了几个简单的步骤,获取一个Kubernetes集群,并编译并更改了API服务器,然后查看了更改。
文章来自:微信公众号:DevOps研究院
评论