在 Red Hat,性能和规模被视为一等公民,并且投入了大量时间和精力来确保我们的产品规模化。我们拥有一支由性能和扩展工程师组成的专门团队,他们与产品管理人员、开发人员和质量工程人员密切合作,以识别性能回归,为客户提供产品性能数据和指导,提出调优并大规模测试红帽 OpenStack 平台部署。我们尽可能地测试我们的产品以匹配真实世界的用例和规模。
过去,我们在客户/合作伙伴的帮助下,将基于 director 的 Red Hat OpenStack Platform 部署扩展到外部实验室的大约 300 个裸机 overcloud 节点。虽然这些测试有助于解决问题,但在尝试超过 300 个时,我们往往会受到硬件可用性的限制,而不是产品规模。
在过去的几年里,我们在内部构建了一些功能,可以通过 500 多个裸机节点扩展测试 Red Hat OpenStack Platform 的部署。我们希望在我们的客户以这种规模运行之前测试、识别和修复问题。虽然 Red Hat OpenStack director 可以部署和运行的 Red Hat OpenStack Platform 节点数量在理论上没有限制,但包括 undercloud 和 overcloud 控制器在内的环境的大小和配置会影响规模,因此运行这些类型的测试。
在过去的几周里,性能和规模团队成功完成了部署、运行和测试 Red Hat OpenStack Platform 13 的巨大努力,这是我们当前的长期支持版本,规模为 510 个裸机节点,全部部署和管理通过 Red Hat OpenStack Platform director。
那么,我们是怎么做到的呢?
红帽 OpenStack 总监
Red Hat OpenStack Platform director 是一个用于安装和管理完整 OpenStack 环境的工具集。Director主要基于OpenStack项目TripleO,是“OpenStack-On-OpenStack”的缩写。该项目由 OpenStack 组件组成,您可以使用这些组件来安装完全可操作的 OpenStack 环境。这包括 Red Hat OpenStack Platform 组件,这些组件配置和控制裸机系统以用作 Red Hat OpenStack Platform 节点。
多年来,director 已经发展成为一个多功能、高度可定制(包括使用 Ansible 配置)和强大的部署工具,服务于广泛的客户用例,无论是通用云、NFV 还是边缘。director 主机也称为“undercloud”,用于部署和管理实际工作负载云“overcloud”
硬件
我们总共使用了 10 种不同型号的 Dell 和 Supermicro 服务器,从 Ivy Bridge 到 Skylake,具有不同的 NIC 布局以达到这种规模,所有这些都使用 director 的可组合角色功能进行部署,这使得跨非同质节点的部署变得容易。
对于托管 director 的 undercloud 主机,我们使用了具有 32 核/64 线程和 256 GB 内存的 Supermicro 1029P Skylake 服务器。类似的 Supermicro 1029P 机器也用于部署托管 API 和其他集群服务的 Red Hat OpenStack Platform 控制器——例如 Galera、RabbitMQ、HaProxy 等。计算节点是所有可用的 10 种不同服务器品种的混合体。
测试
我们的目标很简单,即在识别和调试问题的同时获得尽可能多的计算节点。在此过程中,尝试了几次调整以确定对规模和性能的影响。一旦我们实现了