P2V之后的磁盘扩容新思路
背景:
原先的物理机环境多是若干块物理磁盘经过RAID卡进行了RAID5之后的虚拟磁盘组,这样我们在操作系统内看到的也就是一块完整的磁盘。我们会在上面进行分区,然后格式化后以便使用。

Figure 1这个时候的磁盘看起来一般会是这样的
这种磁盘结构使用了分区进行了存储结构的规划,但是在虚拟化环境中,这样的磁盘结构会给每个独立分区进行扩容带来各种不便,比如我们只能相对方便一些的对E盘进行扩充,而C盘和D盘的扩充就会变得非常麻烦。
思路变更:
有了上面诸多不便,在P2V之后的虚拟化环境中我们可以通过镜像卷方法快速将这些同一磁盘中的若干分区进行拆解。
操作步骤:
1、 需要确定需要拆解的分区个数,如上图就是两个(D盘分区和E盘分区)。
2、 接着在虚拟化平台中添加两块独立磁盘。
3、 分别对D盘和E盘进行镜像。
a) 
Figure 2在Windows磁盘管理内选择D盘,右键选择添加镜像
b) 
Figure 3选择需要镜像D盘的新磁盘,实例为磁盘1
c) 
Figure 4使用这个功能需要开启动态磁盘功能,我们点击是进行人工确认
d) 
Figure 5确认之后系统开始进行同步功能,该过程全自动,无需人工干预
e) 
Figure 6同理,我们进行E盘的镜像,选择镜像磁盘,实例为磁盘2
f) 
Figure 7镜像过程开始,可以看到D盘与E盘同时在进行镜像
g) 
Figure 8由于这种同步过程使用的是对当前卷的全读,全写,因此会将未使用的空间也一并镜像到新的磁盘中,测试中可见E盘的空间很大耗时也多
h) 为了避免上述的问题发生,因为很多用户场景都是用的是精简置备,因此为了节省空间,我们需要对磁盘进行一下压缩后镜像
i. 
Figure 9扩充磁盘之后新增加两个分区,重复上面的场景,分别标记成F盘和G盘,因为是新格式化的,实际消耗并不多
ii. 
Figure 10对F盘进行压缩卷操作
iii. 
Figure 11系统自动计算可压缩量,可以看到4GB空间可被压缩
iv. 
Figure 12随后我们对新的F盘进行添加镜像操作
v. 操作步骤和上面场景一样,G盘也如此操作一下
vi. 
Figure 13同步速度很快,同步容量为压缩后的大小
4、 确认镜像完毕之后,断开镜像的复制关系。
a) 这一步很关键,一定要选择中断镜像卷,切不可选择删除镜像!!!
b) 
Figure 14对D盘进行断开镜像
c) 
Figure 15手工确认告警信息
d) 如法炮制对其他卷也这般操作
e) 由于Windows对盘符的识别一向是先磁盘,再分区序号的,因此在这个场景下我们可以做到数据迁移的0停顿
f) 
Figure 16满足预期的数据迁移,对需要扩充的卷此时可以扩充,原来的卷就可以移除了(可全部扩充给C盘)
5、 扩充期望扩充的卷
a) 
Figure 17选择D盘进行扩展卷操作
b) 
Figure 18启动扩展向导,因为我们此次的场景最小单位是单个磁盘而非多个磁盘,因此系统默认给的就是D盘现在所在的磁盘1
c) 
Figure 19一路下一步之后100GB的空间已经被D盘全部使用
d) 其他期望扩充的盘符依次这般操作
6、 最终完成预期
a) 
Figure 20完成预期的卷扩容
小结:
此次的扩容思路来自于微软磁盘管理的卷镜像技术,使用该技术的最小单位就是卷,而且该技术依赖动态磁盘。
这种思路对现有业务不会带来任何停顿影响,文件权限也保持完全一致。
数据无价,建议操作前对相应业务数据进行备份。或对当前虚拟主机克隆做副本。
同时关于动态磁盘和基本磁盘各有利弊,使用的时候请根据现有环境充分了解其不同之后再进行相关操作。
网上流行的动态磁盘转基本磁盘也是有工具的,大家有兴趣可以自己操作一下试试。

Figure 21上述场景可顺利转换成基本磁盘
-=EOB=-
P2V之后的磁盘扩容新思路的更多相关文章
- VMware下对虚拟机Ubuntu14系统所在分区sda1进行磁盘扩容
VMware下对虚拟机Ubuntu14系统所在分区sda1进行磁盘扩容 一般来说,在对虚拟机里的Ubuntu下的磁盘进行扩容时,都是添加新的分区,而并不是对其系统所在分区进行扩容,如在此链接中http ...
- SQL Server 磁盘空间告急(磁盘扩容)转载
一.背景 在线上系统中,如果我们发现存放数据库文件的磁盘空间不够,我们应该怎么办呢?新买一个硬盘挂载上去可以嘛?(linux下可以直接挂载硬盘进行扩容),但是我们的SQL Server是运行在Wind ...
- 【转载】CentOS LVM磁盘扩容
转自:http://blog.sina.com.cn/s/blog_8882a6260101cpfs.html EXSI5.1主机有一个linux虚拟机,系统是centos运行httpd服务,因为是多 ...
- centos6.5磁盘扩容
3台虚拟机都是20G磁盘,用着用着发现不够了,先扩容了一台,各种百度...各种坑,每个人的情况不一样,发现不一样的地方最后立即百度查看.一台扩容成功后,打算再扩容一台,目的是留一个记录.(我是用xsh ...
- ECS Linux服务器xfs磁盘扩容
ECS Linux服务器xfs磁盘扩 ECS Linux服务器xfs磁盘使用阿里云官方提供的磁盘扩容方法扩容会有报错: [root@iZ28u04wmy2Z ~]# e2fsck /dev/xvdb1 ...
- es 加磁盘扩容
elasticsearch多磁盘扩容 1.问题 由于早前elasticsearch集群数据存储路径只配置了一个,所以某天磁盘突然爆满,集群差点当机.需重新配置多路径存储路径,因为在生产环境,得保证 ...
- VMware 虚拟机快照、克隆、磁盘扩容
1. 快照 快照是虚拟机某个时间点上完整系统的镜像,可以在虚拟机内部通过快照文件恢复系统到之前的节点. 拍摄快照: 恢复快照: 2. 克隆 克隆是原始虚拟机全部状态的一个拷贝,是脱离原始虚拟机独立存在 ...
- 故障处理:磁盘扩容出错:e2fsck: Bad magic number in super-block while trying to open /dev/vdb1
按照阿里云官网教程对云服务器进行磁盘扩容,使用fdisk重新分区,最后使用e2fsck和resize2fs来完成文件系统层面的扩容 在执行“e2fsck -f /dev/vdb1”命令时报错,如果你的 ...
- Linux磁盘扩容
Linux磁盘扩容 fdisk -l # 查看硬盘信息 lvextend -L +1G /dev/mapper/vg00-lvroot 或者 lvextend -l +%FREE /dev/mappe ...
随机推荐
- 【每日一linux命令4】常用参数:
下面所列的是常见的参数(选项)义: --help,-h 显示帮助信息 --version,-V ...
- ASP.NET Core 折腾笔记二:自己写个完整的Cache缓存类来支持.NET Core
背景: 1:.NET Core 已经没System.Web,也木有了HttpRuntime.Cache,因此,该空间下Cache也木有了. 2:.NET Core 有新的Memory Cache提供, ...
- iOS开发之ReactiveCocoa下的MVVM(干货分享)
最近工作比较忙,但还是出来更新博客了,今天给大家分享一些ReactiveCocoa以及MVVM的一些东西,干活还是比较足的.在之前发表过一篇博文,名字叫做<iOS开发之浅谈MVVM的架构设计与团 ...
- CRL快速开发框架系列教程十三(嵌套查询)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
- 玩转spring boot——结合jQuery和AngularJs
在上篇的基础上 准备工作: 修改pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=&q ...
- 你所能用到的BMP格式介绍
原理篇: 一.编码的意义. 让我们从一个简单的问题开始,-2&-255(中间的操作符表示and的意思)的结果是多少,这个很简单的问题,但是能够写出解答过程的人并不 多.这个看起来和图片格式没有 ...
- 【夯实PHP基础】PHP数组,字符串,对象等基础面面观
本文地址 分享提纲 1.数组篇 2.字符创篇 3.函数篇 4.面向对象篇 5.其他篇 /*************************** 一.数组篇 Begin***************** ...
- maven 中snapshot版本和release版本的区别
maven中的仓库分为两种,snapshot快照仓库和release发布仓库.snapshot快照仓库用于保存开发过程中的不稳定版本,release正式仓库则是用来保存稳定的发行版本.定义一个组件/模 ...
- WEB安全隐患
org.apache.commons.lang.StringEscapeUtils 进行输入框内容处理 [StringEscapeUtils.escapeSql(str);StringEscapeUt ...
- springMvc的日期转换之二
方式一:使用@InitBinder注解实现日期转换 前台页面: 后台打印: 方式二:处理多种日期格式类型之间的转换 采用方式:由于binder.registerCustomEditor(Date.cl ...