gpt4 book ai didi

amazon-ec2 - 当停止 ebs 支持的实例时,交换会消失。

转载 作者:行者123 更新时间:2023-12-02 20:09:28 27 4
gpt4 key购买 nike

当我启动实例时,我的实例交换文件消失了。

我有一个 Ubuntu ec2 实例,我按照 https://help.ubuntu.com/community/SwapFaq 上的“添加交换文件的四步流程”说明进行操作。 :

sudo dd if=/dev/zero of=/mnt/512MiB.swap bs=1024 count=524288
sudo chmod 600 /mnt/512MiB.swap
sudo mkswap /mnt/512MiB.swap
sudo swapon /mnt/512MiB.swap

然后我更改了/etc/fstab 以包括:

/mnt/512MiB.swap  none  swap  sw  0 0

由于我使用的是更大的交换,这个过程需要一些时间,而且我不想每次开始时都这样做。我宁愿支付存储费用。但是,当我启动实例时,交换消失了。如果我输入“top”,则该实例没有正在使用的交换文件。

我应该做什么?

最佳答案

Amazon EC2您正在使用的实例有 EBS支持Root Device Storage ,全部EC2 instance types还有EC2 instance storage (也称为临时存储)也可供使用,较小的实例类型(例如 m1.small 和 c1.medium)将其附加并安装在 /mnt 默认情况下为偶数(较大的则不然!)。

需要注意的此存储类型最重要的特征是,实例存储卷上的数据仅在关联的 Amazon EC2 实例的生命周期内持续存在

这个说法现在有点误导,因为它也适用于停止 EBS 支持的实例(但不是重新启动),即当您停止该实例时,临时卷将安装在 /mnt 被分离并删除,存储在那里的所有数据都会丢失,当然包括您的交换文件;再次启动实例后,将附加一个新的临时卷并将其安装在 /mnt 处。

解决方案

如果您确切知道自己在做什么,您仍然可以使用 EC2 实例存储(数量充足且免费)(请参阅下面的背景部分),例如它是严格临时数据或任何可以根据需要轻松重新创建的数据(例如缓存)的完美选择。

当然,交换文件也符合此要求,因此您只需使用问题中概述的命令创建一个脚本,并在实例启动时执行它以重新创建交换文件。不过,您应该设置一个防护措施,因为实例存储可以在重新启动后继续存在,即您不需要也不应该在重新启动时重新创建交换文件,只需进行真正的停止/启动周期即可。

<小时/>

背景

首次引入 Amazon EC2 时,实例存储曾经是唯一的存储选项,但幸运的是,Amazon Elastic Block Store (EBS) 解决了由此产生的日常使用的严重限制。您也相应地使用。 Eric Hammond 最近提供了一个很好的总结为什么 You Should Use EBS Boot Instances on Amazon EC2 ,讨论这个主题:

If you are just getting started with Amazon EC2, then use EBS boot instances and stop reading this article. Forget that you ever heard about instance-store and accept my apology that I just mentioned it. Once you are completely comfortable with using EBS boot instances on EC2, you may (or may not) want to come back here and read why you made a good decision.

关于amazon-ec2 - 当停止 ebs 支持的实例时,交换会消失。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9301184/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com