联网的内存文件系统,带有zram + XFS + GlusterFS – 最佳实践

几个月前,我使用XFS格式的zram设备与GlusterFS串起来,在几台裸机服务器(运行RHEL 7.2)上创build分布式/networking/复制的内存中文件系统。

我使用这个FS作为一个高性能的方式来存储,服务和复制我的多服务器应用程序服务器的图像和video。 而我无法find任何其他内存中的FS解决scheme,所以我一起砍了这个。

它已经运行了4个月,但是昨天晚上其中一台服务器因为XFS损坏而崩溃 – 我最终不得不做了一个OS Reload。 我不知道这个设置是怪罪的,但是可能性是。

这导致我…

1)为了使这个设置更加稳定,我应该遵循哪些最佳实践?

2)是否有我可以(甚至应该)设置一个日志logging系统,以便我可以监视每个zram + xfs节点的健康状态? 而且知道如果再发生碰撞事故又出了什么问题。

一些性能testing:

/ dev / loop0 = https://erlhelinfotech.wordpress.com/2013/02/20/ramdisk-service-for-systemd/

/ dev / zram0 =我的zram设置

/ dev / sdb2 =标准的7200rpm磁盘

用hdparm -Tt进行性能testing

zram很less会习惯于这样的性能水平。 有可能,虽然没有certificate,你已经在这个存储堆栈的某个地方触发了一个bug。

更传统的,大概是稳定的,就是把块设备放在永久媒体上。 您可能会对具有大量内存的固态硬盘的性能感到惊讶。 增加的数据持久性的奖金。

你可以设置自己更好的处理崩溃。 远程系统日志,远程networking控制台,内核debugging软件包,以及能够理解这一切的支持人员。

如果当前组合不起作用,不要害怕尝试不同的组件。 块文件系统,分布式文件系统,内核版本。

内存中的文件系统不被认为是延长的操作时间,而是高IOPS活动的短时间突发。 可能是您的服务器遇到了内存不足的情况,并且无法交换(由于分配给ramdrive设备的locking内存)只是崩溃了。

无论如何,为了监视你的服务器的健康状况,我build议你使用Zabbix 。 您也可以创build一个电子邮件警报,在内存不足和/或其他错误时触发。