温馨提示×

MongoDB在Linux上的资源限制如何设置

小樊
49
2025-09-14 19:24:41
栏目: 云计算

在Linux上设置MongoDB资源限制可通过以下方式:

  • 内存限制

    • cgroups:创建控制组并设置内存上限,如cgcreate -g memory:mongodb,然后echo 536870912 > /sys/fs/cgroup/memory/mongodb/memory.limit_in_bytes(限制为512MB),最后将MongoDB进程加入该组。
    • systemd:编辑服务文件(如/etc/systemd/system/mongod.service),在[Service]中添加MemoryLimit=512M,重启服务生效。
    • 配置文件:修改mongod.conf,通过storage.wiredTiger.engineConfig.cacheSizeGB限制缓存大小(如cacheSizeGB: 1)。
  • CPU限制

    • cgroups:在cpu子系统下创建控制组,设置cpu.cfs_quota_uscpu.cfs_period_us(如echo 10000 > cpu.cfs_quota_usecho 50000 > cpu.cfs_period_us,限制为20% CPU)。
  • 文件句柄限制

    • 编辑/etc/security/limits.conf,添加mongodb soft nofile 64000hard nofile 64000,限制打开文件数。
  • 磁盘I/O限制

    • cgroups:使用blkio子系统,如echo "8:0 524288" > /sys/fs/cgroup/blkio/mongodb/blkio.throttle.read_bps_device,限制磁盘读写速度。

注意:不同方法可能相互影响,需确保配置一致,且修改后重启MongoDB生效。

0