Mongo在AWS上报告空间不足

时间:2013-09-16 15:56:32

标签: linux mongodb amazon-web-services disk

我在一个小型AWS Linux实例上运行Mongo。今天早上,由于磁盘已满,我的系统因数据库锁定日志中的大量错误而关闭。

我怎样才能找出原因/什么是完整的?我认为小型AWS实例应该有160G可用吗?当我在mongo / data目录中显示它使用了5.5G。

我知道Mongo可能很渴望磁盘。我的数据(原始)约为150-200MB的JSON。

2 个答案:

答案 0 :(得分:0)

您的磁盘可能已满。

160 GB的数字是指实例存储,仅在您明确启用它时才会启用。默认情况下未启用的原因是它不是持久的。由于此存储已附加到主机,因此如果您停止实例或主机因任何原因而失败,您将丢失其中包含的任何内容。

您使用的存储空间是EBS卷。哪个AWS等同于SAN卷。默认情况下,大多数AMI创建的此卷大约为8-10 GB。您可以将每个卷的大小增加到1TB。

要纠正您目前的情况,您需要一些停机时间。您可以导入到配置了更多空间的新实例。否则,您可以对当前卷进行快照并使用该快照创建新的更大卷。您需要调整分区大小以利用所有空间。

答案 1 :(得分:0)

正如您所提到的,小实例在本地有短暂的磁盘,但是它安装在某些地方,比如/ media / ephemeral0,而不是root /。默认情况下,EBS根卷安装在/上,MongoDB的默认数据目录是/ data。这意味着MongoDB位于EBS根卷中,而不是短暂的磁盘。

此外,当实例终止时,短暂存储会丢失,因此除非您对数据丢失的影响感到满意,否则通常不建议使用。

另见:
MongoDB Document about EC2
AWS Document