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

2024-09-06 21:12

本文主要是介绍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系统的网络配置如下所示:

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

这篇关于2.1ceph集群部署准备-硬件及拓扑的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1143128

相关文章

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Redis中哨兵机制和集群的区别及说明

《Redis中哨兵机制和集群的区别及说明》Redis哨兵通过主从复制实现高可用,适用于中小规模数据;集群采用分布式分片,支持动态扩展,适合大规模数据,哨兵管理简单但扩展性弱,集群性能更强但架构复杂,根... 目录一、架构设计与节点角色1. 哨兵机制(Sentinel)2. 集群(Cluster)二、数据分片

Linux部署中的文件大小写问题的解决方案

《Linux部署中的文件大小写问题的解决方案》在本地开发环境(Windows/macOS)一切正常,但部署到Linux服务器后出现模块加载错误,核心原因是Linux文件系统严格区分大小写,所以本文给大... 目录问题背景解决方案配置要求问题背景在本地开发环境(Windows/MACOS)一切正常,但部署到

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

如何在Ubuntu 24.04上部署Zabbix 7.0对服务器进行监控

《如何在Ubuntu24.04上部署Zabbix7.0对服务器进行监控》在Ubuntu24.04上部署Zabbix7.0监控阿里云ECS服务器,需配置MariaDB数据库、开放10050/1005... 目录软硬件信息部署步骤步骤 1:安装并配置mariadb步骤 2:安装Zabbix 7.0 Server