我对亚马逊的EC2和EBS服务印象深刻。我想知道是否可以增加EBS卷。
例如:如果我有50 GB的音量且开始没有空间,我可以在需要时将其提升到100 GB吗?
答案 0 :(得分:103)
答案 1 :(得分:44)
如果需要,您不能简单地“碰上”更多空间,但您可以使用快照调整分区大小。
步骤:
查看http://aws.amazon.com/ebs/ - EBS快照:
快照还可用于实例化多个新卷, 扩展卷的大小或移动 可用区域中的卷。 创建新卷时,有 基于的创建它的选项 现有的Amazon S3快照。在那里面 场景,新卷开始于 原始卷的精确复制品。 通过可选地指定不同的 体积大小或不同 可用区,此功能 可以用来增加 现有卷的大小或 在new中创建重复的卷 可用区域。如果你选择 使用快照调整音量大小, 你需要确定你的文件系统 或者应用程序支持调整大小 设备
答案 2 :(得分:22)
我遵循了所有答案,所有方面都缺少了一些东西。
如果您按照这些步骤操作,则可以增加EBS卷并保留数据(这不适用于根卷)。为简单起见,我建议使用AWS consule创建快照,......您也可以使用AWS命令行工具来实现。
我们在这里没有触及根卷。
转到您的AWS控制台:
SSH到您的实例:
$ sudo fdisk -l
这给你的东西:
Disk /dev/xvdf: 21.5 GB, 21474836480 bytes
12 heads, 7 sectors/track, 499321 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd3a8abe4
Device Boot Start End Blocks Id System
/dev/xvdf1 2048 41943039 20970496 83 Linux
记下开始和 Id 值。 (在这种情况下为2048和83)
使用fdisk,删除分区xvdf1并创建一个完全从同一个块开始的新分区(2048)。我们将给它相同的Id(83):
$ sudo fdisk /dev/xvdf
Command (m for help): d
Selected partition 1
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1):
Using default value 1
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039):
Using default value 41943039
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 83
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
此步骤在此处解释清楚:http://litwol.com/content/fdisk-resizegrow-physical-partition-without-losing-data-linodecom
差不多完成了,我们只需要挂载卷并运行resize2fs:
安装ebs卷:(我的是/ mnt / ebs1)
$ sudo mount /dev/xvdf1 /mnt/ebs1
并调整大小:
$ sudo resize2fs -p /dev/xvdf1
resize2fs 1.42 (29-Nov-2011)
Filesystem at /dev/xvdf1 is mounted on /mnt/ebs1; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
Performing an on-line resize of /dev/xvdf1 to 5242624 (4k) blocks.
The filesystem on /dev/xvdf1 is now 5242624 blocks long.
ubuntu@ip-xxxxxxx:~$
完成!使用df -h
验证新尺寸。
答案 3 :(得分:19)
只要你有几分钟的停机时间,Eric Hammond写了一篇关于在正在运行的EBS实例上调整根磁盘大小的好文章:http://alestic.com/2010/02/ec2-resize-running-ebs-root
答案 4 :(得分:9)
所有伟大的推荐,我想我会添加我发现的这篇文章,它与使用Amazon Web UI工具扩展Windows Amazon EC2 EBS实例以执行必要的更改有关。如果您不习惯使用CLI,这将使您的升级更容易。
http://www.tekgoblin.com/2012/08/27/aws-guides-how-to-resize-a-ec2-windows-ebs-volume/
感谢TekGoblin发表这篇文章。
答案 5 :(得分:5)
您现在可以通过AWS管理控制台执行此操作。该过程与其他答案中的过程相同,但您不再需要转到命令行。
答案 6 :(得分:4)
BTW:与物理磁盘一样,使用LVM可能很方便;例如:
http://www.davelachapelle.ca/guides/ubuntu-lvm-guide/ http://www.centos.org/docs/5/html/Cluster_Logical_Volume_Manager/
大优势:它允许动态添加(或删除)空间。
它也可以在实例之间轻松移动。
注意事项:
答案 7 :(得分:4)
我的步骤:
使用上述快照创建具有更大磁盘空间的新卷。不幸的是,创建快照的aws控制台上的UI几乎无法使用,因为它列出了aws上的所有快照。使用命令行工具要容易得多,如下所示:
ec2-create-volume -s 100 --snapshot snap-a31fage -z us-east-1c
从实例
你完成了!
除了上面的步骤3,您可以使用aws管理控制台执行所有操作。
此处提及的注意事项:
https://serverfault.com/questions/365605/how-do-i-access-the-attached-volume-in-amazon-ec2
ec2实例上的设备可能是/ dev / xv *,而aws web控制台告诉你它是/ dev / s *。
答案 8 :(得分:3)
对Windows操作系统使用命令“diskpart”,请看这里:使用http://support.microsoft.com/kb/300415 以下是我对非根磁盘(基本非动态磁盘)执行的步骤
拍下快照后,卸下旧的EBS卷(比如600GB)并创建一个更大的EBS卷(比如说1TB)并安装这个新的EBS卷 - 你必须让Windows知道调整大小(从600GB到1TB)所以在命令提示符下(以管理员身份运行)
的Diskpart.exe
选择disk = 9
选择音量= Z
延伸
[我的磁盘9,标有Z的卷,是一个大小为1TB的卷,由大小为600GB的ec2快照创建 - 我想将600GB调整为1TB,因此可以按照上述步骤执行此操作。]
答案 9 :(得分:0)
如果您的操作系统支持,我强烈推荐所有EBS卷的逻辑卷管理器(LVM)。 Linux发行版通常都有。这有几个原因。
可以实时调整逻辑卷的大小和移动,因此您可以只添加创建另一个更大的EBS卷,而不是整个脱机快照,而不是需要停机时间,将其作为物理卷添加到LVM池中(PV),将逻辑卷(LV)移动到它,从池中删除旧的物理卷,并删除旧的EBS卷。然后,您只需调整逻辑卷的大小,并在其上调整文件系统的大小。这根本不需要停机时间!
它从您的“物理”设备中抽象出您的存储空间。在不需要停机或更改mountpoints / fstab的情况下跨设备移动分区非常方便。
如果亚马逊能够实时调整EBS卷的大小,那将会很不错,但是使用LVM并不是必需的。
答案 10 :(得分:0)
如果您的根卷是xfs文件系统,则运行此命令xfs_growfs /