|
1 | 1 | :_content-type: REFERENCE |
2 | 2 | [id="operator-components-managed"] |
3 | | -= Using managed components |
4 | | - |
5 | | -Unless your `QuayRegistry` custom resource specifies otherwise, the {productname} Operator uses defaults for the following managed components: |
6 | | - |
7 | | -* **quay:** Holds overrides for deployment of {productname-ocp}, for example, environment variables and number of replicas. This component is new as of {productname} 3.7 and cannot be set to unmanaged. |
8 | | -
|
9 | | -* **postgres:** For storing the registry metadata, |
10 | | -ifeval::["{productname}" == "Red Hat Quay"] |
11 | | -As of {productname} 3.9, uses a version of PostgreSQL 13 from link:https://www.softwarecollections.org/en/[Software Collections]. |
12 | | -+ |
13 | | -[NOTE] |
14 | | -==== |
15 | | -When upgrading from {productname} 3.8 -> 3.9, the Operator automatically handles upgrading PostgreSQL 10 to PostgreSQL 13. This upgrade is required. PostgreSQL 10 had its final release on November 10, 2022 and is no longer supported. |
16 | | -==== |
17 | | -endif::[] |
18 | | -ifeval::["{productname}" == "Project Quay"] |
19 | | -As of {productname} 3.9, uses an upstream (CentOS) version of PostgreSQL 13. |
20 | | -endif::[] |
21 | | -* **clair:** Provides image vulnerability scanning. |
22 | | -
|
23 | | -* **redis:** Stores live builder logs and the {productname} tutorial. Also includes the locking mechanism that is required for garbage collection. |
24 | | -
|
25 | | -* **horizontalpodautoscaler:** Adjusts the number of `Quay` pods depending on memory/cpu consumption. |
26 | | -
|
27 | | -* **objectstorage:** For storing image layer blobs, utilizes the `ObjectBucketClaim` Kubernetes API which is provided by Noobaa or {odf}. |
28 | | -
|
29 | | -* **route:** Provides an external entrypoint to the {productname} registry from outside of {ocp}. |
30 | | -
|
31 | | -* **mirror:** Configures repository mirror workers to support optional repository mirroring. |
32 | | -
|
33 | | -* **monitoring:** Features include a Grafana dashboard, access to individual metrics, and notifications for frequently restarting `Quay` pods. |
34 | | -
|
35 | | -* **tls:** Configures whether {productname} or {ocp} handles SSL/TLS. |
36 | | -
|
37 | | -* **clairpostgres:** Configures a managed Clair database. This is a separate database than the PostgreSQL database used to deploy {productname}. |
38 | | -
|
39 | | -The {productname} Operator handles any required configuration and installation work needed for {productname} to use the managed components. If the opinionated deployment performed by the {productname} Operator is unsuitable for your environment, you can provide the {productname} Operator with `unmanaged` resources, or overrides, as described in the following sections. |
| 3 | += Managed components |
| 4 | + |
| 5 | +By default, the Operator handles all required configuration and installation needed for {productname}'s managed components. |
| 6 | +
|
| 7 | +If the opinionated deployment performed by the {productname} Operator is unsuitable for your environment, you can provide the {productname} Operator with `unmanaged` resources, or overrides, as described in link:https://docs.redhat.com/en/documentation/red_hat_quay/{producty}/html-single/deploying_the_red_hat_quay_operator_on_openshift_container_platform/index#operator-components-managed[Using unmanaged components]. |
| 8 | +
|
| 9 | +.QuayRegistry required fields |
| 10 | +[cols="2a,1a,2a",options="header"] |
| 11 | +|=== |
| 12 | +| Field | Type | Description |
| 13 | +
|
| 14 | +|`quay` |Boolean | Holds overrides for deployment of {productname-ocp}, such as environment variables and number of replicas. This component cannot be set to unmanaged (`managed: false`). |
| 15 | +|`postgres` |Boolean | Used for storing registry metadata. Currently, PostgreSQL version 13 is used. |
| 16 | +|`clair` |Boolean | Provides image vulnerability scanning. |
| 17 | +|`redis` |Boolean | Storage live builder logs and the locking mechanism that is required for garbage collection. |
| 18 | +|`horizontalpodautoscaler` |Boolean | Adjusts the number of `quay` pods depending on your memory and CPU consumption. |
| 19 | +|`objectstorage` |Boolean | Stores image layer blobs. When set to `managed: true`, utilizes the `ObjectBucketClaim` Kubernetes API which is provided by NooBaa or {odf}. Setting this field to `managed: false` requires you to provide your own object storage. |
| 20 | +|`route` |Boolean | Provides an external entrypoint to the {productname} registry from outside of {ocp}. |
| 21 | +|`mirror` |Boolean | Configures repository mirror workers to support optional repository mirroring. |
| 22 | +|`monitoring` |Boolean | Features include a Grafana dashboard, access to individual metrics, and notifications for frequently restarting `quay` pods. |
| 23 | +|`tls` |Boolean | Configures whether SSL/TLS is automatically handled. |
| 24 | +|`clairpostgres` |Boolean | Configures a managed Clair database. This is a separate database than the PostgreSQL database that is used to deploy {productname}. |
| 25 | +
|
| 26 | +|=== |
| 27 | +
|
| 28 | +The following example shows you the default configuration for the `QuayRegistry` custom resource provided by the {productname} Operator. It is available on the {ocp} web console. |
| 29 | +
|
| 30 | +.Example `QuayRegistry` custom resource |
| 31 | +[source,yaml] |
| 32 | +---- |
| 33 | +apiVersion: quay.redhat.com/v1 |
| 34 | +kind: QuayRegistry |
| 35 | +metadata: |
| 36 | + name: <example_registry> |
| 37 | + namespace: <namespace> |
| 38 | + spec: |
| 39 | + configBundleSecret: config-bundle-secret |
| 40 | + components: |
| 41 | + - kind: quay |
| 42 | + managed: true |
| 43 | + - kind: postgres |
| 44 | + managed: true |
| 45 | + - kind: clair |
| 46 | + managed: true |
| 47 | + - kind: redis |
| 48 | + managed: true |
| 49 | + - kind: horizontalpodautoscaler |
| 50 | + managed: true |
| 51 | + - kind: objectstorage |
| 52 | + managed: true |
| 53 | + - kind: route |
| 54 | + managed: true |
| 55 | + - kind: mirror |
| 56 | + managed: true |
| 57 | + - kind: monitoring |
| 58 | + managed: true |
| 59 | + - kind: tls |
| 60 | + managed: true |
| 61 | + - kind: clairpostgres |
| 62 | + managed: true |
| 63 | +---- |
0 commit comments