美文网首页AWS相关
如何扩容用LUKS加密的EBS卷上的分区(Linux系统)

如何扩容用LUKS加密的EBS卷上的分区(Linux系统)

作者: Judy_cf13 | 来源:发表于2018-12-11 13:40 被阅读0次

    背景:项目组的一个数据库由于种种原因搭建在EC2实例上的,而随着数据量的不断增加,最开始定义的EBS卷大小已经不能满足生产环境的需求;存储数据的卷非根卷;存储数据的卷使用LUKS加密。

    策略:对存储数据的卷进行EBS扩容

    步骤:

    1)对要进行操作的实例的所有卷保存快照, 这一步可以在AWS console上进行

    保存快照

    2)停止实例,直接修改附加的卷的大小或者使用最新的快照生成新尺寸的卷然后附加到实例上。我推荐第二种方式,因为直接修改卷大小,optimize时间会较长,而且如果遇到任何问题,第二种方式还原会比较快。

    方式一:直接修改附加卷大小

    直接修改卷大小 注意state这一栏:available意思是卷可用,未附加到实例上;括号中的百分数是指optimize的进度

    方式二:生成新卷,重新附加到实例(用时较短)

    生成新卷(设置size为想要扩容的大小) detach原先挂载的卷,attach新卷

    3)开启实例并ssh到该实例上,扩展文件系统尺寸

    note:调整前使用 $ sudo lsblk 和 $ sudo df -h 查看系统磁盘信息并记录输出

    1. 调整加密卷使用的分区大小

     $sudo growpart /dev/xvdf 1

    2. 调整加密LUKS卷的大小

    $sudo umount /mount_dir (如果此磁盘正在使用,先中断所有占用的进程 fuser -km /mount_dir )

    $sudo cryptsetup resize volume_name -v  (volume_name是加密卷的名字,不加-v不会有任何的返回文字)

    3. 调整卷的文件系统的大小

    $sudo e2fsck -f /dev/mapper/volume_name

    $sudo ​resize2fs /dev/mapper/volume_name

    $ sudo mount /dev/mapper/volume_name /mount_dir

    4)重启实例,这一步是为了重启一些开机自启动程序,因为第三步关闭了所有相关进程

    参考链接:

    https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recognize-expanded-volume-linux.html

    https://blog.tinned-software.net/increase-the-size-of-a-luks-encrypted-partition/

    作者要说的话:

    如果大家有任何不懂得问题,欢迎留言一起探讨哈~任何相关问题,都可以留言讨论:)

    相关文章

      网友评论

        本文标题:如何扩容用LUKS加密的EBS卷上的分区(Linux系统)

        本文链接:https://www.haomeiwen.com/subject/sreshqtx.html