内存不足时Memsql崩溃

时间:2018-07-31 17:18:17

标签: docker memsql

我们正在使用memsql进行实时分析。我们创建了Kafka连接器,该连接器一直在Kafka中使用,并推送到memsql。一段时间后,由于内存问题,memsql崩溃了。

有什么方法可以监视memsql消耗多少内存以及它如何自动扩展。

2 个答案:

答案 0 :(得分:0)

(通过您的“ docker”标签,我猜您在容器中运行了“ memsql”)

假设您有权访问运行“ memsql”容器的主机,并且知道要监视的容器,则可以从主机上内核的cgroups统计信息中获取内存使用信息。

您可以在Docker主机系统上运行以下命令:

container="your_container_name_or_ID"
set -- `docker inspect $container --format "{{.Id}} {{.HostConfig.CgroupParent}}"`
id="$1"
cg="$2"
if [ -z "$cg" ] ; then
cg=/docker
fi

cat /sys/fs/cgroup/memory${cg}/${id}/memory.max_usage_in_bytes

这将显示在容器的cgroup中运行的所有进程的峰值内存使用情况(即,初始进程由容器的ENTRYPOINT启动,以及它可能已经运行的任何子进程)。

答案 1 :(得分:0)

如果要检查运行memsql节点的内存量,请执行以下操作:

select * from information_schema.mv_nodes

这里有有关memsql如何使用内存的更多详细信息:

https://help.memsql.com/hc/en-us/articles/115001091386-What-Is-Using-Memory-on-My-Leaves-