开始需要在MongoDB上扩展相对随机访问的工作stream程,而iotop则表示我们正在充分利用我们的IO。 看起来像AWS允许您在不停机的情况下将卷types切换到可供应的IOPS(并添加更多的IOPS),但是在主数据库节点上执行此操作有什么不利或危险吗? 当一些事情听起来太美好而不真实时
这应该是无缝的。
当然,你想为可能出现的问题做好准备,所以快照你的音量并确保你有备份计划是有意义的,但…
当卷处于
optimizing状态时,您的卷性能将在源configuration规格和目标configuration规格之间。 过渡性音量performance将不低于音量performance。 如果您降级IOPS,则过渡性音量性能将不低于目标音量性能。http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-expand-volume.html
这个过程很顺利,可能的原因是EBS 已经有了内部复制。
您可能不知道您的卷始终存在于两个位置,并且副本位于同一可用区域中的不同硬件上。 如果卷失败,副本将接pipe并成为主节点,并在群集内寻找新的存储节点以复制自己,继续保留退款。
实际上,在正常操作中,如果主卷丢失其副本,它将search新的复制目标,I / O冻结,直到获取目标 – 通常在毫秒内。 EBS卷从不运行没有副本,即使这是隐藏的用户。
因此,在两条线之间进行阅读 – 而不是减less这里所涉及的真正的魔术 – 似乎有理由得出这个结论:相对于EBS在正常日常操作中透明复制的复杂性和复杂性,工程师们可能做的并没有太大的不同:他们已经利用了这个机制的一部分,但是这个卷复制到了能够提供新卷属性的设备上。 复制完成后,副本接pipe…或者分阶段进行:由于您的EBS卷永远不会在单个磁盘上,无论如何(即使忘记复制,EBS也会将多个存储设备中的单个“卷”开始)logging的行为开始有意义。
所以真正的“太好不成真”是EBS一直默默做的事情的自然延伸。
当然,这在很大程度上是我的猜测,但根据EBS的公开信息,似乎是合理的。
另外:几年前,一个地区的一个地区发生了重大的EBS故障 ,而其中一个关键因素是“重新镜像”风暴,因为卷被认为已经失去了复制品,并开始疯狂地寻找一个有足够容量的新节点可以同意成为它们的新副本。