虚拟I/O服务(VIOS)和动态分区迁移介绍 刘峻峰, IBM i 系统管理业务架构师 IBM中国系统与科技研发中心
议程 IBM i 分区迁移介绍 IBM i 分区迁移客户实例 IBM i 分区迁移实施 虚拟 I/O 服务器 (VIOS) 介绍 规划 验证 分区迁移对系统的影响:应用程序,PowerHA,5250会话 授权 未来增强 虚拟 I/O 服务器 (VIOS) 介绍 什么是 VIOS 为什么要使用 VIOS
IBM i 分区迁移 IBM i 7.1 自 TR4 开始支持在两个 Power 系统之间迁移逻辑分区,参与分区迁移的两个 Power 系统分别称为源系统和目标系统。 按照逻辑分区在迁移前的状态,IBM i 分区迁移分为 3 种类型: 活动分区迁移:将处于运行状态的分区从一台物理机器上迁移到另一台物理机器上,同时不会打断分区上正在运行的操作系统和应用程序 非活动分区迁移:将关闭状态的分区转移到另一个系统上 暂挂分区迁移:逻辑分区可以暂停运行 (暂挂),以及从暂挂中恢复运行。这种迁移方式将处于暂挂状态的分区迁移到另一个系统上。迁移完成后,可以让它在目标系统上恢复运行
分区迁移的应用 同过去相比,减少计划内宕机、IT 安全性和弹性对于提高 IT 厂商的服务水平而言显得更加重要 资源集成 资源平衡 例如将工作负载统一移动到一个 的系统 资源平衡 例如将工作负载移动到比较空闲 (工作负载较轻) 的系统上。可用于性能管理和能源管理 减少计划内的停机 系统维护/升级,可在不同系统之间迁移分区,保证 IBM i 分区持续可用 减少计划外意外停机 在收到硬件报警时,仍然能够维持分区的运行 IBM i 未来云计算重要特性 VMControl 系统池支持的基础
动态分区迁移 (LPM)
软件和硬件要求 软件 HMC/固件 Version 7 release 7.5 固件 service pack 730_51, 740_40 及以上 PowerVM 企业版 VIOS 2.2.1.4 操作系统 IBM i 7.1 TR4 I/O 所有 I/O 都由 VIOS 提供 VSCSI, NPIV, VE 外部存储 源系统和目标系统连接到相 同的存储系统 Power 7 tower / rack 硬件 源系统和目标系统位于同一个以 太网
IBM i 分区迁移 – 最小设置要求 被迁移的分区上不得独占物理的 I/O 适配器 源系统和目标系统必须满足以下条件 目标系统: 两个系统上各至少有一个 VIOS 分区配置为移动服务分区 (Mover Service Partition) 定义并且能够访问同一个 VLAN 逻辑内存块 (LMB) 的大小相同 两个系统上的 VIOS 能够访问被迁移分区使用的所有磁盘,并且所有磁盘的 reserve_policy 属性都设置为 no_reserve 时钟同步 (可使用专用 VIOS 来同步时钟) 目标系统: 没有与被迁移分区同名的分区 不能使用电池作为电源 有足够的 CPU 和内存等资源,供迁移过来的分区使用 如果被迁移系统使用双 VIOS 和多路径 (Multi-path) I/O 只有当目标系统也有 2 个 VIOS 时才能提供相同的多路径配置 * 注意: VIOS 上所有的用户定义的虚拟设备的虚拟插槽号必须大于10。这将由HMC强制实施
VIOS – 移动服务分区 (MSP) 仅适用于活动分区迁移 每个 MSP 最多支持 4 个并发的迁移任务 异步提取、传输和安装分区的状态
客户测 试 实 例
软件版本 Power 795 / 780 HMC VIOS IBM i 针对本测试中发现的问题的 PTF 都已经包含在 TR4 中 固件版本 78 (截至2012年5月,支持动态分区迁移的最新固件版本是 87) HMC V7R7.5.0 VIOS 2.2.1.4 IBM i OS V7.1.0 TR4 针对本测试中发现的问题的 PTF 都已经包含在 TR4 中
IBM i 存储虚拟化配置 客户端虚拟 FC 适配器 服务器虚拟 FC 适配器 物理FC 适配器端口
服务器配置 每台 Power 795系统包含: 每台 Power 795 上有8个 VIOS 分区 4个 VIOS 用于 IBM i “客户”系统 2个 VIOS 用于 IBM i “内部”测试系统 2个 VIOS 用于 AIX 生产系统 总共32个 VIOS (4台 Power 795) 每台 Power 795 上有8个 VIOS 分区 每个 IBM i 逻辑分区最多使用 4 个VIOS (每个LUN 有4条路径可达) 在活动分区迁移或暂挂/恢复过程中,当系统自动选择目标 VIOS / 光纤适配器 / 光纤端口时可能会出现问题 测试过程中曾经出现在暂挂/恢复之前和之后,逻辑分区运行在不同的 VIOS 上的情况 (暂挂之前运行在“内部”测试 VIOS 上,恢复之后运行在生产 VIOS 上) 建议提供一个预定义的源系统和目标系统之间的映射表 通过 GUI 可以修改映射表的设置
迁移期间的网络通信量 测试 LPAR 大小 (内存,处理器) ,工作负载和从源系统到目标系统的数据传输量之间的关系
测试总结 测试取得圆满成功!! 一共花费了 5 个星期的时间 活动分区迁移过程中系统崩溃的次数为 0 执行了超过 160 个测试用例 活动分区迁移过程中系统崩溃的次数为 0 IBM 正在解决测试过程中发现的小的 bug 分区迁移过程的耗时在 6 到 25 分钟之间 耗时长短取决于工作负载的大小、内存容量和 VIOS 的性能 测试过程中发现一些有待改进的地方 (LUG 需求)
迁移逻辑分区 – 实施过程 规划 - 检查环境的配置是否符合要求 验证 – 对分区迁移进行验证 迁移 – 按照向导的提示完成动态分区迁移 恢复 – 迁移失败时,恢复原有的分区
环境检查 - VIOS 每个系统上可以有 2 个 MSP, 一共支持 8 个并发的分区迁移 任务
环境检查 – 源分区 被迁移分区上没有 Required 的 VSCSI 适配器
环境检查 – 外部存储 所有的分区 (zonging) 都是针对 VIOS 上的物理 HBA 进行的 确保将 hdisk 的 reserve_policy 属性设 置为 no_reserve (chdev –dev hdiskX -attr reserve_policy=no_reserve)
环境检查 – 处理器池
环境检查 –虚拟 LAN 被迁移分区通过虚拟 LAN 访问网络 必须使用 VIOS 上的共享以太网适配器 (SEA) 桥接到物理网络 必须配置为当迁移完成后,仍然能够与其他的必要的逻辑分区和服务器进行通信 意味着源系统和目标系统上必须都存在被迁移系统使用的 VLAN ID
IBM i 限制条件 逻辑分区的所有磁盘必须都由物理卷支持 逻辑分区不能有虚拟 SCSI 光驱和磁带设备,也不能有 NPIV 连接的磁带设备 激活逻辑分区的分区概要文件不能包含虚拟 SCSI 服务器适配器:不能为其他分区托管 I/O 激活逻辑分区的分区概要文件不能包含由另一个 IBM i 逻辑分区托管的虚拟 SCSI 客户端适配器 不能动态添加虚拟 SCSI 服务器适配器到源分区上 不能动态添加由另一个 IBM i 逻辑分区托管的虚拟 SCSI 客户端适配器到源分区上 逻辑分区不能是一个 alternative error logging 分区。Alternative error logging 分区是 HMC 用来记录错误日志的目标分区 逻辑分区不能收集物理 I/O 的统计信息 逻辑分区不是一个时间参考分区。时间参考分区用于同步两个分区之间的时间。VIOS 将会在迁移过程中自动同步时间
环境检查 – 源分区 如果 IBM i 逻辑分区支持一受限制 IO 方式,那么在验证是否能够实施分区迁移时,如果分区上有下列任何“受限制资源”,则会导致验证失败: 虚拟分区被指定为服务分区 服务器 SCSI 适配器 客户端 SCSI 适配器 BSR 阵列 大页面 是 EWLM 虚拟服务器 是冗余错误路径报告虚拟服务器 LMB 大小不兼容 多个 VASI 适配器 HCA 适配器 是系统概要文件 虚拟 OptiConnect 适配器 物理 OptiConnect 适配器 是故障转移池的成员 已打开 VTERM HMC Firmware 7.5
迁移逻辑分区 – 过程 规划 - 检查环境的配置是否符合要求 验证 – 对分区迁移进行验证 迁移 – 按照向导的提示完成动态分区迁移 恢复 – 迁移失败时,恢复原有的分区
迁移逻辑分区 – 验证 验证:检查是否满足分区迁移的所有要求 选择要验证的 IBM i 分区 Operations -> Mobility -> Validate
分区迁移 – 验证
分区迁移 – 验证
分区迁移 – 验证 HMC HMC 验证步骤 HMC 用户界面上有执行验证操作的链接 验证也是实际迁移过程中的一部分 检查 HMC 到两个 VIOS 的 RMC (Remote Monitoring Control) 连接 检查 HMC 到被迁移分区的 RMC 连接 检查源系统与目标系统的 LMB 大小是否匹配 检查被迁移分区: 没有 “Required” 的物理适配器 只使用外部 LUN 支持活动迁移 (OS 支持) 没有移动服务分区 (MSP) 没有使用屏障同步寄存器 (BSR) 没有使用大页面 处于活动/运行状态 不属于逻辑分区负载组 (Partition workload Group) MAC地址在两个服务器上是唯一的 目标系统上没有同名的逻辑分区 检查正在执行的迁移任务没有超过限制 (每个MSP支持 4 个并发的迁移任务)
分区迁移 – 验证 RMC 没有网络连接 – RMC 不工作
分区迁移 – 验证 源分区 目标分区 检查目标系统上是否有足够的资源 源分区状态信息 源系统 Hypervisor 中的状态信息 处理器、内存、虚拟插槽 共享以太网适配器 (SEA) 是否配置了与被迁移分区匹配的 VLAN 是否有相同的磁盘 UDID (universal Device ID) 源分区状态信息 处理器配置 – 专用/共享,数量和授权 内存配置 – 最小/最大/要求 虚拟适配器配置 源系统 Hypervisor 中的状态信息 分区内存,硬件页表 (HPT),处理器状态 虚拟适配器状态,非易失性存储器,系统时间 (ToD) 逻辑分区配置,资源状态 源系统上的 MSP 通过 VASI 收集状态信息 源系统 MSP 将这些信息发送给目标系统上的 MSP 新的分区 shell 获得原有分区的状态信息 注:状态信息代表了 LPAR 当前的特征 (与 LPAR 的概要文件无关)。已有的概要文件将根据新的虚拟设备映射发生改变
迁移逻辑分区 – 过程 规划 - 检查环境的配置是否符合要求 验证 – 对分区迁移进行验证 迁移 – 按照向导的提示完成动态分区迁移 恢复 – 迁移失败时,恢复原有的分区
分区迁移 – 迁移
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
分区迁移 – 迁移 从逻辑分区的操作中选择“迁移”,按照向导的提示设置迁移的参数
性能考量 活动分区迁移时,逻辑分区的状态从一个系统上被转移到另一个系统上。而在这个过程中,逻辑分区保持运行状态 监测把内存状态传输到目标系统的过程中内存状态发生的改变 在转移足够多的干净页 (在迁移过程中状态未发生改变的内存页) 之前,内存可能会被传输多次 源系统上的内存发生的更新影响传输时间 在迁移之前,减少逻辑分区的内存更新活动 网络速度影响传输时间 如果条件允许,尽量使用专用网络 最低网络速度 1 Gb/秒 推荐在迁移过程中使用链路聚合端口
迁移过程对应用程序的影响 一般来说,应用程序和操作系统不会察觉到逻辑分区被迁移到了另一个系统上 例外情况: 需要识别以下信息的应用程序 系统序列号 LPAR ID 系统 type / model Collection Services: 当逻辑分区开始在目标系统上运行时,Collection Services 的收集作业会开始一个新的收集周期,从而保证在目标系统上记录正确的硬件信息
动态分区迁移和个人通信5250会话 使用动态分区迁移移动一个逻辑分区不会对分区上已有的5250会话产生影响,但是在迁移过程的最后阶段,5250会话的响应时间会出现50毫秒到1.5秒的延迟。这与我们使用 ping 命令观测到的结果是一致的
动态分区迁移和个人通信5250会话 使用动态分区迁移移动一个逻辑分区不会对分区上已有的5250会话产生影响,但是在迁移过程的最后阶段,5250会话的响应时间会出现50毫秒到1.5秒的延迟。这与我们使用 ping 命令观测到的结果是一致的
分区迁移和 PowerHA 目前分区迁移和 PowerHA 是互相独立的功能,相互之间不知道对方的存在,这意味着: 在活动分区迁移的最后阶段,当分区上的工作负载在目标系统上被激活时,TCP/IP 的响应时间会有轻微的延迟 (50毫秒至1.5秒) 用户需要保证 HA 失效检测不要设置得过于敏感,以免 HA 误认为源系统发生失效
IBM i 动态分区迁移 授权 LPM 是从机器到机器:源系统到目标系统 源系统和目标系统必须是客户所在的企业所有的或者租借的 因此客户机器和服务提供者机器之间的分区迁移是无效的 客户在目标系统上取得或者已经拥有必要的处理器激活授权 LPM不附带任何特殊的处理器激活规则和条款,因此需要先行获取处理器激活授权 当逻辑分区被迁移时,整个分区映像 (包括分区上所有的软件) 都会被迁移 Passport Advantage 产品服从“虚拟化容量授权计数规则” (Virtualization Capacity License Counting Rules) 请通过以下链接参阅上述规则 http://www-01.ibm.com/software/lotus/passportadvantage/Counting_Software_licenses_using_specific_virtualization_technologies.html >点击“IBM i”链接 某些 ISV 应用程序产品的部分功能需要使用系统序列号。对于这些产品,ISV 需要评估分区迁移可能带来的影响,并提供必要的补丁和临时产品密钥等
IBM i 动态分区迁移:关于授权的考量 永久移动分区 临时移动分区 与手动把分区迁移到新系统的要求相同 所有标准转让条款和当前转让条件均可适用,即: IBM i OS 授权于机器序列号。如果条件符合,可以获得 IBM i 授权转让 (Entitlement Transfer) IBM i LPP 可以在企业内部永久转移到新的机器上 要求提供授权和密钥 通过LPM 永久移动分区无其它特殊约束 临时移动分区 如果是 CBU: 客户拥有注册的 CBU,临时转移 occur per CBU Ts and Cs,则照常处理 如果所有系统上都已获得软件授权,则不需要特殊的 Ts and Cs:随时随地移动分区 理想情况下,客户希望获得企业级或 pool 级授权,但目前还不能实现
IBM i 动态分区迁移:关于授权的考量 临时移动分区 (续) 如果目标系统尚未获得软件授权: 注: 以下适用于 IBM i 操作系统和 IBM i 许可程序产品 (LPP) 的标准集合 客户可以临时将分区移动到目标系统上 70 天 活动分区:从迁移完成时开始计时 分活动或者暂挂分区:从分区变为活动状态时开始计时 注:70 天期间内会发出提醒消息 要求: 客户必须已在源系统上购买了软件授权 源系统上的处理器组不得小于目标系统上的处理器组 70 天后,客户必须: 获取目标系统上的授权,或 将授权转移回源系统,或 将授权移动到其它目标系统
未来增强 支持 32 个并发迁移 (16 / MSP) 在 PureFlex 上支持 IBM i 动态分区迁移 在 Blade 上支持 IBM i 动态分区迁移 VMControl 支持远程重启 (Remote Restart) 命令行支持选择物理适配器
议程 虚拟 I/O 服务器 (VIOS) 介绍 IBM i 分区迁移 什么是 VIOS 为什么要使用 VIOS 分区迁移的应用 测试实例 分区迁移的前提条件:软件,硬件 配置分区迁移 分区迁移的过程:验证,迁移 性能考量 分区迁移对系统的影响 授权 未来增强
什么是 VIOS 特殊用途的逻辑分区 首次发布于2012年 自2008年开始支持 IBM i 6.1版本 支持高级分区虚拟化特性 首次发布于2012年 自2008年开始支持 IBM i 6.1版本 通过 PowerVM 获得 VIOS 的使用许可
为什么要使用 VIOS I/O 容量的利用 存储分配的灵活性 以太网灵活性 内存共享 暂挂/恢复 分区迁移
Power 7 / Power 7+ / Power (未来):I/O 容量 GB/秒 I/O 带宽 GB/核心 最大 I/O 插槽数目 I/O 插槽数/核心 Power 795 (9119-FHB P7) 640 2.5 Power 595 (9119-FHA P6) Power 780 (7179-MHB P7) 236 3.7 184 2.9 Power 770 (9117-MMB P7) Power 570 (9117-MMA P6) 110 3.4 212 6.6 IBM 的前瞻性战略 系统级的 I/O 带宽峰值和持续值,以及每核心的 I/O 带宽均值正在飞速增长 每个核心的平均 I/O 插槽数正在减少 业界的 I/O 技术正在向高功能、高带宽的适配器演进 建立在虚拟化技术基础上的简化系统管理,减少系统插槽数的策略
Power 系统上的 I/O 虚拟化 使用专用适配器的 I/O 总线虚拟化 基于 VIOS 的适配器虚拟化
IBM i + VSCSI (标准) 存储虚拟化 将存储分配给 VIOS 分区 在 VIOS 中将 hdisk (LUN) 映 射到客户端分区对应的 vhost 在外部存储设备和 VIOS 上都 要进行存储管理和分配 最大支持 2TB – 512 字节的逻 辑磁盘 每个 VSCSI 适配器最多支持16 个磁盘
IBM i + VSCSI 文件支持的磁盘 将存储分配给 VIOS 分区 在 VIOS 中将逻辑卷支持的虚 拟磁盘或文件支持的虚拟磁盘 映射到客户端分区对应的 vhost 支持更多粒度的虚拟磁盘 最大支持 2TB – 512 字节的逻 辑磁盘 不支持暂挂/恢复和迁 移
IBM i + NPIV (虚拟光纤通道) Hypervisor 为每条虚拟纤通 道分配 2 个唯一的 WWPN Hostconnect 创建为 iSeries hosttype DS8000 分配给 iSeries hostconnect 的 LUN 的扇区大小必须为520字节 支持已有的直连 LUN 的迁移 支持 DS8100, DS8300, DS8700, DS5100 和 DS5300 注:为使用光纤通道,必须使用支持 NPIV (N_port) 的交换机 来连接 VIOS 和 DS8000
使用冗余 VIOS 的 NPIV 连接 步骤1:配置虚拟和物理 FC适配器 - 建议创建冗余 VIOS 或者互相分离 步骤2:配置 SAN 光纤通道和存储 - 将 LUNs 分配给虚拟 WWPNs - 经过 2 个 VIOS 分区有 2 条路径可 以到达每个 DASD 注:每个 LUN 最多可以配置 8 条路径 不要求所有的路径必须经过不同的 VIOS 分区 IBM i 7.1 TR2 采用了新的多路径 (Multi-path) 算法
IBM PowerVM 虚拟以太网 PowerVM 以太网交换机 共享以太网卡 (SEA) 附加功能 PowerVM Hypervisor 的一部分 在 LPAR 之间移动数据 共享以太网卡 (SEA) VIOS 的一部分 逻辑设备 桥接系统与外部网络之间的通信 附加功能 VLAN aware 外部网络的链路聚合 (link aggregation) SEA 故障切换
PowerVM 活动内存共享 (AMS) 通过在 Power 服务器上提高内存使用率来降低内存成本 支持超额分配逻辑内存,超额部分通过分页 (Paging) 设备提供 内存资源在各个分区之间智能流动,从而提高内存使用效率和灵活性 根据对内存的需求,动态地从共享物理内存池中为各个分区分配内存,从整体上优化内存使用 为具有可变内存需求的分区而设计 要求基于 Power6 和 Power7 处理器的系统以及 PowerVM 企业版软件 必须使用 VIOS 为逻辑分区提供虚拟化 I/O
LPAR 暂挂/恢复 – 客户价值 平衡长时间运行的批处理作业占用的系统资源 计划内的断电维护/升级 暂挂/恢复要求: 例如暂挂低优先级或长时间运行的作业,释放它们占用的资源 计划内的断电维护/升级 暂挂/恢复可以用来代替分区迁移,或者和分区迁移协作 与手工关闭并重启数据库相比,暂挂/恢复消耗的时间和工作量更少 暂挂/恢复要求: 所有的 I/O 都是虚拟化的 HMC Version 7 Release 7.3 固件:Ax730_xxx IBM i 7.1 TR2 VIOS 2.2.1.0 FP24 SP2
用户反馈 项目经理: “IBM i 虚拟化环境的表现远远超出了最初的预期。虚拟化模型为资源分配提供了灵活性,这意味着我们可以动态地增加资源以满足系统增长的需要” 公司总裁: “早在过去,很多公司已经认识到了 IBM i 操作系统的优越性,但是需要购买特定的硬件成为了他们选择 IBM i 的障碍。现在,你可以简单地将一个 POWER 6 刀片插入到与 Intel 或者 AMD 刀片相同的机架上,从而使获得最佳方案比以前更加容易”
更多案例 Northgate 英国公司 英国银行 英国保险公司 英国医疗保健供应商 Power Systems 和 Power 6/7 刀片,运行AIX,VIOS,IBM i,DS8100 和DS4800 http://www-01.ibm.com/software/success/cssdb.nsf/cs/STRD-8GXE3S?OpenDocument&Site=copr&ref=crdb 英国公司 Power 720 4-core + VIOS + IBM i + DS3500 + TS3100 P05 软件层 (与使用内部存储的 P10 相对) 英国银行 VIOS 和 P6 570s (升级到 P7 770s) 上的 IBM i, AIX 英国保险公司 Power 570 + IBM i, AIX + DS5000 英国医疗保健供应商 Power 5 + VIOS + IBM i, AIX
有很多个分区?… 客户 A: 客户 B: 客户 C (非生产环境): 客户 D: 客户 E: 1 x 780 + DS8K 60 x IBM i 分区 4 x VIOS,每对 VIOS 支持 30 个分区,NPIV 客户 B: 4 x 795s + DS8K 20+ IBM i 分区 每台系统上 4 个 VIOS,NPIV 每个 IBM i 分区 4 条路径 客户 C (非生产环境): 1 x 720 + V7000 40+ IBM i 分区 2 x VIOS,VSCSI 客户 D: 2 x 595/795s +DS5K, SVC/DS8K 每台系统上 100+ 分区 客户 E: 2 x 780s +DS8K 60+ 分区 6 x VIOS,NPIV
64