Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用连接的EBS卷和MongoDB服务器终止EC2实例最安全的方法是什么_Mongodb_Amazon S3_Amazon Ec2_Backup_Snapshot - Fatal编程技术网

使用连接的EBS卷和MongoDB服务器终止EC2实例最安全的方法是什么

使用连接的EBS卷和MongoDB服务器终止EC2实例最安全的方法是什么,mongodb,amazon-s3,amazon-ec2,backup,snapshot,Mongodb,Amazon S3,Amazon Ec2,Backup,Snapshot,我目前正在开发一个将使用Mongo作为数据存储的系统。DB服务器将在EC2实例上运行,实际的DB位于单独的EBS卷上 我的问题是——假设数据库已启动并运行,但没有数据写入或读取,那么从AWS控制台终止EC2实例对于DB数据完整性有多危险?正如我所说,我不担心任何部分写入的数据或类似的东西,我指的是数据库中已经存在的数据 此外,是否有人可以解释EBS卷快照对快照中数据完整性的影响?在本地开发服务器上,我总是在将备份同步到本地存储之前停止Mongo,因此我不清楚在DB运行时拍摄EBS卷的S3快照的含

我目前正在开发一个将使用Mongo作为数据存储的系统。DB服务器将在EC2实例上运行,实际的DB位于单独的EBS卷上

我的问题是——假设数据库已启动并运行,但没有数据写入或读取,那么从AWS控制台终止EC2实例对于DB数据完整性有多危险?正如我所说,我不担心任何部分写入的数据或类似的东西,我指的是数据库中已经存在的数据

此外,是否有人可以解释EBS卷快照对快照中数据完整性的影响?在本地开发服务器上,我总是在将备份同步到本地存储之前停止Mongo,因此我不清楚在DB运行时拍摄EBS卷的S3快照的含义


谢谢

从AWS控制台终止EC2实例与从VM内部选择操作系统关闭功能相同,因此只要Mongo遵守标准关闭协议并正常停止任何打开的数据库通道,一切都会很好,EBS卷上不会出现完整性问题


快照EBS存储不是一个原子时间点过程—创建新快照需要有限的时间,具体取决于EBS卷的大小和自上次快照以来的更改量。因此,如果数据完整性是一个问题,那么在捕捉EBS数据存储之前,应该始终停止数据库服务。类似地,如果要快照VM根EBS卷,则应首先停止VM。

此外,请注意快照EBS卷可能会影响该EBS卷的性能


当我们快照EBS卷时,我们会看到延迟增加。

根据我的经验,实际情况并非如此。
对于Linux EC2实例,终止实例会模拟电源故障,而不是正常关机。/etc/rc.d关闭脚本未运行。

不确定为什么会出现这种情况-快照进程不会改变EBS卷,快照数据实际上存储在S3而不是EBS存储中。如果您的意思是在快照过程中EBS性能受到影响,这是有意义的-EBS系统正在执行EBS卷的完全读取。但是,正如我在回答中提到的,捕捉活动EBS卷是一种潜在的危险行为。另外:你的回答更适合作为评论,因为它实际上并没有回答问题。