Sum*_*ant 28 server 11.04 amazon-ec2
我正在 AWS 云上为我的 Web 服务器运行 Ubuntu 11.04 实例,现在我发现服务器的/分区中没有磁盘空间。df -ah说这个
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.9G 7.8G 97M 99% /
proc 0 0 0 - /proc
none 0 0 0 - /sys
fusectl 0 0 0 - /sys/fs/fuse/connections
none 0 0 0 - /sys/kernel/debug
none 0 0 0 - /sys/kernel/security
none 3.7G 112K 3.7G 1% /dev
none 0 0 0 - /dev/pts
none 3.7G 0 3.7G 0% /dev/shm
none 3.7G 80K 3.7G 1% /var/run
none 3.7G 0 3.7G 0% /var/lock
/dev/xvdb 414G 16G 377G 4% /mnt
Run Code Online (Sandbox Code Playgroud)
现在我已经尝试过这些东西来在/分区上获得一些额外的空间
但我仍然没有足够的空间。此实例类型为具有 8GB EBS 的m1.large。现在我在/dev/xvdb 中有足够的磁盘空间。
有没有办法可以将一些磁盘空间分配给/从/dev/xvdb或任何其他方式。请建议我对此的可能解决方案。是否可以将相同的/dev/xvdb分区与另一个实例一起使用。
Ste*_*pel 26
答案是双重的。
这就是所谓的Amazon EC2实例的临时存储,它的特性与其他地方使用的持久性Amazon EBS存储的特性大不相同。特别是,这种临时存储将在停止/启动周期中丢失并且通常会消失,因此您绝对不想在那里放置任何具有持久价值的东西,即只将临时数据放在那里,您可以轻松地丢失或重建,像交换文件或计算过程中使用的严格临时数据。当然,例如,您可能会在那里存储大量索引,但必须准备在由于任何原因(例如重启、硬件故障等)清除存储后重建这些索引。
这就是所谓的Amazon EBS 支持的EC2 实例的根设备存储,它特别有助于Amazon EBS的灵活性和持久性,即放置在那里的数据相当安全并且可以在实例故障时幸免于难;您可以通过对存储在Amazon S3上的 EBS 卷进行定期快照来进一步提高灵活性和持久性,具有众所周知的 99.999999999% 持久性。
此快照功能使您能够依次解决您的问题,只要您可以将当前的 8GB EBS 根存储 (/dev/xvda1) 替换为您想要的大小。该过程在 Eric Hammond 的优秀文章Resizing the Root Disk on a Running EBS Boot EC2 Instance 中概述:
只要您在 EC2 实例上有一点停机时间(几分钟),就可以使用更大的副本更改根 EBS 卷,而无需启动新实例。
如果您正确地准备了他所描述的步骤(我强烈建议您首先使用废弃的 EC2 实例对其进行测试以熟悉该过程,或者甚至通过定制的脚本将其自动化),您应该能够完成该过程。停机时间只有几分钟。
大多数概述的步骤也可以通过AWS 管理控制台执行,从而避免处理Amazon EC2 API 工具;这归结为:
df -ah
祝你好运!
考虑到这些 EBS 卷的多功能性和易用性,一个额外的选择是将更多 EBS 卷附加到您的实例,并将明显可分离的关注区域移到那里。
例如,我们使用了几个非常重量级的 Java 应用程序,每个应用程序每个版本消耗 1-2GB 存储空间;为了简化版本升级并且通常能够根据我的判断将这些应用程序移动到不同的实例,我将它们分别放置在专用的 EBS 卷上,将它们安装到一个实例并将它们软链接到所需的位置,例如通常/var/lib/<app>/<version>和/usr/local/<app>/<version>.
使用这种方法,我们目前正在运行 EC2 实例,根设备存储仍为其默认大小 8GB(就像您的一样),但有时也最多连接 8 个不同大小 (1-15GB) 的 EBS 卷。
不过,您需要注意潜在的网络性能问题,因为所有这些 EBS 卷都使用相同的 LAN 进行 I/O,这甚至可能会产生各自的性能提升,或者在极端情况下使您的网络饱和 - 所以通常这取决于关于手头的用例和工作负载。
| 归档时间: |
|
| 查看次数: |
44247 次 |
| 最近记录: |