我正在AWS上运行3个实例上的MongoDB集群
每个实例都有2个EBS连接到它
- / [8GB] - /data [50GB]
要备份集群,MongoDBbuild议创build/data驱动程序的快照
我创build了一个自动化工具,使用AWS-SDK为特定时间在/data中安装的每个卷创build快照。
我想知道使用AWS-SDK创build快照还是使用AWS Console(手动)可以导致实例在运行过程中运行缓慢或不可用?
我知道创build根卷的快照可以导致系统重新启动,但是如何创build附加到另一个目录(如data下正在运行的实例的卷的快照?
快照过程不应该对实例可见。 当您尝试从“不洁净”的快照中恢复时,真正的问题将会出现。 如果某个进程正在写入该卷(或者是该卷上的某个文件的打开文件描述符),则该实例的内核caching中的写入请求可能不会写入磁盘,也可能只是部分写入。 这些文件在从快照创build的卷上看起来会损坏。
由于此原因,AWSbuild议在拍摄快照之前卸载所有卷。 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-creating-snapshot.html
(显然,你不能卸载/正在运行的实例,你可以停止实例来创build快照,但我会尝试find另一种方法来支持这个,估计你只需要该磁盘上的mongodbconfiguration文件,这是通常在/ etc,/ var和/ opt下)。