阶段三:
1.安装必要工具(所有节点)
1.1 工具说明:
kubeadm 部署集群用的命令
kubelet 在集群中每台机器上都要运行的组件,负责管理pod,容器的生命周期
kubectl 集群管理工具
2.初始化主节点加入主节点以及其余工作节点部署网络
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
3.查看当前可以安装的版本
yum list kubeadm --showduplicates | sort -r
4.安装指定版本 (ps:我为了适配安装1.5版本)
version='1.15.1'
yum install -y kubeadm-${version} kubelet-${version} kubectl-${version} kubernetes-cni-0.6.0 --disableexcludes=kubernetes
5.设置开机自启
systemctl enable kubelet.service
6.导入镜像 kubeadm-basic.images.tar.gz(ps 也可以从网上下载)
链接:https://pan.baidu.com/s/11W_xM8tGJIt0PIonz-y5Og
提取码:cyon
7.解压 kubeadm-basic.images.tar.gz
tar -zxvf kubeadm-basic.images.tar.gz
8.编写shell脚本以便从kubeadm-basic.images中导出镜像到本地
#!/bin/bash
# 列出 kubeadm-basic.images中所有镜像名称并写入到 images.txt
ls kubeadm-basic.images > images.txt
# 进入/root/kubeadm-basic.images 目录
cd /root/kubeadm-basic.images
#for 循环遍历取出images.txt中的名称并用docker load -i 名称导出镜像
for i in $(cat images.txt)
do
docker load -i $i
done
#删除 images.txt
rm -rf images.txt
9.打印 kubeadm 默认初始化模板
kubeadm config print init-defaults > kubeadm-config.yaml
10.修改kubeadm-config.yaml 中的部分配置将下图中的红色配置加到自己的配置文件中注意格式(否则会报错)
localAPIEndpoint:
advertiseAddress: 192.168.223.110 自己的master的节点的内网ip
kubernetesVersion: v1.15.1
networking:
podSubnet: "10.244.0.0/16"
serviceSubnet: 10.96.0.0/12
---
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
featureGates:
SupportIPVSProxyMode: true
mode: ipvs
11.初始化 kubeadm 并给节点颁发证书 把所有节点信息写入 kubeadm-init.log 中
kubeadm init --config=kubeadm-config.yaml --experimental-upload-certs | tee kubeadm-init.log
如以上运行成功出现下图提示说明集群初步搭建成功并按照日志提示将其他worker节点加入集群