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