查看集群数据总量
| |
查看各节点的segement memory
和cache
占用量
| |
注意:我这里使用的是7.4.0
自带jdk
的集群版本。
Docker
内进行jmap
当我们使用docker exec -it es01 /bin/bash
进入到es
的镜像内后,直接使用jmap
是找不到的命令的。
不过,我们可以在这个图中发现,因为使用的是自带的jdk
,所以我们需要使用jdk/bin/jmap
这样来使用。
我们先尝试使用jps
查看:
jdk/bin/jps -lv
可以看到,当前es
的进程PID
了(在Docker
内,通常都是1
)。
再使用jstack
,尝试查看当前堆栈:
jdk/bin/jstack 1
却得到一个错误:
| |
通过搜索响应的解决方案,这是因为镜像内执行用户不同导致的。在这里详细说明了如何解决,可以在exec
时,指定用户和用户组,进入后,就可以正常执行了。
docker exec -u 1000:0 -it es01 /bin/bash
Eclipse MAT 来做分析。