文档章节

Ceph硬件选型

西昆仑
 西昆仑
发布于 2016/06/29 21:33
字数 862
阅读 476
收藏 4

Ceph对计算机硬件的需求

引言

我阅读了Ceph的官方文档,其中提及了Ceph对硬件资源的需求,在《Learning Ceph》一书中也同样提及。我在此处做一个简要概括。 Ceph主要包含如下几个组件:

  • MON
  • OSD
  • MDS
  • RGW

讨论的重点也是各组件对CPU以及内存的依赖程度。

MON MON负责管理CRUSHMAP,并不是CPU密集型,对内存依赖大,因为要实现数据的快速访问。CPU可以配置不高,但是内存要足量,每个进程实例1GB内存。

OSD OSD运行着rados服务,通过CRUSH算法计算对象的位置,要管理数据及其副本,需要合理数量的CPU。 OSD数据对内存的依赖程度不是特别大,正常情况下每个进程实例500MB即可。 在不正常的情况下(数据迁移恢复等),每个进程实例,每1TB数据就要对应1GB内存。所以内存还是多多益善,我的OSD进程在运行时,一般。

MDS 元数据服务器服务于CephFS,是一个CPU密集型进程,占用的CPU资源很多,所以需要给MDS配备性能强劲的CPU才行。对内存需求也大,因为需要实现数据的快速访问;每个进程实例1GB内存。

还有一些影响存储性能的因素,大量的读写请求,对于单个磁盘驱动器而言,会影响性能;不同的文件系统,也会影响系统性能; 这里谈谈磁盘驱动器的选型;

我在系统使用的过程中,发现各组件对内存的占用情况: osd: 2G左右,偶合会飚到7G; mon: 目前700M左右,曾经飙到过8G,还导致系统内存不足,后来我逐一重启了下mon进程; rgw: 目前占用的内存20G;

机械磁盘:

  1. 推荐的磁盘大小,最小不过1TB;
  2. 磁盘越大,单位GB的存储空间越小,但是需要的内存越多,尤其是在recovery,backfill以及reblance时;
  3. 不推荐将一个盘分多个区,再跑多个OSD进程;
  4. 不推荐OSD和mon, 或者OSD和mds跑在同一个硬盘上;
  5. 很多 slow osd的问题往往是由于对磁盘设备的过度使用,请使用专用的磁盘用于安装操作系统以及软件;专用的磁盘设备用于osd daemon, 专门的磁盘设备用于journal。

SSD磁盘: 使用SSD可以有效的提升系统性能,但是在决定使用SSD之前,需要考虑几个问题: 对于写性能要求高的情况,要购买合适的SSD,有些便宜的SSD,可能写性能还不如好的机械硬盘; 顺序写:当你把一块SSD作为多个磁盘的journal时,有可能几个OSD同时写journal,而写journal是顺序写,所以需要关注顺序写性能; 注意分区对齐;

网卡: 至少2个1Gbps的网卡,一个用于public network,用于和系统的使用者交互;一个用于cluster network,用于数据副本的拷贝,recovery, backfill等之用。

参考文档: http://docs.ceph.com/docs/master/start/hardware-recommendations/

© 著作权归作者所有

上一篇: C++连接MySQL
下一篇: 一致性HASH算法
西昆仑

西昆仑

粉丝 137
博文 141
码字总数 102735
作品 0
南京
高级程序员
私信 提问
从传统运维到云运维演进历程之软件定义存储(一)

运维是企业业务系统从规划、设计、实施、交付到运维的最后一个步骤,也是重要的步骤。运维从横向、纵向分可以分为多个维度和层次,本文试图抛开这纷繁复杂的概念,讲述一个传统的企业级运维人...

Devin
2016/09/12
0
0
从传统运维到云运维演进历程之软件定义存储(六)完结

回到最初的Ceph运维工程师的问题,本系列讲述的是传统运维向新一代云运维转型之软件定义存储部分的转型,运维是企业业务系统从规划、设计、实施、交付到运维的最后一个步骤,也是重要的步骤。...

Devin
2016/12/20
0
0
从传统运维到云运维演进历程之软件定义存储(二)

上回书说到一般企业使用Ceph会经历几个关卡:硬件选型 —— 部署调优—— 性能测试 架构灾备设计 —— 部分业务上线测试 —— 运行维护(故障处理、预案演练等)。 今天来重点讲下部署调优关...

Devin
2016/09/20
0
0
从传统运维到云运维演进历程之软件定义存储(五)中

上篇文章主要讲了常见的几种数据保护方式,本文我们主要讲下Ceph有哪些常见的灾备设计方式。Ceph在灾备方面有三大神兵利器:故障域、RBD异地灾备、RGW异地灾备。 关卡五:Ceph灾备神兵利器-...

Devin
2016/12/20
0
0
EasyStack获评2016年度制造行业OpenStack最佳实践

近日,由工业和信息化部信息化和软件服务业司指导,中国信息通信研究院和中国通信标准化协会共同主办,云计算开源产业联盟承办的“云计算开源产业联盟第一次成果发布会”在京召开。 工信部信...

玄学酱
2018/05/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

编程作业20190210900169

1编写一个程序,提示用户输入名和姓,然后以“名,姓”的格式打印出来。 #include <stdio.h>#include <stdlib.h> int main(){ char firstName[20]; char lastName[20]; print......

1李嘉焘1
19分钟前
4
0
补码的优点及原理分析

只讨论整数 1.计算机内部为什么没有减法器? 减法运算本身其实就是加法,如x - y即x +(-y),所以只需要将负数成功表示出来并可以参加加法运算,那加法器就可同时实现“+”和“-”的运算。这...

清自以敬
35分钟前
63
0
Docker 可视化管理 portainer

官网安装指南: https://portainer.readthedocs.io/en/latest/deployment.html docker-compose.yml 位置,下载地址:https://downloads.portainer.io/docker-compose.yml...

Moks角木
今天
5
0
Spring Security 实战干货:必须掌握的一些内置 Filter

1. 前言 上一文我们使用 Spring Security 实现了各种登录聚合的场面。其中我们是通过在 UsernamePasswordAuthenticationFilter 之前一个自定义的过滤器实现的。我怎么知道自定义过滤器要加在...

码农小胖哥
今天
8
0
常见分布式事务解决方案

1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源...

asdf08442a
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部