ES 节点2G内存分析

2022-08-04 11:16:19 浏览数 (2)

报错现象

ES在如存在2G内存的数据节点,在生产环境使用过程中会经常出现节点离线现象。导致集群频繁异常。

所以2G内存的集群,只能用于开发测试使用,切忌在生产环境中使用。

报错解析

经过实际测试发现,对于2G内存的数据节点,系统实际可以使用的内存大约为1800MB左右。

节点内存节点内存

系统内存占用大约为 750MB左右。

ES进程JVM设置大约为700MB左右。

这样,剩余系统内存大约为1800-1500=300MB。

300MB在ES写入查询量较大时,会占用部分固定的堆外内存空间,导致系统剩余内存空间不足。

实际内存占用实际内存占用

从而导致操作系统杀死内存占用较大的进程释放内存,也就是所说的OOM。 ES进程被杀死后就会出现节点离线现象。

解决方案

升级ES节点内存配置,生产环境至少使用4G内存节点。

0 人点赞