离线初始化k8s

导出和导入所有必要的 Kubernetes 镜像,使用阿里云作为源。

在能访问外网的机器上拉取镜像

首先,在有外网访问的机器上运行以下命令来拉取所有 Kubernetes v1.29.5 版本需要的镜像:

bash 复制代码
kubeadm config images pull --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers --kubernetes-version 1.29.5

导出镜像为 tar 文件

接下来,导出这些镜像为 tar 文件,以便能够传输它们。例如,对于一些主要的 Kubernetes 组件:

bash 复制代码
sudo ctr -n k8s.io images export kube-apiserver.tar registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver:v1.29.5
sudo ctr -n k8s.io images export kube-controller-manager.tar registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager:v1.29.5
sudo ctr -n k8s.io images export kube-scheduler.tar registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.29.5
sudo ctr -n k8s.io images export kube-proxy.tar registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy:v1.29.5
sudo ctr -n k8s.io images export coredns.tar registry.cn-hangzhou.aliyuncs.com/google_containers/coredns:v1.11.1
sudo ctr -n k8s.io images export pause.tar registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.9
sudo ctr -n k8s.io images export etcd.tar registry.cn-hangzhou.aliyuncs.com/google_containers/etcd:3.5.12-0

传输 tar 文件

使用 scp 或任何其他文件传输方法将这些 tar 文件传输到无法访问外网的服务器:

bash 复制代码
scp *.tar username@target-server-ip:/path/to/store

在目标服务器上导入镜像

在目标服务器上,使用 ctr 命令导入这些 tar 文件:

bash 复制代码
sudo ctr -n k8s.io images import kube-apiserver.tar
sudo ctr -n k8s.io images import kube-controller-manager.tar
sudo ctr -n k8s.io images import kube-scheduler.tar
sudo ctr -n k8s.io images import kube-proxy.tar
sudo ctr -n k8s.io images import coredns.tar
sudo ctr -n k8s.io images import pause.tar
sudo ctr -n k8s.io images import etcd.tar

这些步骤确保了即使在无法直接访问外部网络的环境中,也能获取并部署所需的 Kubernetes 镜像。这样做可以避开网络限制,并确保集群使用的是一致和可预测的镜像版本。

相关推荐
JAVA学习通6 分钟前
发布自己的 jar 包到 Maven 中央仓库 ( mvnrepository.com )
人工智能·docker·自然语言处理·容器·rocketmq
Cloud孙文波22 分钟前
探索Apache APISIX:动态高性能API网关
云原生·kubernetes·apisix
木亦汐丫3 小时前
Docker 镜像版本Alpine、Slim、Bookworm、Bullseye、Stretch、Jessie
运维·docker·容器·debian·alpine·slim·bullseye
中草药z5 小时前
【Docker】零基础上手:原理+Ubuntu/Windows GUI 安装 + 镜像源 / 目录优化
运维·ubuntu·docker·容器·gui·安装·cgroups
勇往直前plus5 小时前
如何利用docker部署springboot应用
spring boot·docker·容器
小北爱编程ma7 小时前
【云原生】用Prometheus Operator监听Golang服务指标,并用Granafa可视化展示
云原生
NineData7 小时前
NineData云原生智能数据管理平台新功能发布|2025年9月版
数据库·云原生·devops·ninedata·数据库迁移·数据复制·风险sql管控
博睿谷IT99_8 小时前
Linux 云计算核心技术:原理、组件与 K8s 实战部署
linux·kubernetes·云计算
有谁看见我的剑了?9 小时前
k8s storageclasses nfs-provisioner 部署
docker·容器·kubernetes
超龄超能程序猿10 小时前
Docker 镜像的导出和还原操作
运维·docker·容器