对于生产分片 MongoDB 安装,我们需要 3 个配置服务器。根据文档,“配置服务器 mongod 进程相当轻量,可以在执行其他工作的机器上运行”。但是,在默认配置中,它们都启用了日志功能,并且预分配会占用 3 GB 的磁盘空间。我假设配置服务器的实际数据和事务量非常小,因此这似乎有点太多了。
有没有办法(安全地!)运行这些配置服务器,同时减少日志的磁盘使用量?配置服务器上是否需要日志记录?我可以将日志大小设置得更小吗?
答案1
是的 - 有一种方法可以最小化日志文件的默认大小,但需要注意一些事项。从MongoDB 配置文档:
为了减少日志记录对磁盘使用的影响,您可以保持日志记录处于启用状态,并将 smallfiles 设置为 true 以减少数据和日志文件的大小。
以下是smallfiles
配置信息:
设置为 true 可修改 MongoDB 以使用较小的默认数据文件大小。具体来说,smallfiles 会减小数据文件的初始大小并将其限制为 512 MB。smallfiles 设置还会将每个日志文件的大小从 1 GB 减小到 128 MB。
如果您有大量数据库,且每个数据库仅包含少量数据,请使用 smallfiles 设置。smallfiles 设置可能导致 mongod 创建许多文件,这可能会影响较大数据库的性能。
答案2
答案3
您可以使用 --nojournal 选项启动 mongod,但我对您的配置服务器备份非常有信心。