硬件配置及建议
时至今日,ceph可以运行在各种各样的硬件平台上,不管是传统的x86架构平台(intel 至强系列、基于amd的海光系列等),还是基于arm的架构平台(比如华为鲲鹏),都可以完美运行ceph集群,展现了其强大的适应能力。
ceph的不同组件对硬件的需求有些许不同,下面是官方推荐的硬件要求:
组件 | 资源 | 最低配置要求 |
---|---|---|
OSD | 处理器 | 最少1 core |
每200-500 MB/s最少1 core | ||
每1000-3000 IOPS最少1 core | ||
上面的要求对应副本模式 | ||
对于使用不同的场景,要求会有所不同,比如使用纠删码、数据压缩等 | ||
如果是ARM处理器,出于性能考虑,将需要更多的core | ||
由于影响性能的因素较多,推荐使用性能压测来得到实际的结果 | ||
内存 | 每个实例4GB以上,其中2-4GB是比较常见的配置,不低于2GB | |
存储卷 | 每个实例1个存储卷 | |
DB/WAL | 每个实例1个SSD的分区(可选) | |
网络 | 1GbE+ NICs (推荐使用10GbE+) | |
MON | 处理器 | 最少2 core |
内存 | 每个实例2-4GB以上 | |
磁盘空间 | 每个实例60 GB | |
网络 | 1GbE+ NICs | |
MDS | 处理器 | 最少2 core |
内存 | 每个实例2GB以上 | |
磁盘空间 | 每个实例1 MB | |
网络 | 1GbE+ NICs |
官方给出的推荐硬件要求,是基于一般化的使用场景,在生产环境上,我们需要根据实际的性能要求来进行一系列的调整,对于性能瓶颈的地方,要适当增加硬件投入提高总体系统性能表现。
组件 | 资源 | 生产推荐配置 |
---|---|---|
OSD | 处理器 | 副本池最少1 core,EC池最少2 core,ARM架构的处理器需求至少翻倍 |
除了日常运行的需求,要考虑故障情况下的需求,cpu资源可能有所增加,推荐测试得到结果 | ||
内存 | 不低于2GB,日常运行基本在3GiB~4GiB,故障时部分osd可能更多,所以内存可以预留更多 | |
存储卷 | 每个实例1个存储卷,不需要做raid,建议使用直通卡,不用raid卡 | |
DB/WAL | 针对HDD+SSD搭配使用的场景,推荐单独的SSD做DB和WAL,纯HDD和纯SSD不需要单独分出 | |
网络 | 10Gib的卡,最好多根做Bond | |
MON | 处理器 | 最少2 core |
内存 | 每个实例2-4GB以上 | |
磁盘空间 | 每个实例60 GB | |
网络 | 1GbE+ NICs | |
MON和MGR因为资源要求不高,通常部署在同一台节点,可以使用虚拟机来部署 | ||
MDS | 处理器 | 最少2 core |
内存 | 每个实例4GB以上 | |
磁盘空间 | 每个实例1 MB | |
网络 | 1GbE+ NICs |
集群节点网络配置
对于线上环境来说,节点都需要有确定的ip地址,因此我们需要在节点的网络配置中将网卡配置为静态ip,Debian系统的网络配置如下所示:
bash
# The loopback network interface
#auto表示无论是否插入网线,都尝试启动这个接口
auto lo
iface lo inet loopback
# The primary network interface
# allow-hotplug表示当检测到接口插入网线后,才启动这个接口
allow-hotplug ens33
iface ens33 inet dhcp
# The primary network interface
# 静态ip的配置方法
allow-hotplug ens38
iface ens38 inet static
address 192.168.183.100
netmask 255.255.255.0
gateway 192.168.183.1
完成配置后,使用ifdown ens38 && ifup ens38使其生效
本系列的拓扑结构
3个mon和3个mgr与osd合布到node1~node3上
2台rgw节点与mds服务器合布
使用单独的跳板机作为deploy部署节点,同时配置apt内部源,chrony时钟服务器,能够连接到外网