kubeadminit--pod-network-cidr需要哪些镜像

Python私教 2024-11-22 22:54:27

使用 kubeadm init 初始化 Kubernetes 集群时,需要下载一系列的容器镜像以部署控制平面组件和网络插件。以下是一些通常需要的镜像:

Pause 容器镜像:

这是 Kubernetes 中的“Pause”容器,用作每个 Pod 的基础设施容器。通常由 kubelet 自动拉取。

镜像名:k8s.gcr.io/pause:3.6

Etcd 容器镜像:

Kubernetes 使用 Etcd 作为其键值存储数据库。

镜像名:k8s.gcr.io/etcd:3.5.0-0

Kubernetes 控制平面组件:

API Server、Scheduler、Controller Manager 和 Kubelet 等。

镜像名通常包括:k8s.gcr.io/kube-apiserver、k8s.gcr.io/kube-scheduler、k8s.gcr.io/kube-controller-manager 和 k8s.gcr.io/kube-proxy。

Pod 网络插件:

根据选择的网络解决方案,需要下载相应的 CNI 插件。例如,如果你使用 Calico,需要下载 Calico 的网络插件镜像。

镜像名:calico/cni、calico/kube-controllers、calico/node。

CoreDNS:

Kubernetes 集群的 DNS 服务。

镜像名:k8s.gcr.io/coredns:1.8.0

Dashboard:

Kubernetes 的 Web UI 控制面板(如果需要)。

镜像名:k8s.gcr.io/kubernetes-dashboard-amd64:v2.2.0

请注意,上述镜像版本可能会随着 Kubernetes 版本的更新而变化。在 kubeadm init 过程中,kubeadm 会尝试自动下载这些镜像。如果你处于离线环境或需要预先下载这些镜像,你需要根据你的 Kubernetes 版本查找对应的镜像列表,并使用 docker pull 命令将它们下载到本地。

例如,如果你使用的是 Kubernetes v1.22.0,你可以使用以下命令来获取所需的镜像列表:

kubeadm config images list --kubernetes-version=v1.22.0

然后,使用以下命令下载每个镜像:

docker pull <image>

下载完成后,你可以使用 docker save 命令将它们保存为 tar 文件,并将这些文件传输到你的离线环境中:

docker save -o <image-name>.tar <image>

在离线环境中,使用 docker load 命令加载这些镜像:

docker load -i <image-name>.tar

确保在执行 kubeadm init 之前,所有必要的镜像都已加载到本地。

0 阅读:0

Python私教

简介:全栈工程师,目标人工智能.抖音同理想国真恵玩.