此教程采用kubeadm快速部署kubernetes集群,采用阿里云镜像源,加速部署过程中镜像下载速度。使用calico网络插件,若实际过程中使用其他网络插件请注意更换插件并修改配置文件。Dashboard使用的是kubeard。
目录
一、安装要求:
二、系统初始化:
三、安装docker/kubeadm/kubelet
四、master节点初始化
五、node节点初始化
六、安装CNI网络插件
七、安装Dashboard
一、安装要求:
- 安装虚拟机,安装操作系统CentOS7.x
- 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多
- 集群中的所有机器之间网络互通
- 可以访问外网 要拉取镜像
- 禁止swap分区
二、系统初始化:
关闭防火墙systemctl stop firewalld && systemctl disable firewalld
关闭selinux
setenforce 0 #临时sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config #永久
关闭swap分区
swapoff -a #临时sed -ri 's/.*swap.*/#&' /etc/fstab ###注释掉/etc/fstab 包含swap的一行 ##永久
修改主机名
hostnamectl set-hostname <hostname>
修改hosts解析
cat >> /etc/hosts << EOF192.168.56.10 master192.168.56.11 node1192.168.56.12 node2EOF
配置iptables转发规则
cat > /etc/sysctl.d/k8s.conf << EOFnet.bridge.bridge-nf-call-ip6tables = 1net.bridge.bridge-nf-call-iptables = 1EOFsysctl --system ##生效
时间同步
yum -y install ntpdatentpdate
三、安装docker/kubeadm/kubelet
安装Dockerwget /docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo ##拉取dockeryum源yum -y install docker-ce-18.06.1.ce-3.el7 ##安装指定版本dockersystemctl enable --now docker ##启动docker并设置开机自启动##设置docker镜像仓库为阿里云镜像仓库sudo tee /etc/docker/daemon.json <<-'EOF'{"registry-mirrors": ["https://i4eipdhp."]}EOFsystemctl daemon-reloadsystemctl restart docker
添加kubernetes阿里云yum源
cat >> /etc/yum.repos.d/kubernetes.repo << EOF[kubernetes]name=kubernetesbaseurl=/kubernetes/yum/repos/kubernetes-el7-x86_64enabled=1gpgcheck=0repo_gpgcheck=0gpgkey=/kubernetes/yum/doc/yum-key.gpg/kubernetes/yum/doc/rpm-package-key.gpgEOF
安装kubeadm、kubelet、kubectl
#由于版本更新频繁,所以指定版本号部署yum -y install kubelet-1.20.0 kubeadm-1.20.0 kubectl-1.20.0systemctl enable kubelet
四、master节点初始化
kubeadm init \--apiserver-advertise-address=192.168.56.10 \--image-repository /google_containers \--kubernetes-version v1.20.0 \--service-cidr=10.96.0.0/12 \--pod-network-cidr=10.244.0.0/16##由于默认拉取镜像地址k8s.gcr.io国内无法访问,这里指定阿里云镜像仓库地址
使用kubectl工具:
mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config
五、node节点初始化
在node节点上执行
向集群添加新节点,执行kubeadm init输出的kubeadm join命令:
注意:此处命令复制master节点初始化完成后自动生成的命令,切不可复制下面命令,只做参考
kubeadm join 192.168.40.162:6443 --token 91v92j.bobkybnghpwgn567 \--discovery-token-ca-cert-hash sha256:0a69919203b2931f29378c79892cf40ed556685730eb930a65b925e6779507af
默认token有效期为24显示,当过期之后,该token就不可用了。这时候需要重新创建token,操作如下:
kubeadm token create --print-join-command
六、安装CNI网络插件
#在master节点执行以下操作wget /v3.13/manifests/calico.yamlkubectl apply -f calico.yaml
七、安装Dashboard
kubectl apply -f /kuboard/kuboard-v3.yaml# 您也可以使用下面的指令,唯一的区别是,该指令使用华为云的镜像仓库替代 docker hub 分发 Kuboard 所需要的镜像# kubectl apply -f /kuboard/kuboard-v3-swr.yaml
Dashboard参考链接:安装 Kuboard v3 - kubernetes | Kuboard
至此,部署完成若有问题欢迎大家评论区留言!!!