ArangoDB单个实例作为Docker容器填充内存并重新启动
我们正在运行ArangoDBArangoDB单个实例作为Docker容器填充内存并重新启动,docker,arangodb,arangojs,Docker,Arangodb,Arangojs,我们正在运行ArangoDBv3.5.2。Docker容器意外地以随机间隔重新启动,并且所有连接的客户端都断开连接。经过进一步调查,我们发现运行Arango的Docker容器正在完全到达分配给它的内存。自容器开始运行以来,内存一直以增量的方式被填满,并且它永远不会下降,直到它被填满并且容器重新启动 下面是用于运行容器的docker命令 docker run -d --name test -v /mnt/test:/var/lib/arangodb3 --restart always --memo
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
- 存储引擎:RocksDB
- 部署模式:单服务器
- 部署策略:在Docker中手动启动
- 配置:
- 基础设施:AWS t3a.小型机器
- 操作系统:Ubuntu 16.04
- 计算机中的总RAM:2GB。但是,容器的限制是1.2GB
- 正在使用的磁盘:SSD
- 二手包装:Docker