入门
安装kubernetes-1.14-Ubuntu篇
本文档所需文件均可在百度网盘中下载:
https://pan.baidu.com/s/1lWLyyT1jAbADGuxEG3m4gA
提取码:ge4d
安装包准备
网盘路径:iManager部署包/软件工具包/Kubernetes离线安装包/kubernetes-1.14.1-ubuntu-18.04-deploy.zip
环境要求
-
使用网盘中提供的ISO安装系统
网盘路径:iManager部署包/软件工具包/OS/OS-ISO/ubuntu-18.04.2-live-server-amd64.iso
- 在安装系统时,除了swap分区外,其他分区的文件系统一律选择ext4类型,设备类型默认选LVM;要求根(/)分区占据磁盘总量90%以上。
-
规格:
- 处理器数量:4 核+
- 内存:8 GB+(规格越大性能越好)
单节点(master)安装步骤
在本机解压Kubernetes-1.14.1-ubuntu-18.04-deploy.zip
,将解压后目录里的offline-Kubernetes-1.14-ubuntu.tar.gz
拷贝到要安装Kubernetes的机器任意目录,再执行以下操作:
解压:
tar -zxvf offline-kubernetes-1.14-ubuntu.tar.gz
进入解压后的目录:
cd offline-kubernetes-1.14-ubuntu
root用户下,执行安装脚本:
chmod +x install.sh && ./install.sh master
安装完成之后,访问 http://<ip>:31234
可以看到 kubernetes 的 dashboard 界面
备注:
多网卡情况下需要指定 kubernetes 使用哪块网卡的 ip,需要追加参数( ‐‐apiserver-advertise-address<ip>
),<ip>
为希望使用的网卡对应的 ip。例如: 172.16.16.9,完整的命令类似如下chmod +x install.sh && ./install.sh --apiserver-advertise-address 172.16.16.9
复制指令使用时,如果粘贴的指令发生换行,须调整在同一行内再执行,并确保指令中所有字符都为英文字符
单个master节点也可以直接使用,后期随着业务需求增大,可以随时添加node节点。
增加node节点(可选)
若要安装Kubernetes node节点,需重新选择一台机器,node节点不可与master节点在同一台机器上。
首先在需要加入kubernetes集群的node节点上执行下面命令,设置node节点的名称,如果有多个节点可以按照node1, node2, node3 … 设置
#修改系统配置,以免修改节点名称后,重启失效
sed -i "s|preserve_hostname: false|preserve_hostname: true|g" /etc/cloud/cloud.cfg
#修改节点名称,防止多个节点重名
hostnamectl set-hostname node1
拷贝kubernetes离线安装包到node机器任意目录。
解压:
tar -zxvf offline-kubernetes-1.14-ubuntu.tar.gz
进入解压后的目录
cd offline-kubernetes-1.14-ubuntu
在kubernetes master节点上执行以下命令获取token:
kubeadm token list
root用户下,执行安装脚本
chmod +x install.sh && ./install.sh join <master-ip>:6443 --token <kubernetes-token>
注意:
<master-ip>
为 master 节点的 ip。<kubernetes-token>
可以通过在master节点执行命令(kubeadm token list)获取。- 多网卡情况下可以按照安装master节点时的参数进行网卡指定。
- 复制指令使用时,如果粘贴的指令发生换行,须调整在同一行内再执行,并确保指令中所有字符都为英文字符
加入集群成功后,在master节点使用下面命令查看
kubectl get nodes
常见问题解答
-
如果上述获取token的命令没有显示 token,可以使用下面命令创建
kubeadm token create
-
如果在安装node节点时报如下错误,说明token过期,需要master节点上使用kubeadm token create命令重新创建一个token来使用。
报错信息如下:
couldn’t validate the identify of the API server: abort connection to API server after timeout of 5m0s
-
如果Kubernetes node节点出现故障,需要从Kubernetes集群中移除该节点,请在master节点上执行以下命令:
kubectl delete node <nodeName>
备注:
<nodeName>
是即将移除kubernetes集群的节点名称。 -
移除的节点如何重置,请在节点上执行以下命令:
kubeadm reset
-
如果要将移除后的节点再次加入Kubernetes集群,请在加入集群的节点上执行以下命令:
kubeadm join <master-ip>:6443 --token <kubernetes-token> --discovery-token-unsafe-skip-ca-verification
注意:
<master-ip>
为master节点的ip<kubernetes-token>
为在master节点上通过”kubeadm token list”查看获取的token- 多网卡情况下可以按照安装master节点时的参数进行指定网卡
- 复制指令使用时,如果粘贴的指令发生换行,须调整在同一行内再执行,并确保指令中所有字符都为英文字符
-
如果要卸载Kubernetes,请在各个节点的安装包目录执行以下命令:
chmod +x install.sh && ./install.sh down