!/bin/bash

admin

CentOS 7 下如何配置阿里云 K8s 镜像库:保姆级教程

在搭建 Kubernetes (K8s) 集群的过程中,许多开发者都会遇到一个棘手的问题:在国内环境下,直接从 Docker Hub 拉取官方 K8s 镜像速度极慢,甚至导致安装失败,为了解决这一痛点,使用阿里云提供的镜像加速服务是最佳方案。

本文将详细介绍如何在 CentOS 7 系统中配置阿里云容器镜像服务,从而加速 K8s 镜像的拉取。

!/bin/bash

准备工作:获取阿里云加速器地址

你需要拥有一个阿里云账号,并开通容器镜像服务(ACR)。

  1. 登录 阿里云控制台
  2. 在左侧导航栏选择 镜像工具 -> 镜像加速器
  3. 在“CentOS”或“Ubuntu”板块中,你会看到一个专属的加速地址,格式通常类似于:xxxxxx.mirror.aliyuncs.com

注意:请务必复制你账号下生成的专属地址,不要使用公开的通用地址。

配置 Docker 镜像加速器

阿里云的 K8s 镜像加速本质上是配置 Docker 的镜像仓库代理,以下是具体操作步骤:

编辑 Docker 配置文件 在 CentOS 7 上,Docker 的配置文件位于 /etc/docker/daemon.json,如果该文件不存在,请先创建它。

sudo vi /etc/docker/daemon.json

添加配置内容 在文件中写入以下 JSON 格式的配置(将 YOUR_ID.mirror.aliyuncs.com 替换为你刚才获取的专属地址):

{
  "registry-mirrors": ["https://YOUR_ID.mirror.aliyuncs.com"]
}

重启 Docker 服务 保存并退出编辑器后,需要让配置生效:

sudo systemctl daemon-reload
sudo systemctl restart docker

验证配置 执行以下命令,查看输出中是否包含你刚才配置的加速器地址:

docker info | grep -A 10 "Registry Mirrors"

如果看到了你的加速器地址,说明 Docker 配置成功。

在 K8s 安装中使用阿里云镜像

即使配置了 Docker 加速器,在执行 kubeadm initkubeadm join 时,K8s 默认仍会去 Docker Hub 拉取镜像,为了彻底解决问题,我们需要在安装命令中指定阿里云的 K8s 镜像仓库。

阿里云提供了一个公共的 K8s 镜像仓库:registry.aliyuncs.com/google_containers,我们将使用这个仓库来替代默认的 k8s.gcr.io

列出所需镜像(可选) 如果不清楚需要拉取哪些镜像,可以运行:

kubeadm config images list --kubernetes-version v1.23.0

(注:请将 v1.23.0 替换为你实际需要的版本)

拉取镜像(手动拉取) 你可以通过以下脚本批量拉取阿里云镜像:


K8S_VERSION=v1.23.0
文章版权声明:除非注明,否则均为xmsdn原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码