我们正在运行一个包含以下内容的生产数据库集群:
三台 AWS linux 服务器,每台都包含一个协调器、一个代理和一个主数据库。所有三台服务器都位于 AWS 上的专用网络中。数据库作为 docker 镜像运行(ArangoDB v3.1.24)。
集群是一致的并且运行平稳。但是,每隔几天,一个或多个协调员会在几个小时内生成以下警告,然后一切都会恢复正常:
2017-09-20T14:07:33Z [1] WARNING cannot contact coordinator <COORDINATOR_ID> on endpoint <endpoint>
2017-09-20T14:01:40Z [1] ERROR Service "/_admin/aardvark" encountered error 500 while handling GET http://<host>:<port>/_db/_system/_admin/aardvark/statistics/coordshort
2017-09-20T14:01:40Z [1] ERROR TypeError: Cannot read property '0' of undefined
2017-09-20T14:01:40Z [1] ERROR at /usr/share/arangodb3/js/apps/system/_admin/aardvark/APP/statistics.js:480:64
2017-09-20T14:01:40Z [1] ERROR at arrayEach (/usr/share/arangodb3/js/node/node_modules/lodash/lodash.js:530:11)
2017-09-20T14:01:40Z [1] ERROR at Function.forEach (/usr/share/arangodb3/js/node/node_modules/lodash/lodash.js:9319:14)
2017-09-20T14:01:40Z [1] ERROR at /usr/share/arangodb3/js/apps/system/_admin/aardvark/APP/statistics.js:479:15
2017-09-20T14:01:40Z [1] ERROR at arrayEach (/usr/share/arangodb3/js/node/node_modules/lodash/lodash.js:530:11)
2017-09-20T14:01:40Z [1] ERROR at Function.forEach (/usr/share/arangodb3/js/node/node_modules/lodash/lodash.js:9319:14)
2017-09-20T14:01:40Z [1] ERROR at /usr/share/arangodb3/js/apps/system/_admin/aardvark/APP/statistics.js:477:13
2017-09-20T14:01:40Z [1] ERROR at arrayEach (/usr/share/arangodb3/js/node/node_modules/lodash/lodash.js:530:11)
2017-09-20T14:01:40Z [1] ERROR at Function.forEach (/usr/share/arangodb3/js/node/node_modules/lodash/lodash.js:9319:14)
2017-09-20T14:01:40Z [1] ERROR at mergeHistory (/usr/share/arangodb3/js/apps/system/_admin/aardvark/APP/statistics.js:440:7)
我真的无法弄清楚为什么会发生这种情况,以及为什么它会自行停止发生。
PS:发生这种情况时,我无法访问 Arango 仪表板,但是数据库仍然可以正常工作。