【问题标题】:Amazon EC2 and EBS disk space problemAmazon EC2 和 EBS 磁盘空间问题
【发布时间】:2011-04-25 09:11:33
【问题描述】:

我在协调 EBS 卷上的可用空间时遇到问题。根据 AWS 控制台,该卷为 50GB,并附加到一个实例。

如果我 ssh 到这个实例并执行 df -h,我会得到以下输出:

已使用的文件系统大小可用使用百分比已安装在 /dev/sda1 15G 13G 3.0G 81% / udev 858M 76K 858M 1% /dev 无 858M 0 858M 0% /dev/shm 无 858M 72K 858M 1% /var/run 无 858M 0 858M 0% /var/lock 无 858M 0 858M 0% /lib/init/rw

我对 AWS 很陌生。我将此解释为“连接了一个设备,它有 15GB 的容量。更重要的是,你的空间快用完了!”

谁能指出控制台中公布的空间与实例上显示的空间之间存在明显差异的原因?

在此先感谢

S

【问题讨论】:

    标签: amazon-ec2 amazon-web-services diskspace amazon-ebs


    【解决方案1】:

    在 Ubuntu 上,用于扩展文件系统。

    查找块设备:

    blkid
    

    在我的例子中,类型是 TYPE="ext4"。

    调整磁盘卷的大小:

    sudo resize2fs /dev/xvdf
    

    【讨论】:

      【解决方案2】:

      这是因为,“在您增加 EBS 卷的大小后,您必须使用文件系统特定的命令将文件系统扩展到更大的大小。您可以在卷进入优化后立即调整文件系统的大小状态。”,没有反弹一个实例。

      我今天刚好遇到同样的问题,我能够解决它,

      1. 找出文件系统的类型, $ cat /etc/fstab

      2. 遵循此 AWS 文档,该文档准确记录了在调整 EC2 实例的卷大小后扩展 linux 分区/FS 的步骤。

        Extending a Linux File System After Resizing a Volume

      【讨论】:

        【解决方案3】:

        只有重启实例才能解决我的问题

        之前:

        /dev/xvda1 8256952 7837552 0 100% / udev 299044 8 299036 1% /dev tmpfs 121892 164 121728 1%/运行 无 5120 0 5120 0% /运行/锁定 无 304724 0 304724 0% /run/shm

        现在

        /dev/xvda18256952 1062780 6774744 14% / udev 299044 8 299036 1% /dev tmpfs 121892 160 121732 1%/运行 无 5120 0 5120 0% /运行/锁定 无 304724 0 304724 0% /run/shm

        【讨论】:

          【解决方案4】:
          【解决方案5】:

          也许原来的 15 GB 卷被克隆成一个 50 GB 的卷,但后来没有调整大小?

          请参阅本教程了解如何克隆和调整大小:How to increase disk space on existing AWS EC2 Linux (Ubuntu) Instance without losing data

          希望对您有所帮助。

          【讨论】:

            【解决方案6】:

            这是最简单的方法...

            假设您使用的是 linux AMI,在您的情况下,您有一个简单的方法来增加文件系统的大小:

            1) 停止实例 2)分离根卷 3) 对卷进行快照 4) 使用新大小从快照创建一个新卷 5)将新卷附加到与原始卷相同的位置的实例 6)启动实例,停止除ssh之外的所有服务,并将根文件系统设置为只读 7)如果需要,扩大文件系统(使用例如resize2fs)和/或分区 8) 重启

            您也可以启动一个新实例并映射实例存储,或者您可以结合前面的两个步骤创建一个新的 ami。

            【讨论】:

              【解决方案7】:

              您的剩余空间默认挂载在 /mnt。

              【讨论】:

                【解决方案8】:

                是的,问题很简单。卷只与实例关联,但不挂载。

                在 AWS 控制台上检查它挂载的驱动器 - 很可能是 /dev/sdf

                然后(在 ubuntu 上):

                sudo mkfs.ext3 /dev/sdf
                sudo mkdir /ebs
                sudo mount /dev/sdf /ebs
                

                第一行格式化卷 - 使用 ext3 文件系统类型。这是相当标准的——但根据您的使用情况(例如应用服务器、数据库服务器等),您还可以选择另一个,例如 ext4xfs

                第二个命令创建一个安装点,第三个命令将其安装到其中。这意味着实际上,新卷将位于/ebs。它现在也应该出现在df 中。

                最后但并非最不重要的一点是,也许还可以在 /etc/fstab 中添加一个条目以防止重启。

                【讨论】:

                • 我可以看到 df 将 /dev/sda1 中的设备列为 15GB,在 AWS 控制台中它说设备安装在 sda1 并且为 50GB
                • 这很奇怪。这是您的根设备还是另一个 15 GB EBS 卷?
                • 它为实例增加了更多磁盘空间,但没有增加逻辑磁盘空间。
                • Simon,我也有同样的问题,它显示的尺寸不对。有什么帮助吗?
                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2015-12-30
                • 1970-01-01
                • 1970-01-01
                • 2014-07-29
                • 1970-01-01
                • 2017-11-18
                相关资源
                最近更新 更多