文章来源:https://www.cnblogs.com/yxh168/p/16096318.html
1、安装阿里云仓库源
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
对比:
cat <<EOF | tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/repodata/repomd.xml.key
EOF
setenforce 0
区别:新版配置方法(v1.28)与旧版配置方法
2、查看阿里云可安装的版本(列出来的版本都可以通过此仓库进行安装)
yum list kubeadm --showduplicates | sort -r
3、安装指定版本的kubeadm(以1.20.0为例)
yum install -y kubelet kubeadm kubectl #默认安装最新版本
yum install -y kubelet-1.20.0 kubeadm-1.20.0 kubectl-1.20.0 --disableexcludes=kubernetes
4、安装指定版本的kubernetes(创建集群)
kubeadm init \
--kubernetes-version=v1.20.1 \
--pod-network-cidr=10.244.0.0/16 \
--image-repository registry.aliyuncs.com/google_containers \
--apiserver-advertise-address 192.168.3.89 \
--v=6
参考说明:
kubernetes-version:要安装的版本
pod-network-cidr:负载容器的子网网段
image-repository:指定镜像仓库(由于拉取从阿里云,解决了k8s.gcr.io镜像拉不下来的问题)
apiserver-advertise-address:节点绑定的服务器IP(多网卡可以用这个参数指定IP)
5、其他
1)删除老版本的kubelet kubeadm
yum remove -y kubelet-1.15.0 kubeadm-1.15.0 kubectl-1.15.0
yum install -y kubelet-1.23.5 kubeadm-1.23.5 kubectl-1.23.5
2)创建指定版本的集群
kubeadm init \
--apiserver-advertise-address=192.168.227.155 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.23.5 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16 \
--v=6
3)安装高版本
高版本集群不再使用docker做为容器管理工具,使用的是containerd
安装CRI客户端工具crictl(#验证是否可用)
crictl pull nginx
crictl rmi nginx
crictl images
4)忽略无关错误
kubeadm init --ignore-preflight-errors=all
5)k8s版本太高问题
安装v1.23.5异常
api server容器运行异常日志
[round_trippers.go:553] api/v1/nodes/k8s-master?timeout=10s 404 Not Found
解决方法:降低安装的k8s版本,即安装v1.22.5即可
kubeadm init \
--ignore-preflight-errors=all \
--apiserver-advertise-address=192.168.227.155 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.22.5 \
--service-cidr=10.1.0.0/16 \
--pod-network-cidr=10.244.0.0/16 \
--v=6
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。