总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:企业级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集群运维实战

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐