6.2. 配置外部 Redis
使用本节中的内容设置外部 Redis 部署。
6.2.1. 使用非受管 Redis 数据库 复制链接链接已复制到粘贴板!
使用以下步骤设置外部 Redis 数据库。
流程
使用以下 Redis 字段创建
config.yaml文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令使用配置文件创建 secret:
oc create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
$ oc create secret generic --from-file config.yaml=./config.yaml config-bundle-secretCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个
quayregistry.yaml文件,将 Redis 组件设置为非受管组件并引用所创建的 secret:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 部署 Red Hat Quay registry。
6.2.2. 使用非受管 Horizontal Pod Autoscaler 复制链接链接已复制到粘贴板!
Pod 横向自动扩展(HPA)现在包含在 Clair、Quay 和 Mirror pod 中,以便它们现在会在负载激增过程中自动扩展。
由于 HPA 默认配置为 managed,因此 Clair、Quay 和 Mirror pod 的数量被设置为 2。这有助于避免在通过 Operator 或重新调度事件更新或重新配置 Red Hat Quay 时造成停机。
禁用 HorizontalPodAutoscaler 组件并尝试编辑 HPA 资源本身并增加 minReplicas 字段的值时,存在一个已知问题。当尝试此设置时,Quay 应用程序 pod 由非受管 HPA 扩展,并在 60 秒后扩展,副本数由 Red Hat Quay Operator 协调。因此,HPA pod 会持续创建,然后由 Operator 删除。
要解决这个问题,您应该将 Red Hat Quay 部署升级到至少版本 3.12.5 或 3.13.1,然后使用以下示例来避免问题。
此问题将在 Red Hat Quay 以后的版本中解决。如需更多信息,请参阅 PROJQUAY-6474。
6.2.2.1. 禁用 Horizontal Pod Autoscaler 复制链接链接已复制到粘贴板!
要禁用自动扩展或创建自己的 HorizontalPodAutoscaler 组件,请在 QuayRegistry 自定义资源定义中将组件指定为 unmanaged。要避免上面记录的已知问题,您必须修改 QuayRegistry CRD 对象,并将 quay、clair 和 mirror 组件的副本等于 null。
流程
编辑
QuayRegistryCRD,为quay组件包含以下replicas: null:oc edit quayregistry <quay_registry_name> -n <quay_namespace>
$ oc edit quayregistry <quay_registry_name> -n <quay_namespace>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 在
QuayRegistryCRD 中设置replicas: null后,可能会生成新的副本集,因为Quay应用程序的部署清单被replicas: 1更改。
验证
创建自定义
HorizontalPodAutoscalersCRD,并将minReplicas量增加到更高的值,用于考试pe,3:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令来确保
QuayRegistry应用程序成功启动:oc get pod | grep quay-app
$ oc get pod | grep quay-appCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
quay-registry-quay-app-5b8fd49d6b-7wvbk 1/1 Running 0 34m quay-registry-quay-app-5b8fd49d6b-jslq9 1/1 Running 0 3m42s quay-registry-quay-app-5b8fd49d6b-pskpz 1/1 Running 0 43m quay-registry-quay-app-upgrade-llctl 0/1 Completed 0 51m
quay-registry-quay-app-5b8fd49d6b-7wvbk 1/1 Running 0 34m quay-registry-quay-app-5b8fd49d6b-jslq9 1/1 Running 0 3m42s quay-registry-quay-app-5b8fd49d6b-pskpz 1/1 Running 0 43m quay-registry-quay-app-upgrade-llctl 0/1 Completed 0 51mCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令来确保
HorizontalPodAutoscalers可以成功启动:oc get hpa
$ oc get hpaCopy to Clipboard Copied! Toggle word wrap Toggle overflow NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE quay-registry-quay-app Deployment/quay-registry-quay-app 67%/90%, 54%/90% 3 20 3 51m
NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE quay-registry-quay-app Deployment/quay-registry-quay-app 67%/90%, 54%/90% 3 20 3 51mCopy to Clipboard Copied! Toggle word wrap Toggle overflow
6.2.3. 禁用 Route 组件 复制链接链接已复制到粘贴板!
使用以下步骤防止 Red Hat Quay Operator 创建路由。
步骤
在
quayregistry.yaml文件中将组件设置为managed: false:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
config.yaml文件,以指定 Red Hat Quay 处理 SSL/TLS。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果没有正确配置非受管路由,则会返回以下错误:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
禁用默认路由意味着您现在负责 创建路由、Service 或 Ingress,以访问 Red Hat Quay 实例。此外,您使用的任何 DNS 都必须与 Red Hat Quay 配置中的 SERVER_HOSTNAME 匹配。
6.2.4. 禁用监控组件 复制链接链接已复制到粘贴板!
如果您在单一命名空间中安装 Red Hat Quay Operator,则监控组件会自动设置为 managed: false。使用以下参考来显式禁用监控。
Unmanaged 监控
当在单一命名空间中安装 Red Hat Quay Operator 时,无法启用监控。
6.2.5. 禁用镜像组件 复制链接链接已复制到粘贴板!
要禁用镜像,请使用以下 YAML 配置:
非受管镜像示例 YAML 配置示例