$ ./mirror-registry install \
--quayHostname <host_example_com> \
--quayRoot <example_directory_name>
Red Hat OpenShift 镜像注册表是一个小巧精简的容器注册表,您可以将其用作镜像 OpenShift Container Platform 断开连接安装所需容器镜像的目标。
如果您已经有容器镜像注册表,例如 Red Hat Quay,您可以跳过此部分,直接转到镜像 OpenShift Container Platform 镜像存储库。
OpenShift Container Platform 订阅。
已安装 Podman 3.4.2 或更高版本和 OpenSSL 的 Red Hat Enterprise Linux (RHEL) 8 和 9。
Red Hat Quay 服务的完全限定域名,必须通过 DNS 服务器解析。
目标主机上的基于密钥的 SSH 连接。本地安装会自动生成 SSH 密钥。对于远程主机,您必须生成自己的 SSH 密钥。
2 个或更多 vCPU。
8 GB RAM。
对于 OpenShift Container Platform 4.17 发行版镜像,大约需要 12 GB,或者对于 OpenShift Container Platform 4.17 发行版镜像和 OpenShift Container Platform 4.17 Red Hat Operator 镜像,大约需要 358 GB。建议每个流最多 1 TB 或更多。
这些要求基于仅使用发行版镜像和 Operator 镜像的本地测试结果。存储需求可能会根据您组织的需求而有所不同。例如,当您镜像多个 z 流时,您可能需要更多空间。您可以使用标准的Red Hat Quay 功能或适当的API 调用来删除不需要的镜像并释放空间。 |
对于 OpenShift Container Platform 的脱机部署,需要一个容器注册表来执行集群的安装。要在这样的集群上运行生产级注册表服务,您必须创建一个单独的注册表部署来安装第一个集群。Red Hat OpenShift 镜像注册表解决了此需求,并包含在每个 OpenShift 订阅中。它可在OpenShift 控制台的**下载**页面上下载。
Red Hat OpenShift 镜像注册表允许用户使用mirror-registry
命令行界面 (CLI) 工具安装 Red Hat Quay 及其所需组件的小型版本。Red Hat OpenShift 镜像注册表使用预配置的本地存储和本地数据库自动部署。它还包括自动生成的用户名凭据和访问权限,只需一组输入即可,无需其他配置选项即可开始使用。
Red Hat OpenShift 镜像注册表提供预定的网络配置,并在成功后报告已部署组件的凭据和访问 URL。还提供了一组有限的可选配置输入,例如完全限定域名 (FQDN) 服务、超级用户名称和密码以及自定义 TLS 证书。这为用户提供了一个容器注册表,以便他们在受限网络环境中运行 OpenShift Container Platform 时可以轻松创建所有 OpenShift Container Platform 发行版内容的脱机镜像。
如果安装环境中已存在其他容器注册表,则Red Hat OpenShift镜像注册表的使用是可选的。
以下限制适用于Red Hat OpenShift镜像注册表
Red Hat OpenShift镜像注册表不是高可用性注册表,仅支持本地文件系统存储。它并非旨在替代Red Hat Quay或OpenShift Container Platform的内部镜像注册表。
Red Hat OpenShift镜像注册表并非旨在替代Red Hat Quay的生产部署。
Red Hat OpenShift镜像注册表仅支持托管安装断开连接的OpenShift Container Platform集群所需的镜像,例如发行版镜像或Red Hat Operator镜像。它使用Red Hat Enterprise Linux (RHEL)机器上的本地存储,RHEL支持的存储也受Red Hat OpenShift镜像注册表支持。
由于Red Hat OpenShift镜像注册表使用本地存储,因此您应注意镜像镜像时消耗的存储使用情况,并使用Red Hat Quay的垃圾回收功能来减轻潜在问题。有关此功能的更多信息,请参见“Red Hat Quay垃圾回收”。 |
对于出于引导目的而推送到Red Hat OpenShift镜像注册表的Red Hat产品镜像的支持,涵盖了每个相应产品的有效订阅。可在Red Hat OpenShift自管理规模和订阅指南中找到进一步启用引导体验的例外情况列表。
客户构建的内容不应由Red Hat OpenShift镜像注册表托管。
不建议将Red Hat OpenShift镜像注册表与多个集群一起使用,因为多个集群在更新集群群时可能会创建一个单点故障。建议利用Red Hat OpenShift镜像注册表来安装可以托管生产级高可用性注册表(例如Red Hat Quay)的集群,该注册表可以为其他集群提供OpenShift Container Platform内容。
此过程说明如何使用mirror-registry
安装程序工具在本地主机上安装Red Hat OpenShift镜像注册表。通过这样做,用户可以创建一个在端口443上运行的本地主机注册表,用于存储OpenShift Container Platform镜像的镜像。
使用 |
从OpenShift控制台**下载**页面下载Red Hat OpenShift镜像注册表最新版本的mirror-registry.tar.gz
软件包。
使用mirror-registry
工具,使用您当前的用户帐户在本地主机上安装Red Hat OpenShift镜像注册表。有关可用标志的完整列表,请参见“Red Hat OpenShift镜像注册表标志”。
$ ./mirror-registry install \
--quayHostname <host_example_com> \
--quayRoot <example_directory_name>
使用安装过程中生成的用户名和密码登录注册表,运行以下命令:
$ podman login -u init \
-p <password> \
<host_example_com>:8443> \
--tls-verify=false (1)
1 | 您可以通过将系统配置为信任生成的rootCA证书来避免运行--tls-verify=false 。有关更多信息,请参见“使用SSL保护与Red Hat Quay的连接”和“配置系统以信任证书颁发机构”。 |
安装后,您也可以通过访问 |
登录后,您可以镜像OpenShift Container Platform镜像。根据您的需求,请参阅本文档的“镜像OpenShift Container Platform镜像存储库”或“镜像与断开连接的集群一起使用的Operator目录”部分。
如果由于存储层问题而导致Red Hat OpenShift镜像注册表存储的镜像出现问题,您可以重新镜像OpenShift Container Platform镜像,或在更稳定的存储上重新安装镜像注册表。 |
此过程说明如何使用upgrade
命令从本地主机更新Red Hat OpenShift镜像注册表。更新到最新版本可确保获得新功能、错误修复和安全漏洞修复。
从版本1升级到版本2时,请注意以下约束条件:
|
您已在本地主机上安装了Red Hat OpenShift镜像注册表。
如果您正在将Red Hat OpenShift镜像注册表从1.3升级到2.y,并且您的安装目录是默认的/etc/quay-install
,则可以输入以下命令:
$ sudo ./mirror-registry upgrade -v
|
如果您正在将Red Hat OpenShift镜像注册表从1.3升级到2.y,并且在1.y部署中使用了自定义的quay配置和存储目录,则必须传入--quayRoot
和--quayStorage
标志。例如:
$ sudo ./mirror-registry upgrade --quayHostname <host_example_com> --quayRoot <example_directory_name> --quayStorage <example_directory_name>/quay-storage -v
如果您正在将Red Hat OpenShift镜像注册表从1.3升级到2.y,并且想要指定自定义的SQLite存储路径,则必须传入--sqliteStorage
标志,例如:
$ sudo ./mirror-registry upgrade --sqliteStorage <example_directory_name>/sqlite-storage -v
此过程说明如何使用mirror-registry
工具在远程主机上安装Red Hat OpenShift镜像注册表。通过这样做,用户可以创建一个注册表来保存OpenShift Container Platform镜像的镜像。
使用 |
从OpenShift控制台**下载**页面下载Red Hat OpenShift镜像注册表最新版本的mirror-registry.tar.gz
软件包。
使用mirror-registry
工具,使用您当前的用户帐户在本地主机上安装Red Hat OpenShift镜像注册表。有关可用标志的完整列表,请参见“Red Hat OpenShift镜像注册表标志”。
$ ./mirror-registry install -v \
--targetHostname <host_example_com> \
--targetUsername <example_user> \
-k ~/.ssh/my_ssh_key \
--quayHostname <host_example_com> \
--quayRoot <example_directory_name>
使用安装过程中生成的用户名和密码,运行以下命令登录镜像注册表:
$ podman login -u init \
-p <password> \
<host_example_com>:8443> \
--tls-verify=false (1)
1 | 您可以通过将系统配置为信任生成的rootCA证书来避免运行--tls-verify=false 。有关更多信息,请参见“使用SSL保护与Red Hat Quay的连接”和“配置系统以信任证书颁发机构”。 |
安装后,您也可以通过访问 |
登录后,您可以镜像OpenShift Container Platform镜像。根据您的需求,请参阅本文档的“镜像OpenShift Container Platform镜像存储库”或“镜像与断开连接的集群一起使用的Operator目录”部分。
如果由于存储层问题而导致Red Hat OpenShift镜像注册表存储的镜像出现问题,您可以重新镜像OpenShift Container Platform镜像,或在更稳定的存储上重新安装镜像注册表。 |
此过程说明如何使用 upgrade
命令从远程主机更新 *Red Hat OpenShift 的镜像注册表*。更新到最新版本可确保修复错误并解决安全漏洞。
从版本1升级到版本2时,请注意以下约束条件:
|
您已在远程主机上安装了 *Red Hat OpenShift 的镜像注册表*。
要从远程主机升级 *Red Hat OpenShift 的镜像注册表*,请输入以下命令:
$ ./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key
使用 |
如果您正在将Red Hat OpenShift镜像注册表从1.3升级到2.y,并且想要指定自定义的SQLite存储路径,则必须传入--sqliteStorage
标志,例如:
$ ./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key --sqliteStorage <example_directory_name>/quay-storage
在某些情况下,您可能需要更新 *Red Hat OpenShift 的镜像注册表* 的 SSL/TLS 证书。这在以下情况下很有用:
如果您要替换当前的 *Red Hat OpenShift 的镜像注册表* 证书。
如果您使用与之前的 *Red Hat OpenShift 的镜像注册表* 安装相同的证书。
如果您定期更新 *Red Hat OpenShift 的镜像注册表* 证书。
请使用以下步骤替换 *Red Hat OpenShift 的镜像注册表* SSL/TLS 证书。
您已从 OpenShift 控制台**下载** 页面下载了 ./mirror-registry
二进制文件。
输入以下命令安装 *Red Hat OpenShift 的镜像注册表*:
$ ./mirror-registry install \
--quayHostname <host_example_com> \
--quayRoot <example_directory_name>
这会将 *Red Hat OpenShift 的镜像注册表* 安装到 $HOME/quay-install
目录。
准备一个新的证书颁发机构 (CA) 捆绑包并生成新的 ssl.key
和 ssl.crt
密钥文件。更多信息,请参见 使用 SSL/TLS 保护与 Red Hat Quay 的连接。
为 /$HOME/quay-install
分配一个环境变量,例如 QUAY
,请输入以下命令:
$ export QUAY=/$HOME/quay-install
通过输入以下命令将新的 ssl.crt
文件复制到 /$HOME/quay-install
目录:
$ cp ~/ssl.crt $QUAY/quay-config
通过输入以下命令将新的 ssl.key
文件复制到 /$HOME/quay-install
目录:
$ cp ~/ssl.key $QUAY/quay-config
通过输入以下命令重新启动 quay-app
应用程序 pod:
$ systemctl restart quay-app
您可以通过运行以下命令从本地主机卸载 *Red Hat OpenShift 的镜像注册表*:
$ ./mirror-registry uninstall -v \
--quayRoot <example_directory_name>
|
以下是 *Red Hat OpenShift 的镜像注册表* 可用的标志:
标志 | 描述 |
---|---|
|
一个布尔值,用于禁用交互式提示。如果设置为 |
|
在 Quay 安装过程中创建的 init 用户的密码。必须至少八个字符,并且不包含空格。 |
|
显示初始用户的用户名。如果未指定,则默认为 |
|
允许用户禁用颜色序列并在运行安装、卸载和升级命令时将其传播到 Ansible。 |
|
客户端将用于联系注册表的镜像注册表的完全限定域名。等同于 Quay |
|
保存 Quay 持久存储数据的文件夹。默认为 |
|
保存容器镜像层和配置数据的目录,包括 |
|
保存 SQLite 数据库数据的文件夹。如果未指定,则默认为 |
|
您的 SSH 身份密钥的路径。如果未指定,则默认为 |
|
SSL/TLS 公钥/证书的路径。默认为 |
|
跳过针对 |
|
用于 HTTPS 通信的 SSL/TLS 私钥的路径。默认为 |
|
要安装 Quay 的目标的主机名。如果未指定,则默认为 |
|
将在目标主机上用于 SSH 的用户。如果未指定,则默认为 |
|
显示调试日志和 Ansible 剧本输出。 |
|
显示 *Red Hat OpenShift 的镜像注册表* 的版本。 |
如果系统的公共 DNS 名称与本地主机名不同,则必须修改 --quayHostname
。此外,--quayHostname
标志不支持使用 IP 地址进行安装。必须使用主机名进行安装。
当镜像注册表设置在代理后面并且公开的主机名与内部 Quay 主机名不同时,使用 --sslCheckSkip
。当用户不希望在安装期间针对提供的 Quay 主机名验证证书时,也可以使用它。
*Red Hat OpenShift 的镜像注册表* 是一个小型且精简的容器注册表,您可以将其用作镜像 OpenShift Container Platform 断开连接安装所需的容器镜像的目标。
这些发行说明跟踪 OpenShift Container Platform 中 *Red Hat OpenShift 的镜像注册表* 的开发情况。
以下各节详细介绍了 Red Hat OpenShift 各个 2.0 版本的镜像仓库。
发布日期:2025年1月13日
Red Hat OpenShift 镜像仓库现已支持 Red Hat Quay 3.12.5。
Red Hat OpenShift 镜像仓库的以下安全公告可用:
发布日期:2025年1月6日
Red Hat OpenShift 镜像仓库现已支持 Red Hat Quay 3.12.4。
Red Hat OpenShift 镜像仓库的以下安全公告可用:
发布日期:2024年11月25日
Red Hat OpenShift 镜像仓库现已支持 Red Hat Quay 3.12.3。
Red Hat OpenShift 镜像仓库的以下安全公告可用:
发布日期:2024年10月31日
Red Hat OpenShift 镜像仓库现已支持 Red Hat Quay 3.12.2。
Red Hat OpenShift 镜像仓库的以下安全公告可用:
发布日期:2024年9月26日
Red Hat OpenShift 镜像仓库现已支持 Red Hat Quay 3.12.1。
Red Hat OpenShift 镜像仓库的以下安全公告可用:
要查看Red Hat OpenShift 镜像仓库 1.3 版本的发行说明,请参阅 Red Hat OpenShift 1.3 版本镜像仓库发行说明。
要查看Red Hat OpenShift 镜像仓库 1.2 版本的发行说明,请参阅 Red Hat OpenShift 1.2 版本镜像仓库发行说明。
要查看Red Hat OpenShift 镜像仓库 1.1 版本的发行说明,请参阅 Red Hat OpenShift 1.1 版本镜像仓库发行说明。
为了帮助您排除Red Hat OpenShift 镜像仓库的故障,您可以收集镜像仓库安装的 systemd 服务日志。已安装以下服务:
quay-app.service
quay-postgres.service
quay-redis.service
quay-pod.service
您已安装Red Hat OpenShift 镜像仓库。
如果您以 root 权限安装了Red Hat OpenShift 镜像仓库,则可以通过输入以下命令来获取其 systemd 服务的状态信息:
$ sudo systemctl status <service>
如果您以标准用户身份安装了Red Hat OpenShift 镜像仓库,则可以通过输入以下命令来获取其 systemd 服务的状态信息:
$ systemctl --user status <service>