我们有一个在3个节点副本集中运行在AWS EC2实例上的mongoDB。 如果主节点崩溃,则所有的读取/写入都将连接到主节点,并且两个辅助节点也将作为备份。 所有节点都具有相同的操作系统配置。
RAM - 8G
DISK - 200G
CPU - 2 core
问题: 主节点上的负载正常,并且主节点上的CPU /内存使用情况正常。但是一个辅助节点使用的内存将近82%,而另一个辅助节点仅使用了47%的内存。
[mongo-2:~]$ free -m
total used free shared buff/cache available
Mem: 7683 5870 210 0 1601 1511
Swap: 0 0 0
顶部命令输出显示Mongod正在使用75%的内存。
[mongo-2:~]$ top
top - 15:24:45 up 40 days, 23:56, 1 user, load average: 0.02, 0.03, 0.00
Tasks: 87 total, 1 running, 44 sleeping, 0 stopped, 0 zombie
%Cpu0 : 0.7 us, 0.0 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 0.7 us, 0.0 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 7867452 total, 149344 free, 6033940 used, 1684168 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1524636 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
7825 mongod 20 0 8275988 5.7g 7940 S 1.7 75.4 2057:18 mongod
1706 root 20 0 274296 10720 2484 S 0.3 0.1 42:06.32 node_exporter
12376 ec2-user 20 0 168872 4180 3644 R 0.3 0.1 0:00.01 top
1 root 20 0 125656 4132 2696 S 0.0 0.1 0:12.62 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.38 kthreadd
此外,该节点与Primary同步,并且所有参数都设置为默认值。
你们能建议为什么辅助实例比主实例使用更多的内存吗?
此外,如果您需要任何其他信息,请发表评论。