Power服务器上的KVM虚拟化技术(PowerKVM)
PowerKVM是什么?
Linux自身内置了一套虚拟机管理程序(libvirt)以及基于内核的虚拟机 (KVM)。之前,KVM主要支持是X86处理器架构,已经成为主流的开源虚拟化技术实现方案。现在,经过IBM工程师的努力,KVM也添加了针对Power处理器架构的支持,并针对Power处理器架构对KVM进行了深度优化。因此,用户可以轻松地采用开源虚拟化技术方案来管理IBM的 Power服务器,这就是Power KVM。
IBM PowerKVM的初始版本已经于2014年6月对外正式发布,可部署在S812L和S822L两种搭载Power8处理器的服务器上。Linux发行版如RedHat、SUSE 和 Ubuntu均可以轻松地部署在PowerKVM 环境中。
IBM PowerKVM安装介质可从IBM Fix Center(http://www-933.ibm.com/support/fixcentral/)上自由下载。
KVM虚拟化技术架构
KVM代表基于内核的虚拟机,在Linux中以可插拔模组的形式存在,针对CPU和内存进行虚拟化。
QEMU代表快速仿真器,在KVM虚拟化中负责针对I/O输入输出设备的虚拟化。
在KVM架构中,客机操作系统(Guest OS) 本质上为Linux宿主机(Host)上的一个普通进程,和宿主机上其它的进程一样为Linux的任务调度器所调度。
KVM最开始在x86处理器架构上开发,采用如Intel VT和AMD-V技术进行硬件辅助虚拟化。
PowerKVM虚拟化技术架构
在技术架构上,PowerKVM完全遵照KVM的技术架构进行实现。
在刷入OpenPower抽线层(OPAL)固件的Power8服务器上安装PowerKVM宿主机系统,该系统为Linux的变形版,搭载KVM和Qemu,以及用户虚拟化管理的Libvirt库和配套管理工具。
目前支持在其上安装RedHat、SUSE和Ubuntu三种Linux发行版,并支持混合安装大小端系统。
PowerKVM服务器带外控制器FSP支持IPMI2.0协议,可采用ipmitool远程管理服务器。
采用ipmitool远程管理PowerKVM服务器
Ipmitool命令格式形如:
ipmitool -I lanplus -H FSP-IP -P IPMI-PASSWORD COMMAND
其中,FSP的IP地址和IPMI的密码均可在FSP的网页ASM管理程序中设置,常见的COMMAND(命令)如下:
chassis: get chassis status and set power state(主板类:获取主板状态和设置电源状态)
status, power, identify, policy, restart_cause, poh, bootdev, bootparam, selftest
power: shortcut to chassis power commands(电源类:主板电源命令快捷方式)
status, on, off, cycle, reset, diag, soft
sol: access console over lan (SOL类:基于局域网的访问控制台)
activate,deactivate,info,set,payload,looptest
sensor: print detailed sensor information(传感器类:打印详细传感器信息)
fru: print built-in FRU and scan SDR for FRU locators(FRU类:打印内建的FRU及扫描FRU定位器的SDR)
PowerKVM和X86KVM的术语对照表
PowerKVM中Flexible service processor (FSP)
àX86KVM中Integrated management module (IMM)
PowerKVM中Host, hypervisor
àX86KVM中Host, hypervisor
PowerKVM中Virtual machine (VM), guest, virtual instance
àX86KVM中VM, guest, virtual instance
PowerKVM中Open Power Abstraction Layer (OPAL) firmware
àX86KVM中Unified extensible firmware interface (UEFI) and basic input/output firmware interface (BIOS)
PowerKVM中KVM host userspace (QEMU)
àX86KVM中KVM host userspace (QEMU)
PowerKVM中Host userspace tools based on the libvirt API, including virsh.
àX86KVM中Host userspace tools based on the libvirt API, including virsh.
PowerKVM中Management of virtualization through a browser-based user interface with Kimchi. Kimchi utilizes libvirt to manage KVM.
àX86KVM中Kimchi or virt-manager
PowerKVM中Command line message-based hardware management interface to manage IPMI-enabled devices on remote host with IPMItool.
àX86KVM中Command line message-based hardware management interface to manage IPMI-enabled devices on remote host with IPMItool.
综上所见,PowerKVM和X86KVM大体上采用同样的术语,这使得有X86KVM经验的用户更容易平滑地理解并掌握PowerKVM。
PowerKVM和X86 KVM支持的特性对比
Feature X86KVM PowerKVM
Dynamically create/delete VM’s Yes Yes
动态创建/删除虚拟机
“Shared Processor” mode Yes Yes
共享处理器模式
ST, SMT2, and SMT4 guests HW dependent Yes
ST,SMT2及SMT4客机
Min/Max CPU and memory entitlement Partial Yes
最小/最大CPU和内存授权
CPU, memory, I/O affinity Yes Yes
CPU,内存,输入输出亲和力
Memory overcommit Yes Yes
内存分配
Memory sharing – data deduplication Yes Yes
内存共享-重复数据删除
Hot plug memory, cpu, I/O Yes Yes
热插拔内存,CPU,输入输出设备
EEH No Yes
Host error recovery Yes Yes
宿主机故障恢复
Error logging Yes Yes
出错日志
Power RAS tools NA Yes
电源远程访问工具
Partition hibernation and remote restart Yes Yes
分区休眠和远程重启
Partition migration Yes Yes
分区迁移
EnergyScale power management NA Yes
能量标度电源管理
SR-IOV support Adapter dependent Yes
PAPR-style paravirt interface Yes Yes
PCI Pass through Yes Yes
Linux “virtio” virtual I/O devices supported Yes Yes
Guest VGA over VNC Yes Yes
基于VNC的客机VGA显示
Libvirt, virsh, kimchi Yes Yes
Openstack integration Yes Yes
其中EEH(Extended error handling)为PCI设备故障隔离技术,确保某个PCI设备发生错误时不会影响其余设备,更多信息参见http://events.linuxfoundation.org/images/stories/pdf/lcjp2012_shan.pdf。
PowerRAS Tools、EnergyScale和PAPR接口技术为Power处理器特有。
PowerKVM和X86KVM在现有功能上大体上一致,PowerKVM在RAS会有所增强,满足企业用户对可靠性的要求。
PowerKVM:微核深度挖掘Power8的多线程性能
在PowerKVM中,Power处理器支持整核和微核两种模式,用户可采用ppc64_cpu命令在线调整。
假设服务器上面只有一个物理CPU核,下面我们分别观察一下虚拟机是如何在两种模式下被调度的。
1. 整核模式下:多个虚拟机以时间片轮转模式共享该物理CPU核。
2. 微核模式下:采用微核模式后,4个虚拟机可同时被分配至一个物理CPU核,每个虚拟机可以确保获得物理核四分之一的处理能力而不受其它虚拟机的影响。
从上面的介绍我们可以看出,当虚拟机数量远远超过物理CPU核(CPU过载),微核应该会比整核性能要好。
我们从实验室的测试报告中也印证了上述的设想。在虚拟机大量过载的情况下,无论是虚拟机加满压力还是加半压力,整核模式性能大幅下降而微核模式性能则不下降或平缓下降。
综上所述,微核使得PowerKVM能够在性能损失不明显的前提下,运行更多的虚拟机承载用户的业务。
SAP NetWeaver套件开始支持PowerKVM
SAP on IBM Power Systems running Linux
IBM PowerKVM support for SAP productive us – new!
With the successful validation of the SAP NetWeaver stack on IBM PowerKVM on December 5, 2014,PowerKVM now is supported for SAP productive use of all currently released SAP solutions for IBM Linux on Power. PowerKVM is available on selected IBM POWER8 servers. With this, SAP customers have the choice between IBM PowerVM and IBM PowerKVM virtualization technologies for their SAP deployments on IBM Linux on Power systems.
基于运行Linux的IBM Power系统上的SAP
IBM PowerKVM支持SAP生产环境应用
伴随2014年12月5日SAP NetWeaver stack 基于 IBM PowerKVM平台的成功验证,PowerKVM现在被SAP 支持用于所有当前发布的SAP对IBM Power平台的Linux系统的解决方案。PowerKVM在IBM power8服务器上可用。SAP用户可以在IBM Power平台上linux系统中选择IBM PowerVM或IBM PowerKVM虚拟化技术。
RedHat企业级虚拟化方案开始支持PowerKVM
Today, we’re happy to announce a new collaboration with IBM in enterprise virtualization, enabling enterprise organizations running Power Systems to virtualize their demanding mission critical workloads. Red Hat Enterprise Virtualization for Power will allow users to take advantage of IBM’s next-generation Power Systems technology and the leading performance, scalability, and advanced security features of Red Hat Enterprise Virtualization.
今天,我们荣幸地宣布,与IBM在企业级虚拟化方面的新合作,使运行在Power系统上的企业组织可以虚拟化他们的高度重要的核心任务。基于Power系统的RedHat企业虚拟技术将允许用户充分利用IBM的下一代Power系统科技以及RedHat企业级虚拟化技术领导性的高性能,高度灵活性和先进的安全特征
详细信息参见:
http://www.redhat.com/en/about/blog/ibm-and-red-hat-deliver-open-virtualization-power-systems
页:
[1]