第 4 章 升级独立 Red Hat Quay 的地理复制部署
使用以下步骤升级您的 geo-replication Red Hat Quay 部署。
-
当将 geo-replication Red Hat Quay 部署升级到下一个 y-stream 版本(例如,Red Hat Quay 3.7
Red Hat Quay 3.8)或 geo-replication 部署时,您必须在升级前停止操作。 - 故障时间从一个 y-stream 版本升级到下一个版本会间歇性。
- 在升级前,强烈建议您备份 Red Hat Quay 部署。
先决条件
-
已登录到
registry.redhat.io
此流程假设您在三个(或更多)系统上运行 Red Hat Quay 服务。如需更多信息,请参阅准备 Red Hat Quay 高可用性。
获取运行 Red Hat Quay 实例的每个系统上所有 Red Hat Quay 实例的列表。
在 System A 中输入以下命令来显示 Red Hat Quay 实例:
$ sudo podman ps
输出示例
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ec16ece208c0 registry.redhat.io/quay/quay-rhel8:v{producty-n1} registry 6 minutes ago Up 6 minutes ago 0.0.0.0:80->8080/tcp, 0.0.0.0:443->8443/tcp quay01
在 System B 中输入以下命令来显示 Red Hat Quay 实例:
$ sudo podman ps
输出示例
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 7ae0c9a8b37d registry.redhat.io/quay/quay-rhel8:v{producty-n1} registry 5 minutes ago Up 2 seconds ago 0.0.0.0:82->8080/tcp, 0.0.0.0:445->8443/tcp quay02
在 System C 中输入以下命令来显示 Red Hat Quay 实例:
$ sudo podman ps
输出示例
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES e75c4aebfee9 registry.redhat.io/quay/quay-rhel8:v{producty-n1} registry 4 seconds ago Up 4 seconds ago 0.0.0.0:84->8080/tcp, 0.0.0.0:447->8443/tcp quay03
在每个系统中临时关闭所有 Red Hat Quay 实例。
在 System A 中输入以下命令来关闭 Red Hat Quay 实例:
$ sudo podman stop ec16ece208c0
在 System B 中输入以下命令来关闭 Red Hat Quay 实例:
$ sudo podman stop 7ae0c9a8b37d
在 System C 中输入以下命令来关闭 Red Hat Quay 实例:
$ sudo podman stop e75c4aebfee9
在每个系统上获取最新的 Red Hat Quay 版本,如 Red Hat Quay 3。
在 System A 中输入以下命令来获取最新的 Red Hat Quay 版本:
$ sudo podman pull registry.redhat.io/quay/quay-rhel8:{productminv}
在 System B 中输入以下命令来获取最新的 Red Hat Quay 版本:
$ sudo podman pull registry.redhat.io/quay/quay-rhel8:v{producty}
在 System C 中输入以下命令来获取最新的 Red Hat Quay 版本:
$ sudo podman pull registry.redhat.io/quay/quay-rhel8:{productminv}
在高可用性 Red Hat Quay 部署的系统 A 中,运行新镜像版本,例如 Red Hat Quay 3:
# sudo podman run --restart=always -p 443:8443 -p 80:8080 \ --sysctl net.core.somaxconn=4096 \ --name=quay01 \ -v /mnt/quay/config:/conf/stack:Z \ -v /mnt/quay/storage:/datastorage:Z \ -d registry.redhat.io/quay/quay-rhel8:{productminv}
等待新的 Red Hat Quay 容器在 System A 上完全正常工作。您可以输入以下命令检查容器的状态:
$ sudo podman ps
输出示例
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 70b9f38c3fb4 registry.redhat.io/quay/quay-rhel8:v{producty} registry 2 seconds ago Up 2 seconds ago 0.0.0.0:82->8080/tcp, 0.0.0.0:445->8443/tcp quay01
- 可选:通过进入到 Red Hat Quay UI 来确保 Red Hat Quay 已完全操作。
确保 System A 上的 Red Hat Quay 完全正常工作后,在 System B 和 System C 上运行新镜像版本。
在高可用性 Red Hat Quay 部署的 System B 中,运行新镜像版本,例如 Red Hat Quay 3:
# sudo podman run --restart=always -p 443:8443 -p 80:8080 \ --sysctl net.core.somaxconn=4096 \ --name=quay02 \ -v /mnt/quay/config:/conf/stack:Z \ -v /mnt/quay/storage:/datastorage:Z \ -d registry.redhat.io/quay/quay-rhel8:{productminv}
在高可用性 Red Hat Quay 部署的系统 C 中,运行新镜像版本,例如 Red Hat Quay 3:
# sudo podman run --restart=always -p 443:8443 -p 80:8080 \ --sysctl net.core.somaxconn=4096 \ --name=quay03 \ -v /mnt/quay/config:/conf/stack:Z \ -v /mnt/quay/storage:/datastorage:Z \ -d registry.redhat.io/quay/quay-rhel8:{productminv}
您可以输入以下命令来检查 System B 和 System C 中的容器状态:
$ sudo podman ps