我是 OpenStack MAAS 和 AutoPilot 方面的新手。我想使用 Ubuntu 14.04LTS 和 MAAS 1.9 创建自己的私有云。
我的目标是拥有一个不错的设置,以便我可以部署一个相当繁重的 Java Spring Tomcat 应用程序,该应用程序将 MySQL、Solr、RabitMQ 以及 MongoDB 和/或 Couch 混合在一起,用于我需要编写的单独服务。该应用程序筛选了大量数据并存储分析结果以供绘图(实时和离线)。
此应用程序(不包括 Couch 服务)目前在一台 Ubuntu 机器上运行,该机器具有 32GB(无云)和第三代 i7 500GB SSD、2TB 辅助 HDD。这只是我的 QA / 小规模性能测试环境。我正在构建一个家庭沙云来部署此应用程序:
我有 6 台计算机,设置如下:
- 带有 AMT 技术的 4 核英特尔 CPU。
- 8GB 内存
- 2 Gbit NIC
- 1x240GB 固态硬盘
- 1 个 1TB 硬盘
我还有 2 个 D-Link 8 端口 EasySmart 千兆以太网交换机 (DGS-1100-08)。我试图跟进Dimiter 的博客,尽管他考虑的网络架构没有第二块硬盘。
现在我的问题是关于第二块磁盘。ceph/swift 会智能地使用第二块磁盘进行日志记录或实际对象存储吗?对于我的存储需求(小于 2 TB),使用 HDD 是否是个好主意,因为我负担不起在这些盒子里放 1TB SSD。由于盒子里的第一块磁盘是 240GB SSD,ceph/swift 会适当地使用这些磁盘吗?
期待看到您的回复,因为我不想经历部署应用程序的麻烦才发现我需要一个完全不同的拓扑。
答案1
Autopilot 将使用其在每个存储节点上找到的所有未使用的磁盘。通常,例如,Ubuntu 安装在 /dev/sda 上,而任何其他 /dev/sdX 将由 Ceph 或 Swift 使用。Autopilot 尚未考虑 SDD 和 HDD 之间的偏好。
现在,MAAS 1.9 确实支持 bcache,因此您可以使用 SSD 稍微加快速度,但恐怕 15.11 版本的 Autopilot 还不知道如何使用它。
答案2
纯粹从 Ceph 的角度来看,您可能希望将日志放在主 SSD 驱动器上,占用其中的一小部分,并使用 1TB HDD 供 OSD 守护进程使用。
正如 Andreas 的回答所解释的那样,Autopilot 还不能自动完成此操作,因此您需要手动构建超融合 OpenStack 和 Ceph 集群。
为了提高性能,从 Ceph 的角度来看,建议至少使用 10 个 OSD 节点,但我建议您也看看Red Hat 针对 Ceph 和 MySQL 的参考架构——您应该能够大致了解使用 Ceph 上的 MySQL 可以实现什么样的性能,特别是您可以看到使用什么硬件来实现这些数字。