作家
登录

技术分享阿里云扩容数据盘(Linux 实例)

作者: 来源: 2016-05-05 10:48:21 阅读 我要评论 直达商品

 

扩容数据盘(Linux 实例)

随着业务的增长,您的磁盘容量可能无法满足数据存储的需要,这时您可以扩容磁盘。

本文档介绍的方法只适用于数据盘。如果要扩容系统盘,需要采用更换系统盘的方式。请参考 更换硬盘。

扩容须知

扩容前

  • 建议在扩容磁盘之前   手动创建快照,以备份数据。
  • 磁盘上如果正在执行创建快照的操作,则此时不允许进行扩容操作。
  • 只做磁盘容量的扩容,不做文件系统的扩容。
  • 支持普通盘的扩容,不支持本地盘(本地磁盘、本地 SSD 盘)的扩容。
  • 挂载在实例上的数据盘,只有实例为 运行中 (Running) 或者 已停止 (Stopped) 状态时,才可以进行扩容操作。

扩容后

  • 使用 ECS 控制台或者 Open API 扩容磁盘之后,需要在 ECS 控制台或者使用 Open API 重启实例之后才可以生效。
  • 扩容生效之后的磁盘,仍然需要用户手动格式化扩展的存储空间。

操作步骤

本文档以 Ubuntu 14.04 系统为例,介绍如何进行磁盘扩容。其他 Linux 系统的操作相似。

本实例中,选定最初的磁盘大小为 63 GB,我们将其扩容到 70 GB。

  1. 登录  控制后台。

  2. 单击左侧导航中的 实例。然后选择页面顶部的地域。

  3. 首先进入磁盘列表页面,点击 更多 > 磁盘扩容。注意只有 数据盘 才有该选项。对于 系统盘, 需要通过  更换操作系统 的方式进行扩容。 

  4. 进入扩容页后,填写扩容后的磁盘容量大小,单击 去扩容。 

    也可以直接使用 OpenAPI 进行扩容操作:

     ResizeDisk --DiskId=d-94tomxanq --NewSize=70 
  5. 重启服务器。进入实例列表页面,点击 更多,选择 重启。 
     
    或者使用 OpenAPI 进行重启操作:
     RebootInstance --InstanceId=i-94lw423m7 
  6. 登录到 ECS 实例。

  7. 如果磁盘是之前是 mount 在服务器上的,先 umount 磁盘。

     umount /mnt/dev1 
  8. 删除原有分区并新建分区。如果此前未分区,直接格式化使用,请直接跳到第 9 步。 
    有些用户使用 parted 工具来操作分区,但是 parted 和 fdisk 不能交叉使用的,否则会导致分区的起始扇区不一致的问题。因此删除原有分区建新分区的时候,请按照如下步骤进行操作: 
    1). 使用 fdisk -l 罗列一下分区信息并记录一下即将扩容磁盘的最终容量、起始扇区位置。 
    2). 使用 fdisk 指令,输入 d 来删除原有的分区。 
    3). 依次输入 np1 来新建分区。 
    4). 选择 sector 时,在此示例中直接回车选择默认值,您也可以按照自己的需求来选择。为了保证数据的一致性,First sector 建议和之前的分区保持一致。 
    下面是使用 fdisk的示例:
```  root@iZ94lw423m7Z:~# fdisk /dev/xvdb  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): 1 First sector (2048-146800639, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-146800639, default 146800639): Using default value 146800639  Command (m for help): wq The partition table has been altered!  Calling ioctl() to re-read partition table. Syncing disks.  ``` 


如果在 First sector 这发现位置和之前记录的不一致,说明之前可能使用了 parted 来分区的,那么就停止当前的 fdisk 操作,使用 parted 重新操作。 
使用 parted 指令,输入p罗列当前的分区情况,如有则使用 rm+ 序列号来删除老的分区表,然后使用 unit s 定义起始位置单位使用扇区个数计量,最后使用 mkpart 命令来创建即可,如下图所示。 

9 检查文件系统,并变更文件系统大小。 
使用 e2fsck 的时候由于系统需要检查并订正文件系统元数据,所以速度较慢、耗时较长,请耐心等待。 
使用 e2fsck 和 resize2fs 指令,正确操作情况下,不会造成原有数据丢失的。

``` e2fsck -f /dev/xvdb1 resize2fs /dev/xvdb1 ``` 

10 将扩容完毕的磁盘挂载回原有的挂载点。

``` mount /dev/xvdb1 /mnt/dev1 ``` 

11 用 df -TH 指令可以查看到磁盘的信息。

``` df -TH Filesystem     Type      Size  Used Avail Use% Mounted on /dev/xvda1     ext4       22G  1.4G   19G   7% / none           tmpfs     4.1k     0  4.1k   0% /sys/fs/cgroup udev           devtmpfs  510M  4.1k  510M   1% /dev tmpfs          tmpfs     105M  381k  104M   1% /run none           tmpfs     5.3M     0  5.3M   0% /run/lock none           tmpfs     521M     0  521M   0% /run/shm none           tmpfs     105M     0  105M   0% /run/user /dev/xvdb1     ext4       74G   55M   71G   1% /mnt/dev1  ```

  推荐阅读

  阿里云服务器扩容

一 缘由公司服务器磁盘满了,在扩容的过程中有很多坑,写出来。 扩容前的磁盘情况, /dev/xvdb1 文件系统已经 二 扩容过程可参考 阿里云扩容官方文档 第1步:进入 ECS>>>详细阅读


本文标题:技术分享阿里云扩容数据盘(Linux 实例)

地址:http://www.lgo100.com/jishu/diannao/299869.html

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
我的评论: 人参与评论
验证码: 匿名回答
网友评论(点击查看更多条评论)
友情提示: 登录后发表评论,可以直接从评论中的用户名进入您的个人空间,让更多网友认识您。
自媒体专栏

评论

热度