5.2. 将非受管组件用于依赖项
如果您有要与 Quay 搭配使用的现有组件,如 Postgres、Redis 或对象存储,则首先在 Quay 配置捆绑包(config.yaml
)中配置它们,然后引用 QuayRegistry
(作为 Kubernetes Secret
)中的捆绑包,同时指明哪些组件非受管。
Quay config 编辑器也可用于创建或修改现有的 config bundle,并简化更新 Kubernetes Secret
的过程,特别是多个更改。当通过配置编辑器更改 Quay 的配置并发送到 Operator 时,Quay 部署将会更新,以反映新的配置。
5.2.1. 使用现有的 Postgres 数据库 复制链接链接已复制到粘贴板!
要求:
如果您使用外部管理的 PostgreSQL 数据库,您必须手动启用 pg_trgm 扩展才能成功部署。
使用必要的数据库字段创建配置文件
config.yaml
:config.yaml:
DB_URI: postgresql://test-quay-database:postgres@test-quay-database:5432/test-quay-database
DB_URI: postgresql://test-quay-database:postgres@test-quay-database:5432/test-quay-database
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用配置文件创建 Secret:
kubectl create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
$ kubectl create secret generic --from-file config.yaml=./config.yaml config-bundle-secret
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个 QuayRegistry YAML 文件
quayregistry.yaml
,它将postgres
组件标记为非受管,并引用所创建的 Secret:quayregistry.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 按照以下部分的详细信息,部署 registry。
5.2.2. NooBaa 非受管存储 复制链接链接已复制到粘贴板!
-
在 Storage
Object Bucket Claims 的控制台中创建一个 NooBaa Object Bucket Claims。 - 检索 Object Bucket Claim Data details,包括 Access Key、Bucket Name、Endpoint (hostname)和 Secret Key。
使用 Object Bucket Claim 的信息,创建
config.yaml
配置文件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.2.3. Pod 横向自动扩展 复制链接链接已复制到粘贴板!
Pod 横向自动扩展(HPA)已添加到 Clair
、Quay
和 Mirror
pod 中,以便在负载激增过程中自动扩展。
由于 HPA 默认配置为 managed
,因此 Clair
、Quay
和 Mirror
Pod 的数量被设置为 2。这有助于避免在 Operator 更新或重新配置 Red Hat Quay 时或重新调度事件期间避免停机。
5.2.3.1. 禁用 Horizontal Pod Autoscaler 复制链接链接已复制到粘贴板!
要禁用自动扩展或创建自己的 HorizontalPodAutoscaler
,请在 QuayRegistry
实例中将组件指定为 unmanaged
。例如: