安装k8s 1.28.0
k8s 从1.24之后移除了dokcer直接支持,安装方式与1.24.0以前有不一样的地方
-
下载安装文件
# 三个主文件
wget qq829.cn/uploads/software/k8s/v1.28.0/kubectl
wget qq829.cn/uploads/software/k8s/v1.28.0/kubelet
wget qq829.cn/uploads/software/k8s/v1.28.0/kubeadm
# docker-compose
wget qq829.cn/uploads/software/k8s/docker-compose
# 两个插件
wget qq829.cn/uploads/software/k8s/v1.28.0/cri-dockerd-0.3.4-3.el7.x86_64.rpm
wget qq829.cn/uploads/software/k8s/v1.28.0/crictl-v1.28.0-linux-amd64.tar.gz
# 服务配置文件
wget qq829.cn/uploads/software/k8s/v1.28.0/10-kubeadm.conf
wget qq829.cn/uploads/software/k8s/v1.28.0/kubelet.service
# 插件
wget qq829.cn/uploads/software/k8s/v1.28.15/calico.yaml
# 这个镜像为加速镜像,如果网络不好ky使用这个
wget qq829.cn/uploads/software/k8s/v1.28.15/calico-image-vp-whdev.yaml
wget qq829.cn/uploads/software/k8s/v1.28.15/traefik-ingress.tar
wget qq829.cn/uploads/software/k8s/v1.28.15/nfs-storage.tar
# 安装 socat conntrack 依赖软件
yum install -y socat
yum install -y conntrack
# 复制三个主文件到目录
cp kubectl kubelet kubeadm /usr/local/bin/
# 安装插件
yum install cri-dockerd-0.3.4-3.el7.x86_64.rpm
# 修改cri-docker服务配置
# vi /usr/lib/systemd/system/cri-docker.service
# 修改cri-docker配置文件,在后面增加参数,告诉告诉docker使用 pause镜像与版本
# --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.9
systemctl enable cri-docker
systemctl restart cri-docker
# 复制crictl到目录
tar -xvzf crictl-v1.28.0-linux-amd64.tar.gz
cp crictl /usr/local/bin
# 修改crictl配置文件(非必须)
# 因为crictl是一个统一的容器管理工具,管理多种容器,不修改如下配置也没事,只是看到一堆错误提示不友好
# vi /etc/crictl.yaml
# runtime-endpoint: unix:///var/run/cri-dockerd.sock
# 安装kubelet服务,开启服务自启动
# 需要注意 服务文件里面的执行路径,
cp kubelet.service /usr/lib/systemd/system/kubelet.service
mkdir -p /etc/systemd/system/kubelet.service.d
cp 10-kubeadm.conf /etc/systemd/system/kubelet.service.d
# 设置kubelet 开机启动服务
# 此时会显示一堆错误,这是正常的
systemctl enable kubelet.service
systemctl status kubelet
-
安装
# 部署KUBE-VIP 便于后期扩展,如果不想部署KUBE-VIP,可以直接使用主机名
docker run --network host --rm swr.cn-south-1.myhuaweicloud.com/vp-whdev/all-in-devops/kube-vip:v0.6.0 manifest pod --interface=eth0 --vip 192.168.0.200 --controlplane --services --arp --leaderElection | tee /etc/kubernetes/manifests/kube-vip.yaml
# 初始化集群
kubeadm init --control-plane-endpoint "kube-api-server:6443" --image-repository registry.aliyuncs.com/google_containers --upload-certs --kubernetes-version v1.28.0 --pod-network-cidr 10.244.0.0/16 --cri-socket unix:///var/run/cri-dockerd.sock --v 5
# 重置集群
kubeadm reset --cri-socket unix:///var/run/cri-dockerd.sock
# 安装网络插件
kubectl apply -f calico-image-vp-whdev.yaml