第 2 章 准备 Red Hat Quay (高可用性)
注意
此流程详细介绍了如何设置 Red Hat Quay 的高可用性、生产级部署的指导。
2.1. 先决条件
在开始 Red Hat Quay 高可用性部署前,您需要了解以下内容:
Postgres 或 MySQL 可用于提供数据库服务。Postgres 被在此处选择为数据库,因为它包含了支持 Clair 安全扫描所需的功能。其他选项包括:
- Crunchy Data PostgreSQL Operator:虽然不受红帽直接支持,但 CrunchDB Operator 可从 Crunchy Data for Red Hat Quay 提供。如果您有此路由,您应该具有 Crunchy Data 的支持合同,并直接与它们合作,以便与 Operator 及其数据库相关的使用指导或问题。
- 如果您的组织已具有高可用性(HA)数据库,您可以将该数据库用于 Red Hat Quay。如需有关支持第三方数据库和其他组件的详细信息,请参阅 Red Hat Quay 支持政策。
Ceph 对象网关(也称为 RADOS 网关)是产品的一个示例,可提供 Red Hat Quay 所需的对象存储。如果您希望 Red Hat Quay 设置进行 geo-replication,则需要 Ceph 对象网关或其他支持的对象存储。对于云安装,您可以使用以下任何云对象存储:
- Amazon S3(请参阅 S3 IAM Bucket Policy )以了解有关为 Quay 配置 S3 存储桶策略的详情。)
- Azure Blob Storage
- Google Cloud Storage
- Ceph 对象网关
- OpenStack Swift
- CloudFront + S3
- NooBaa S3 Storage
- 本例中使用 haproxy 服务器,但您可以使用适用于您的环境的任何代理服务。
系统数量:此步骤使用在以下任务分配的七种系统(物理或虚拟):
- 答:db01: 负载均衡器和数据库 :运行 haproxy 负载均衡器和 Postgres 数据库。请注意,这些组件本身并不具有高可用性,但用于指明如何设置自己的负载均衡器或生产数据库。
- B: quay01, quay02, quay03: Quay 和 Redis :分配三个(或更多)系统来运行 Quay 和 Redis 服务。
- C: ceph01, ceph02, ceph03, ceph04, ceph05: Ceph: Three (或更多)系统为存储提供 Ceph 服务。如果要部署到云,您可以使用前面描述的云存储功能。此流程将额外的系统用于 Ansible(ceph05),一个用于 Ceph 对象网关(ceph04)。
每个系统都应该有以下属性:
Red Hat Enterprise Linux (RHEL) 8:获取 下载页面中 的最新 Red Hat Enterprise Linux 8 服务器介质,并按照 Red Hat Enterprise Linux 9 产品文档中的安装说明进行操作。
- 有效的红帽订阅:配置 有效的 Red Hat Enterprise Linux 8 服务器订阅。
- CPU :两个或更多虚拟 CPU
- RAM :每个 A 和 B 系统的 4GB;每个 C 系统有 8GB
- 磁盘空间 :为每个 A 和 B 系统大约 20GB 磁盘空间(10GB 用于操作系统,10GB 用于 docker 存储)。至少 30GB 磁盘空间用于 C 系统(或取决于所需的容器存储)。