准备外部平台镜像 Registry
对于新的生产部署,你可以使用客户自行管理的外部镜像 Registry 作为 Core、受管集群和 Extensions 的中央镜像源。在启动安装程序之前,Registry 必须包含完整的目标版本负载。
当选择外部 Registry 时,安装程序不会部署平台内置 Registry,也不会将缺失的镜像或软件包复制到外部 Registry。在运行 setup.sh 之前,请完成本页上的两种上传模式。
了解 Registry 角色
以下 Registry 角色彼此独立:
本页配置的是 组件和集群使用的平台镜像源。它不配置应用工作负载的镜像服务。
平台内置 Registry 仍然支持现有环境和非生产评估。本页不描述从内置 Registry 到外部 Registry 的在线迁移。
Registry 要求
必需能力和访问权限
在上传目标版本负载之前,请确认 Registry:
- 支持 Core Package 工具执行的标准容器镜像 push 和 pull 操作。
- 使用如下形式的地址:
<host-or-IP>[:port],例如registry.example.com:5000。在安装程序的 Registry 地址中不要包含http://或https://。 - 可通过安装节点以及每个拉取平台镜像的集群节点所需的防火墙、代理和网络路由访问。
- 提供可创建或更新所需仓库路径并推送镜像的上传凭据。传递给
setup.sh的凭据必须具有 pull 权限。上传和 pull 凭据可以属于不同的账户;在对setup.sh进行身份验证时,请同时提供其用户名和密码。 - 具有足够的可用存储空间,以容纳你上传的目标版本 Core 和 Extension 负载。
生产环境建议
对于生产 Registry:
- 使用 HTTPS,并确保其证书对于 Registry 地址有效。确保安装节点以及每个拉取平台镜像的集群节点都信任签发该证书的 CA。
- 使用稳定的 DNS 名称,并确保安装节点和所有集群节点都能解析。
- 为每一种所需 CPU 架构以及用于升级、回滚和节点恢复时保留的版本规划容量。
- 根据你的环境提供可用性、监控、备份和恢复能力。当新 Pod 启动、节点被替换、创建或升级集群,以及安装或升级 Extensions 时,都需要 Registry 可用。
- 配置保留策略时,不要删除仍被已安装的平台版本、集群或 Extensions 引用的 manifest 或 digest。
会使用外部 Registry,但不会安装、升级、备份、监控或修复它。对于这些操作,请遵循你的 Registry 供应商提供的管理文档。
准备目标版本负载
使用与你将要安装的 Distribution Version 和 CPU 架构完全匹配的 Core Package。不要重复使用其他版本或架构的负载。
-
完成 下载,解压 Core Package,并切换到其
installer/目录。 -
按照 安装 中的说明,将所需的 Aligned Extension 软件包复制到
plugins/中。all上传模式会处理当前位于此目录中的软件包。 -
在当前 shell 中设置 Registry 地址和上传凭据。读取密码时不要将其写入 shell history:
对于允许匿名 push 的 Registry,请将
REGISTRY_USERNAME和REGISTRY_PASSWORD都设置为空值。 -
从解压后的
installer/目录运行两种上传模式。你可以按任意顺序执行这些命令,但两者都必须成功完成:这两种模式有重叠,但彼此都不会替代对方:
all会上传产品镜像、cluster version operator 镜像,以及当前plugins/中的每个*.tgz软件包。它不会上传安装程序工件。necessary会上传产品镜像、cluster version operator 镜像、安装程序工件,以及创建global集群所需的 bootstrap plugins。它不会上传plugins/中的所有软件包。
-
在 Registry 管理界面或 API 中,确认新上传的仓库和 manifest 已存在,并且不会立即被清理。
故障排除
下一步
在两种上传模式都成功完成且 Registry 中包含目标负载后,继续执行 安装。