VTD vtscsi6
Status Available
LUN 0x8200000000000000 Backing device hdisk9
Physloc U78A5.001.WIH0402-P1-C6-T1-W5005076303030053-L4011400B00000000
VTD vtscsi7
Status Available
LUN 0x8300000000000000 Backing device hdisk10
Physloc U78A5.001.WIH0402-P1-C6-T1-W5005076303030053-L4011400C00000000
VTD vtscsi8
Status Available
LUN 0x8400000000000000 Backing device hdisk11
Physloc U78A5.001.WIH0402-P1-C6-T1-W5005076303030053-L4011400D00000000
VTD vtscsi9
Status Available
LUN 0x8500000000000000 Backing device hdisk12
Physloc U78A5.001.WIH0402-P1-C6-T1-W5005076303030053-L4011400E00000000 $
图 4:迁移前的 uli14
清单 3:迁移前 uli14 上的虚拟磁盘映射 $ lsdev | grep MPIO hdisk0 Available MPIO Other FC SCSI Disk Drive hdisk1 Available MPIO Other FC SCSI Disk Drive hdisk2 Available MPIO Other FC SCSI Disk Drive hdisk3 Available MPIO Other FC SCSI Disk Drive hdisk4 Available MPIO Other FC SCSI Disk Drive hdisk5 Available MPIO Other FC SCSI Disk Drive hdisk6 Available MPIO Other FC SCSI Disk Drive hdisk7 Available MPIO Other FC SCSI Disk Drive hdisk8 Available MPIO Other FC SCSI Disk Drive hdisk9 Available MPIO Other FC SCSI Disk Drive hdisk10 Available MPIO Other FC SCSI Disk Drive hdisk11 Available MPIO Other FC SCSI Disk Drive hdisk12 Available MPIO Other FC SCSI Disk Drive $ lsdev -virtual | grep -E \$ lsmap -all $
迁移的验证
IVM 在任务列表(如图 5 所示)里面为分区迁移新增了“迁移性”这一个类别,包括“迁移”和“状态”两个选项。使用“迁移“选项,可以验证和发起分区迁移。使用“状态”选项,可以随时查看分区迁移的状态,这样当分区迁移开始后,系统管理员就可以继续其他操作,而不需要等待迁移的完成。
图 5:IVM 任务列表
在使用“迁移”选项前,必须先选择要迁移的分区,而且每次只能选择一个分区。每个分区都是可选的,包括 VIOS uli13 在内,虽然迁移 VIOS 是不恰当的。如果选择了 VIOS,那么 IVM 在验证分区迁移的时候就会报错,从而避免了不恰当的迁移请求。因为对于被选择的分区,管理员可以从任务列表选择多种不同的操作,因此 IVM 无法预先知道是否要进行分区迁移,所以不可能在分区列表里面禁止选择 VIOS 的操作,而是在选择“迁移”功能之后才进行判断。这里我们选择迁移的是 uli13lp1(如图 5 所示),在任务列表里面选择了“迁移”选项后,用户看到的是一个验证和迁移页面(如图 6 所示),其中包含几个字段和按钮。
图 6:验证和迁移页面
字段包括远程 IVM 的主机名(注意,不是目标系统的名称)或 IP 地址,以及登陆该远程系统所需的用户名和密码。有趣的是,远程 IVM 字段还标明了“HMC”字样,这可能意味着将来即使在 HMC 上进行动态分区迁移也不要求两台服务器必须由同一台 HMC 来管理,这样一来,由不同 HMC 管理的服务器之间,以及由 HMC 和 IVM 所管理的服务器之间也可以进行分区迁移,从而增加了分区迁移的灵活性。不过目前的动态分区迁移还不支持这一功能。 按钮用于验证分区迁移和开始分区迁移。HMC 也为分区迁移提供了验证和迁移两个功能,系统管理员可以选择先做验证,然后再开始分区迁移,也可以不使用验证功能,而直接开始分区迁移。由于分区迁移向导其中的一个环节就是进行自动验证,因此无论管理员采用什么方式,HMC 总能保证在迁移开始之前进行验证,尽早发现并提示管理员修复问题,提高分区迁移的效率。相比于 HMC,在 IVM 上进行验证和迁移所需的操作被大大简化了,用户只需要点击“验证”和“迁移”按钮就可以进行分区迁移的验证和开始分区迁移。IVM 上的分区迁移在开始阶段也同样包含了对迁移的验证,如果验证失败了,IVM 停止分区迁移,并报告错误信息。虽然分区迁移会自动进行验证,因此用户可以不用经过验证而直接开始分区迁移,但是还是建议用户在开始迁移之前事先进行验证。
填写完上述字段后,按下“验证”按钮就开始了分区迁移的验证。在验证过程中,IVM 显示一个等待对话框(如图 7 所示),过一小段时间后,验证完成,IVM 显示验证结果。如果验证没有发现问题,那么 IVM 显示“操作已经成功完成”(如图 8 所示);如果发现错误,管理员可以通过 IVM 所显示的错误信息去修复问题,然后再次进行验证。
图 7:分区迁移的验证
图 8:验证结果
开始分区迁移
验证成功后,按下“迁移”按钮就开始进行分区迁移了(如图 9 所示)。分区迁移所需的时间长短视分区物理内存大小,以及系统所承受的压力等因素而定。对分区 uli13lp1 进行的迁移是活动迁移,因此所用的时间通常比 uli13lp2 上的非活动迁移来得长。图 9 所显示
的是 uli13lp1 的迁移状态,用户可以通过该页面监视迁移的进度。该页面还提供了“停止”和“恢复”两个按钮,通过前者,可以取消当前正在进行的分区迁移,通过后者,可以在迁移出现问题后回退迁移过程,修复问题,使系统恢复到正常状态。
图 9:分区迁移的状态
在分区迁移的过程中,系统管理员不必一直监视着迁移状态,可以在 IVM 上继续其他方面的系统维护工作。图 10 和图 11 分别显示的是 uli13 和 uli14 上 IVM“ 查看 / 修改分区 ”页面的内容,可以看到 IVM 正在迁移 uli13lp1,状态栏显示“迁移- 正在运行”,迁移过程在 uli14 创建了新的分区 uli13lp1,使用了相同数量的 CPU 和内存资源。这两幅图是迁移开始时的截图,这时候源系统 uli13 上 uli13lp1 分区的运行时状态还没有被完全迁移到目标系统 uli14,迁移过程还没有停止源分区的运行并激活目标分区,因此在 uli13 上仍旧可以看到 uli13lp1 正常运行时的参考码“Linux ppc64”,而在 uli14 上,uli13lp1 则显示了一个迁移中的中间参考码。类似的,源分区显示了 13.47 天“正常运行时间”和 0.03 个“利用的处理器单元数”,而目标分区因为还没有开始运行,因此不显示这些信息。
图 10:迁移中的 uli13
图 11:迁移中的 uli14
分区迁移后
当分区迁移成功后,我们可以在 uli13 和 uli14 上分别看到如图 12 和图 13 所示的分区状态。在源系统 uli13 上,迁移过程停止并删除了 uli13lp1,因此该分区不复存在,只剩下 VIOS 和分区 uli13lp2。在目标系统 uli14 上,迁移过程创建并激活了 uli13lp1,因此可以看到该分区正在运行中:首先分区状态由“迁移- 正在进行”变成了“正在运行”,其次参考码也从不断变化的中间值变成“Linux ppc64”,最后正常运行时间和利用的处理器单元数也显示出来了。这表明 uli13lp1 已经从源系统 uli13 成功的迁移到目标系统 uli14 上了。
再看看虚拟磁盘的映射情况。在 uli13 上,uli13lp2 的虚拟磁盘映射仍然存在,而 uli13lp1 的虚拟磁盘映射则被解除掉了,甚至它所占用的虚拟设备 vhost0 和
vtscsi0/1/2/3/4 也被删除掉了(见清单 4)。在 uli14 上则增加了 uli13lp1 的虚拟磁盘映射,5 个 SAN 磁盘 hdisk2/5/6/7/8 被映射给了该分区,显然这与原来的磁盘映射关系是相同的,同时虚拟设备 vhost0 和 vtscsi0/1/2/3/4 也被创建并用于虚拟磁盘映射(见清单 5)。通过对比清单 5 和清单 2,我们可以发现两个系统上映射给 uli13lp1 的 SAN 磁盘都是一样的,甚至虚拟设备的名称也都是一样的。不过虚拟设备的名称并不要求必须是一样的,这要看迁移前目标系统上虚拟设备资源的使用情况,如果源系统上所使用的虚拟设备名称在目标系统上已经被占用了,那么分区迁移时只能使用其他的设备名称,只要保证磁盘映射关系相同就可以了。在本文所举的例子中,由于 uli14 在迁移前除了 VIOS 外没有其他分区,uli13lp1 在 uli13 上所占用的虚拟设备名称在 uli14 上并没有被使用,因此迁移过程在目标系统上创建的虚拟设备也使用了相同的名称。
图 12:迁移后的 uli13
清单 4:迁移后 uli13 上的虚拟磁盘映射 $ lsdev | grep MPIO hdisk0 Available MPIO Other FC SCSI Disk Drive