ArangoDB单示例作为Docker容器填充内存并重新启动

tgabmvqs  于 2022-12-09  发布在  Go
关注(0)|答案(1)|浏览(125)

我们正在运行ArangoDB v3.5.2。Docker容器意外地以随机间隔重新启动,并且所有连接的客户端都断开连接。经过进一步调查,我们发现运行Arango的Docker容器即将达到分配给它的内存。从容器开始运行起,内存将逐渐填充,并且它永远不会关闭,直到内存被填充并且容器重新启动。
下面是用于运行容器的docker命令

docker run -d --name test -v /mnt/test:/var/lib/arangodb3 --restart always --memory="1200m" --cpus="1.5" -p 8529:8529 --log-driver="awslogs" --log-opt awslogs-region="eu-west-1" --log-opt awslogs-group="/docker/test" -e ARANGO_RANDOM_ROOT_PASSWORD=1 -e ARANGO_STORAGE_ENGINE=rocksdb arangodb/arangodb:3.5.2 --log.level queries=warn --log.level performance=warn --rocksdb.block-cache-size 256MiB --rocksdb.enforce-block-cache-size-limit true --rocksdb.total-write-buffer-size 256MiB --cache.size 256MiB

为什么内存不断增加而不下降,特别是当它没有被使用的时候?我该如何解决这个问题?

我的环境

*ArangoDB版本:3.5.2
*存储引擎:岩石数据库
*部署模式:单一服务器
*部署策略:在Docker中手动启动
*配置
*基础设施:AWS t3a.small机器
*操作系统:Ubuntu 16.04版
*计算机中的总RAM:2GB。但是,容器的限制为1.2GB
*正在使用的磁盘:固态硬盘
***使用的 Package **:多克

uqxowvwt

uqxowvwt1#

如果您在配置文件arangodb.conf中将设置与注解混在一起,则会出现一个已知的问题(源代码:(第10页)
下面是他们谈论解决方案的部分:https://github.com/arangodb/arangodb/issues/5414#issuecomment-498287668
我认为语法配置文件语法不支持如下行
块缓存大小= 268435456 #256 M
我认为这实际上可以解释为
块高速缓存大小= 268435456256000000,这比预期的要高得多。
请删除注解,然后重试!

相关问题