红联Linux门户
Linux帮助

ceph集群配置注意事项

发布时间:2015-12-30 15:42:50来源:linux网站作者:linuxhunter

解决了在一台host上部署大于20个OSDs的linux系统参数的修改。


ceph部署环境:
硬件环境:4台4U的服务器,服务器配置信息如下:

1)CPU是Intel Xeon E5-2650(32核心);

2)内存大小是128GB;

3)服务器内共有35块HDD,其中一块HDD用于安装操作系统,另外34块HDD用于ceph存储;

4)网络采用public/cluster类型的网络;

软件环境。
1)操作系统:4台服务器都采用ubuntu-14.04.1;

2)ceph软件版本:Firefly最新版(0.80.11);


出现的问题:
当启动集群时,ceph集群中出现大量的非active+clean的PGs并且osdmap也不稳定,osd的状态在up和doan之间来回的切换。这样导致ceph集群迟迟不能处于可用状态。


问题原因:
由于在一个host上启动的osd数量太多了(34个OSDs),导致在ceph集群启动时以及ceph集群在recovery和rebalance时,由于产生大量的线程,该线程数量已经远远超越了linux内核默认配置的系统最大线程数。


解决方案:
linux内核默认的最大线程数是32768,可以通过命令#sysctl kernel.pid_max来查看。该最大线程数是针对桌面系统的,而对于服务器以及集群的系统来说,这个值是不够的。因此最好将该值设置成最大值,即:#sysctl -w kernel.pid_max=4194303。或者修改/etc/sysctl.conf文件,将kernel.pid_max = 4194303填写在/etc/sysctl.conf文件的末尾。


SUSE Linux Enterprise Server 11 SP3上轻松搭建Ceph集群:http://www.linuxdiyf.com/linux/10281.html