我试图在实验室的单盒测试上构建小型CEPH集群,然后再将更大的问题转移到它上。遇到内存问题,无法找到控制方法。
我们有旧的Core2Duo处理器,4gb内存。使用3个本地8tb磁盘创建3个OSD。
ceph将使它和一切运行良好,expcet为3个OSD中的每一个创建一个tmpfs分区,该分区为2gb,在将~50 2gb的数据复制到CephFS之后,蓝光盒将使用RAM启动,并最终使用所有的交换。我找不到正确的设置来控制,多少RAM OSD进程是允许使用的。
可以使用更多的IO,而不是RAM。寻求帮助(如果可能的话)。)我正在Centos 7上建立一切。
发布于 2019-01-16 17:27:46
发布说明说.
不再需要bluestore_cache_*选项。它们被osd_memory_target取代,默认为4GB。BlueStore将展开并压缩其缓存,以尝试保持在此限制内。用户升级时应该注意,这是一个比以前的1GB的bluestore_cache_size更高的缺省值,所以默认情况下,使用BlueStore的OSD将使用更多内存。有关更多细节,请参见BlueStore文档。
这使我大吃一惊。我的osd对常住内存的使用非常疯狂。内核是oom-杀灭osd进程。
切换到新的键并弹跳osd进程给了我稳定的性能。
发布于 2018-09-25 10:25:10
这是一个常见的问题,ceph邮件列表对于这些问题是一个非常有用的存档,请参阅这。可以减少bluestore_cache_size值,SSD的默认值为3GB,HDD的默认值为1GB:
# If bluestore_cache_size is zero, bluestore_cache_size_hdd or bluestore_cache_size_ssd will be used instead.
host1:~ # ceph daemon osd.3 config show | grep bluestore_cache_size
"bluestore_cache_size": "0",
"bluestore_cache_size_hdd": "1073741824",
"bluestore_cache_size_ssd": "3221225472",但是根据我们在生产集群中的监控,对于HDD,剩余内存大约是3GB,所以您必须根据需要调整这些值。配置引用是这里。
我建议先从一个OSD开始,然后观察节点的性能;如果内存(或其他度量)正常,则添加另一个OSD。如果你已经达到了一两个OSD的极限,你将不得不根据你的需求来调整你的信任。可以在联机运行时更改这些值:
host1:~ # ceph daemon osd.<ID> config set bluestore_cache_size[_hdd|_ssd] <VALUE>信任的永久变化必须存储在/etc/ceph/ceph.conf中。
https://unix.stackexchange.com/questions/448801
复制相似问题