Chapter 7. Red Hat Quay sizing and subscriptions
Red Hat Quay scales from proof of concept to large deployments such as Quay.io. You can use sample sizing tables and subscription guidance to plan capacity for your environment.
Scalability of Red Hat Quay is one of its key strengths, with a single code base supporting a broad spectrum of deployment sizes, including the following:
- Proof of Concept deployment on a single development machine
- Mid-size deployment of approximately 2,000 users that can serve content to dozens of Kubernetes clusters
- High-end deployment such as Quay.io that can serve thousands of Kubernetes clusters world-wide
Sizing depends on many factors, such as the number of users, images, concurrent pulls and pushes, so standard sizing recommendations are not available.
The following are the minimum requirements for systems running Red Hat Quay (per container/pod instance):
- Quay: minimum 6 GB; recommended 8 GB, 2 or more vCPUs
- Clair: recommended 2 GB RAM and 2 or more vCPUs
- Storage: recommended 30 GB
-
NooBaa: minimum 2 GB, 1 vCPU (when you select the
objectstoragecomponent in the Operator) - Clair database: minimum 5 GB required for security metadata
Stateless components of Red Hat Quay can be scaled out, but scaling increases load on stateful backend services.
7.1. Red Hat Quay sample sizings Copy linkLink copied to clipboard!
Sample Red Hat Quay sizing tables list approximate resources for proof of concept, mid-size, and high-end deployments. You can use these figures as a starting point and adjust based on your workload.
The following table shows approximate sizing for Proof of Concept, mid-size, and high-end deployments. Whether a deployment runs appropriately with the same metrics depends on many factors not shown below.
| Metric | Proof of concept | Mid-size | High End (Quay.io) |
|---|---|---|---|
| No. of Quay containers by default | 1 | 4 | 15 |
| No. of Quay containers max at scale-out | N/A | 8 | 30 |
| No. of Clair containers by default | 1 | 3 | 10 |
| No. of Clair containers max at scale-out | N/A | 6 | 15 |
| No. of mirroring pods (to mirror 100 repositories) | 1 | 5-10 | N/A |
| Database sizing | 2-4 Cores; 6-8 GB RAM; 10-20 GB disk | 4-8 Cores; 6-32 GB RAM; 100 GB - 1 TB disk | 32 cores; 244 GB; 1+ TB disk |
| Object storage backend sizing | 10-100 GB | 1 - 20 TB | 50+ TB up to PB |
| Redis cache sizing | 2 Cores; 2-4 GB RAM | 4 cores; 28 GB RAM | |
| Underlying node sizing (physical or virtual) | 4 Cores; 8 GB RAM | 4-6 Cores; 12-16 GB RAM | Quay: 13 cores; 56 GB RAM. Clair: 2 cores; 4 GB RAM |
Redis cache sizing applies only when you use Quay builders; otherwise Redis sizing is not significant.
7.2. Red Hat Quay subscription information Copy linkLink copied to clipboard!
Red Hat Quay subscriptions are based on deployments and include Standard or Premium support. You can review subscription models and entitlements when planning your registry deployment.
Deployment means an installation of a single Red Hat Quay registry using a shared data backend.
With a Red Hat Quay subscription, the following options are available:
- You can deploy any number of pods, such as Quay, Clair, Builder, and so on.
- Red Hat Quay pods can run in multiple data centers or availability zones.
- Storage and database backends can be deployed across multiple data centers or availability zones, but only as a single, shared storage backend and single, shared database backend.
- Red Hat Quay can manage content for an unlimited number of clusters or standalone servers.
- Clients can access the Red Hat Quay deployment regardless of their physical location.
- You can deploy Red Hat Quay on OpenShift Container Platform infrastructure nodes to minimize subscription requirements.
- You can run the Container Security Operator (CSO) and the Quay Bridge Operator (QBO) on your OpenShift Container Platform clusters at no additional cost.
Red Hat Quay geo-replication requires a subscription for each storage replication. The database, however, is shared.
7.3. Using Red Hat Quay with or without internal registry Copy linkLink copied to clipboard!
You can run Red Hat Quay as an external registry in front of multiple OpenShift Container Platform clusters that use internal registries, or rely on cluster-internal registries alone. You can choose the approach that fits your image governance and distribution needs.
The required coordination of Secrets and ImageStreams is automated by the Quay Bridge Operator, which can be launched from the OperatorHub for OpenShift Container Platform.