2.1ceph集群部署准备-硬件及拓扑

硬件配置及建议

时至今日,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时钟服务器,能够连接到外网

相关推荐
知已难寻1 小时前
Docker 入门:容器技术与 Docker 基础
java·运维·服务器·docker·云原生·容器
默|笙2 小时前
【Linux网络】网络层协议 IP(1)理解报头、网段划分
linux·网络·tcp/ip
修己xj4 小时前
nslookup 使用指南:两种模式与常用查询技巧
linux
唠玖馆6 小时前
文件系统详解
linux·文件系统·ext2
GeW6 小时前
当Linux内核开始“确定性”,制造高端化才有了底层语法
linux
星恒随风8 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
StarsGreen10 小时前
libva在intel平台上的前端流程简介
linux
坤坤子吖13 小时前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
青瓦梦滋13 小时前
Redis主从复制
服务器·数据库·redis·缓存·bootstrap
沫璃染墨14 小时前
从零入门计算机网络系列(十八):TCP连接管理详解——从三次握手与四次挥手到TIME_WAIT机制
运维·服务器·网络·c++·网络协议·tcp/ip·tcp