第 2 章 准备 Red Hat Quay (高可用性)
注意
此流程介绍了如何设置高度可用的、生产环境质量的 Red Hat Quay 部署。
2.1. 先决条件
在开始 Red Hat Quay 高可用性部署前,您需要了解以下几点:
Postgres 或 MySQL 可用于提供数据库服务。这里选择了 postgres 作为数据库,因为它包含支持 Clair 安全扫描所需的功能。其他选项包括:
- Crunchy Data PostgreSQL Operator:虽然红帽不直接支持,但 CrunchDB Operator 可从 Crunchy Data 中获得,供 Red Hat Quay 使用。如果您采用此路由,您应该有一个与 Crunchy Data 的支持合同,并直接与它们合作以获取与 Operator 及其数据库相关的使用指导或问题。
- 如果您的组织已有一个高可用性(HA)数据库,您可以将该数据库与 Red Hat Quay 搭配使用。如需有关支持第三方数据库和其他组件的详细信息,请参阅 Red Hat Quay 支持政策。
Ceph 对象网关(也称为 RADOS 网关)是一个产品示例,可以提供 Red Hat Quay 所需的对象存储。如果您希望 Red Hat Quay 设置执行异地复制,则需要 Ceph 对象网关或其他支持的对象存储。对于云安装,您可以使用以下任何云对象存储:
- Amazon S3 (请参阅 S3 IAM Bucket 策略,以了解有关为 Quay 配置 S3 存储桶策略的详细信息)
- Azure Blob Storage
- Google Cloud Storage
- Ceph 对象网关
- OpenStack Swift
- CloudFront + S3
- NooBaa S3 Storage
- 本例中使用了 haproxy 服务器,但您可以使用适用于您的环境的任何代理服务。
系统数量:这个流程使用通过以下任务分配的 7 个系统(物理或虚拟):
- 答:db01: Load balancer 和 database :运行 haproxy 负载均衡器和 Postgres 数据库。请注意,这些组件本身不可用,而是用于指示如何设置自己的负载均衡器或生产数据库。
- b: quay01, quay02, quay03: Quay 和 Redis: 三个(或更多)系统被分配来运行 Quay 和 Redis 服务。
- C: ceph01, ceph02, ceph03, ceph04, ceph05: Ceph: 三个系统提供 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 存储)。C 系统至少有 30GB 磁盘空间(或者更依赖于所需的容器存储)。