先决条件
- 操作系统: Ubuntu 16.04, CentOS 7 or HypriotOS v1.0.1+
- 至少 1GB RAM
- 确保集群内所有计算机之间的网络连接(公共或专用网络都行)
目标
- 在你的机器上安装一个安全的 Kubernetes 集群
- 在集群上安装一个 pod 网络,一遍应用组件(pods)之间可以正常通信。
安装
在主机上安装 kubelet 和 kubeadm
以下为将要在你的主机上安装的包:
- docker
- kubelet
- kubectl
- kubeadm
依次为每个主机进行安装配置:
1. 切换为 root 用户 su root
2. 如果你的机器是运行的 ubuntu 16.04 或 HypriotOS v1.0.1,执行如下命令:
|
|
3. CentOS 7,执行如下命令:
|
|
初始化 master
|
|
输出结果大体这样:
|
|
记录下 kubeadm init 输出的 kubeadm join 命令行。
安装节点网络插件
你必须在安装一个 pod 网络插件,以确保 pods 之间能够相互通信。
-
- Calico
- Canal
- Flannel
- Romana
- Weave
通过如下命令安装 pod 网络插件:
|
|
以 Calico 网络插件为例,在 Calico 官网 上下载 calico.yaml 文件到本地,然后执行如下命令:
|
|
具体细节请参阅特定插件安装指南。一个集群中只能安装一个 pod 网络。
添加节点
节点作为工作负载运行容器和 pods 等。如果你要将一个新的机器作为节点加入集群中,须将每个机器切换为 root 用户,并执行之前 kubeadm init 的输出命令,例如:
|
|
在 master 上运行 kubectl get nodes 命名即可插件节点集群信息。
可选配置
非 master 节点控制集群
|
|
撤销 kubeadm
撤销 kubeadm,只需执行如下命令:
|
|
如果你想重新启动集群,执行 systemctl start kubelet ,再执行 kubeadm init 或 kubeadm join 。