当前位置: 首页 > article >正文

准确--k8s离线导入镜像

一、镜像操作流程

1. 查看有哪些镜像
  • 命令
    ctr -n k8s.io images ls
    
  • 说明:列出 containerdk8s.io 命名空间下所有的镜像,确认是否有目标镜像(如 docker.io/rancher/rancher-agent:v2.8.0)。
2. 导出镜像
  • 命令
    ctr -n k8s.io images export rancher-agent-v2.8.0.tar docker.io/rancher/rancher-agent:v2.8.0
    
  • 说明:将镜像 docker.io/rancher/rancher-agent:v2.8.0 导出为文件 rancher-agent-v2.8.0.tar。执行后可以用 ls -lh rancher-agent-v2.8.0.tar 检查文件是否存在。
3. 传输镜像到其他服务器
  • 命令
    scp rancher-agent-v2.8.0.tar root@192.168.0.103:/root
    
  • 说明:通过 scp 将导出的镜像文件传输到目标服务器(IP 为 192.168.0.103)的 /root 目录。确保网络可达且目标服务器有足够空间。
4. 导入镜像
  • 命令(在目标服务器 192.168.0.103 上执行):
    ctr -n k8s.io images import /root/rancher-agent-v2.8.0.tar
    
  • 说明:在目标服务器上将镜像文件导入 containerd。完成后可以用 ctr -n k8s.io images ls 验证镜像是否正确导入。

二、验证 containerd 配置

1. 检查配置文件
  • 文件路径/etc/containerd/config.toml
  • 操作
    • 编辑文件:
      vi /etc/containerd/config.toml
      
    • 检查是否包含镜像仓库配置。
2. 配置镜像仓库(可选)
  • 示例配置(如果需要添加 Docker Hub 镜像仓库):
    [plugins."io.containerd.grpc.v1.cri".registry.mirrors]
      [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
        endpoint = ["https://registry-1.docker.io"]
    
  • 说明:确保 containerd 可以访问 docker.io,如有网络限制,可在此添加镜像加速器地址。
3. 配置私有仓库认证(可选)
  • 示例配置(如果 Rancher 使用私有仓库):
    [plugins."io.containerd.grpc.v1.cri".registry.configs]
      [plugins."io.containerd.grpc.v1.cri".registry.configs."registry.example.com".auth]
        username = "your-username"
        password = "your-password"
    
  • 说明:替换 registry.example.com 为实际私有仓库地址,并填入正确的用户名和密码。
4. 重启 containerd
  • 命令
    systemctl restart containerd
    
  • 说明:修改配置后重启 containerd 使配置生效。可以用 systemctl status containerd 检查服务状态。

执行顺序建议

  1. 先完成镜像操作流程(步骤 1-4),解决当前 ImagePullBackOff 问题。
  2. 再验证 containerd 配置,确保未来镜像拉取不会再次失败(尤其是有网络或认证限制的情况下)。

验证结果

  • 镜像导入后,检查目标服务器上的 Pod 状态:
    kubectl get pod -n cattle-system -o wide
    
  • 确认 Deployment 是否恢复正常:
    kubectl get deployment cattle-cluster-agent -n cattle-system
    

如果有任何步骤失败或需要进一步调试,请提供相关输出,我会继续协助你!


http://www.kler.cn/a/571509.html

相关文章:

  • 【商城实战(2)】商城架构设计:从底层逻辑到技术实现
  • Docker 深度解析:适合零基础用户的详解
  • 【机器学习】应用梯度下降法训练线性回归算法模型
  • vue2(笔记)5.0 vuex
  • 【全栈开发】从0开始搭建一个图书管理系统【二】前端搭建
  • ‘QDesktopWidget::availableGeometry‘: Use QGuiApplication::screens()
  • Vue3项目如何使用TailWind CSS保姆级教程
  • Linux基础开发工具—软件安装器yum。人类世界软件安装器一夜消失,而我却会用yum
  • 笔记:代码随想录算法训练营day36:LeetCode1049. 最后一块石头的重量 II、494. 目标和、474.一和零
  • Python 入门总结与实践:构建你的第一个程序
  • 深度集成DeepSeek,智问BI@GPT引领商业智能“深度思考“革命
  • 复试准备日常
  • tidb vs starrocks 资源估算pk
  • 【Redis】常用命令汇总
  • 拆一拆吉利普及高阶智驾的盲盒
  • Vue 3 新特性:对比 Vue 2 的重大升级
  • 坐标变换介绍与机器人九点标定的原理
  • 解交互题时如何规划交互流程
  • 源码编译安装httpd
  • DP——更小的数