总结:整理不易,如果对你有帮助,可否点赞关注一下?
更多详细内容请参考:企业级K8s集群运维实战
一、背景信息
说明:以amd64架构为例,下载kubernetes 1.33.3版本镜像文件、yaml文件、二进制文件。 以下操作需在一台都能够访问registry.aliyuncs.com/google_containers和docker.io域名的主机上操作。
一、二进制文件下载
# cpu_platform可选值为:amd64、arm64、386、arm、ppc64le、s390x
cpu_platform=amd64
wget https://dl.k8s.io/v1.33.3/bin/linux/${cpu_platform}/kubectl
wget https://dl.k8s.io/v1.33.3/bin/linux/${cpu_platform}/kubelet
wget https://dl.k8s.io/v1.33.3/bin/linux/${cpu_platform}/kubeadm
wget https://dl.k8s.io/v1.33.3/bin/linux/${cpu_platform}/kube-log-runner
wget https://dl.k8s.io/v1.33.3/bin/linux/${cpu_platform}/kube-aggregator
wget https://dl.k8s.io/v1.33.3/kubernetes-server-linux-amd64.tar.gz
二、calico镜像及yaml文件下载
calico 3.30.2版本对应K8S版本,如下图所示:
# 支持系统
RedHat Linux 7
CentOS 7
Flatcar Container Linux
Fedora CoreOS
Ubuntu 18.04
Debian 8
# 支持k8s版本
v1.31
v1.32
v1.33
1、yaml文件下载
[root@k8s-master-58 ~]# wget https://raw.githubusercontent.com/projectcalico/calico/v3.30.2/manifests/calico.yaml
root@k8s-master-58:~/images# grep "image:" calico.yaml | uniq -c
2 image: docker.io/calico/cni:v3.30.2
2 image: docker.io/calico/node:v3.30.2
1 image: docker.io/calico/kube-controllers:v3.30.2
2、镜像下载
#!/bin/bash
calico_version=v3.30.2
ctr image pull --all-platforms docker.io/calico/cni:${calico_version}
ctr image pull --all-platforms docker.io/calico/node:${calico_version}
ctr image pull --all-platforms docker.io/calico/kube-controllers:${calico_version}
ctr image export --all-platforms cni-${calico_version}.tar.gz docker.io/calico/cni:${calico_version}
ctr image export --all-platforms node-v${calico_version}.tar.gz docker.io/calico/node:${calico_version}
ctr image export --all-platforms kube-controllers-${calico_version}.tar.gz docker.io/calico/kube-controllers:${calico_version}
三、kubernetes镜像文件下载
1、查看kubernetes v1.33.3版本所需镜像
root@k8s-master-58:~/images# kubeadm config images list --kubernetes-version=v1.33.3
registry.k8s.io/kube-apiserver:v1.33.3
registry.k8s.io/kube-controller-manager:v1.33.3
registry.k8s.io/kube-scheduler:v1.33.3
registry.k8s.io/kube-proxy:v1.33.3
registry.k8s.io/coredns/coredns:v1.12.0
registry.k8s.io/pause:3.10
registry.k8s.io/etcd:3.5.21-0
2、镜像下载及导出
#!/bin/bash
k8s_version=v1.33.3
pause_version=3.10
etcd_version=3.5.21-0
coredns_version=v1.12.0
calico_version=v3.30.2
registry_address=registry.aliyuncs.com/google_containers
ctr image pull --all-platforms ${registry_address}/kube-apiserver:${k8s_version}
ctr image pull --all-platforms ${registry_address}/kube-controller-manager:${k8s_version}
ctr image pull --all-platforms ${registry_address}/kube-scheduler:${k8s_version}
ctr image pull --all-platforms ${registry_address}/kube-proxy:${k8s_version}
ctr image pull --all-platforms ${registry_address}/pause:${pause_version}
ctr image pull --all-platforms ${registry_address}/etcd:${etcd_version}
ctr image pull --all-platforms ${registry_address}/coredns:${coredns_version}
ctr image export --all-platforms kube-apiserver-${k8s_version}.tar.gz ${registry_address}/kube-apiserver:${k8s_version}
ctr image export --all-platforms kube-controller-manager-${k8s_version}.tar.gz ${registry_address}/kube-controller-manager:${k8s_version}
ctr image export --all-platforms kube-scheduler-${k8s_version}.tar.gz ${registry_address}/kube-scheduler:${k8s_version}
ctr image export --all-platforms kube-proxy-${k8s_version}.tar.gz ${registry_address}/kube-proxy:${k8s_version}
ctr image export --all-platforms pause-${pause_version}.tar.gz ${registry_address}/pause:${pause_version}
ctr image export --all-platforms etcd-${etcd_version}.tar.gz ${registry_address}/etcd:${etcd_version}
ctr image export --all-platforms coredns-${coredns_version}.tar.gz ${registry_address}/coredns:${coredns_version}
ctr image pull --all-platforms docker.io/calico/cni:${calico_version}
ctr image pull --all-platforms docker.io/calico/node:${calico_version}
ctr image pull --all-platforms docker.io/calico/kube-controllers:${calico_version}
ctr image export --all-platforms cni-${calico_version}.tar.gz docker.io/calico/cni:${calico_version}
ctr image export --all-platforms node-${calico_version}.tar.gz docker.io/calico/node:${calico_version}
ctr image export --all-platforms kube-controllers-${calico_version}.tar.gz docker.io/calico/kube-controllers:${calico_version}
3、镜像导入
#!/bin/bash
k8s_version=v1.33.3
pause_version=3.10
etcd_version=3.5.21-0
coredns_version=v1.12.0
calico_version=v3.30.2
ctr -n k8s.io image import --all-platforms pause-${pause_version}.tar.gz
ctr -n k8s.io image import --all-platforms kube-apiserver-${k8s_version}.tar.gz
ctr -n k8s.io image import --all-platforms kube-controller-manager-${k8s_version}.tar.gz
ctr -n k8s.io image import --all-platforms kube-scheduler-${k8s_version}.tar.gz
ctr -n k8s.io image import --all-platforms kube-proxy-${k8s_version}.tar.gz
ctr -n k8s.io image import --all-platforms etcd-${etcd_version}.tar.gz
ctr -n k8s.io image import --all-platforms coredns-${coredns_version}.tar.gz
ctr -n k8s.io image import --all-platforms cni-${calico_version}.tar.gz
ctr -n k8s.io image import --all-platforms node-${calico_version}.tar.gz
ctr -n k8s.io image import --all-platforms kube-controllers-${calico_version}.tar.gz
总结:整理不易,如果对你有帮助,可否点赞关注一下?
更多详细内容请参考:企业级K8s集群运维实战