cuizengshun
作者cuizengshun·2016-11-17 00:21
系统运维工程师·民生银行

六步配置PowerVM搭建云计算环境

字数 4917阅读 7493评论 0赞 4

未来数据中心是虚拟化的世界,是云计算的世界。随着技术的不断发展,软件与硬件的耦合性越来越低,云计算支撑着整个数据中心,虚拟化是云计算的基石,通过虚拟化技术把硬件资源最大化利用。如何利用好现有的强大的Power服务器产品,利用其虚拟化技术,最大化地利用相关的硬件资源?本文通过详细地六大步骤规划,讲述了IBM Power服务器环境下的PowerVM的配置实践心得。对于想要想要往云计算平台迁移的企业来说,提供了非常好的借鉴和指导。

1. 整体规划

(1) PowerVM的整体架构

PowerVM是IBM Power服务器虚拟化多项技术的全称,它包括了VIO Server、微分区技术、DLPAR技术、IVM、Share Storage Pool、Active Memory Sharing、Active Memory Deduplication等技术。

(2) PowerVM版本的选择

PowerVM有三个版本可以进行选择,分别为Express Edition、Standard Edition、Enterprise Edition。这三个版本的区别在于支持的功能不相同,具体如下:

上图中有几个信息点需要注意,在版本选择时请提前进行评估:

Express Edition版本的VIO Server只支持单VIOServer,即不支持双VIO Server的冗余;

Express Edition版本的VIO Server只支持3个VIO Client;

Express Edition版本的VIO Server不支持HMC管理,要用IVM管理;

Express Edition版本的VIO Server不支持SSP;

Standard Edition版本的PowerVM不支持LPM分区在线迁移。

(1) VIO的适用场景

VIO是PowerVM技术中最重要的一个部分,顾名思义,VIO(Virtual I/O)就是虚拟I/O设备,那么什么是I/O设备呢?在VIO中虚拟I/O设备中最重要的就是网卡和光纤卡。因此VIO技术非常适用于网卡和光纤卡数量有限的服务器。在使用VIO技术之后,每台服务器可以安装的操作系统的数量会明显增长。

那么VIO技术是否用于生产环境呢?VIO是高冗余架构的,同时有很好的稳定性及性能,因此目前很多单位已经把VIO技术用于生产环境中。

(2) VIO冗余性架构配置

双VIO Server使用了高冗余的架构,即不管哪个VIO Server出了问题,VIO Client都不会受到影响。

下图标识了VSCSI技术的冗余架构,在此架构下两个VIO Server共同向VIO Client提供磁盘链路,因此避免了VIO Server的单点;在VIO Server内部,磁盘也是通过多个光纤卡进行识别的,因此避免的VIO Server上光纤卡的单点;两台SAN交换机避免了SAN网络的单点。

对于使用NPIV技术的环境也有高冗余性的保障,在两个VIO Server上都对VIO Client进行了NPIV的映射,因此避免了VIO Server的单点故障;在单个VIO Server里多个光纤卡避免了单个光纤卡的单点故障。

在网络方面,两个VIO Server使用了SEA的HA功能,也避免了单VIO Server的单点故障。

2. PowerVM中的存储虚拟化和网络虚拟化

(1) 存储虚拟化部分

存储虚拟化部分主要实现有两种解决方案:VSCSI和NPIV技术。这两个技术也是在做存储部分虚拟化时需要对比分析考虑的。简单来说,VSCSI技术是存储把磁盘先映射给VIO Server,然后VIO Server再把磁盘分配给VIO Client端;而NPIV技术是VIO Server只是建立了到VIO Client端的链路,存储直接把磁盘映射给VIO Client端。

对比二者的优缺点:

VSCSI技术:

-> 优点是实现起来比较简单,它对SAN交换机及PowerVM版本没有太高的要求。

-> 缺点是VIO Server需要再维护一个磁盘的映射分配关系,增加了系统管理员的维护工作量。

NPIV技术:

->优点及VIO Server只需要建立到VIOClient端的映射关系即可,不需要维护磁盘映射。

->缺点是NPIV对SAN交换机、机器的微码、PowerVM的版本等有要求。

但总体来讲,NPIV技术相比VSCSI技术要更方便些,但在实施灾备环境时请注意,由于现在数据中心的灾备很多都使用存储级的数据复制,而VIO Client类似于SAN BOOT的架构,如果rootvg使用NPIV的话,当把rootvg所对应的LUN通过存储数据复制技术复制到灾备端时,再通过NPIV技术映射后操作系统是无法启动的,因此在灾备架构下,建议VIO Client端的rootvg使用VSCSI技术,datavg使用NPIV技术。

(2) 网络虚拟化部分

网络虚拟化主要用两种技术:NIB(networkinterface backup)、SEA(share Ethernet adapter)

其中NIB(networkinterface backup)的技术原理是两个VIO Server都向VIO Client提供一个虚拟以太网卡的映射,在VIO Client上会识别到两个虚拟的网卡,然后把这两个虚拟的网卡绑定成为一个ethchannel。

另一种方案是SEA(share Ethernet adapter),这种方案是在VIO Server上虚拟了一个虚拟的交换机,这个SEA是连接物理网络和虚拟网络的一个桥梁,通过IEEE 802.1Q协议,它可以实现多个vlan在虚拟化环境下网络包的转发;同时它也可以配置成为HA架构,通过两个VIO Server的冗余性给VIO Client端提供服务。

如果配置成SEA HA架构时,SEA有两种模式:auto模式和sharing模式。其中auto模式即主备模式,一个VIO Server为主,另一个VIO Server为备,当如果有多个vlan时,为了负载均衡,可以建立多个vlan,并对称设置优先级。另一种模式为sharing模式,这种模式会自动把一个SEA下的多个vlan进行均分,实现多vlan的负载均衡。因此在配置SEA冗余时,建议使用sharing模式。

3. 虚拟化下的监控

3.1. CPU、内存监控

在虚拟化环境下,由于使用了微分区,因此监控CPU的使用情况也与传统CPU的监控模式不相同。要从整个CPUpool的角度来进行CPU使用率的分析,常用的命令例如topas,在VIO Server上执行该命令不仅可以查看VIO Server自身的CPU使用情况,同时还可以查看被该VIO Server所管理的VIO Client的CPU使用情况。

内存的监控与传统分区的内存监控基本相同,在实际生产环境中一定注意要给VIO Server分配足够的内存。

Tips: 在新版本的VIOServer中至少分配4GB内存。否则有可能出现建立SEA时不成功的现象。

3.2. I/O监控(光纤卡、网卡)

(1) 对于网卡的监控

每两分钟用entstat entX命令取一下对应网卡上发送数据和接受数据的大小,并把数据记录到LOGFILE文件中,然后再把每两分钟收集的数据量大小除以120秒,便可以算出每秒传输的数据量,如果吞吐量达到可用吞吐量的70%则告警,输出告警信息为“Exceeds the net_traffic threshold”。

(2) 对于光纤卡的监控

每两分钟用fcstat fcsX命令取一下对应光纤卡上发送数据和接受数据的大小,并把数据记录到LOGFILE文件中,然后再把每两分钟收集的数据量大小除以120秒,便可以算出每秒传输的数据量,如果吞吐量达到可用吞吐量的70%则告警,输出告警信息为“Exceeds the FC_traffic threshold”。

4. PowerVM环境自动化部署

在PowerVM实际部署时,比较繁琐的是建立VIO Server与VIO Client之间的vscsi、NPIV、虚拟网卡等设备的映射关系,因此使用自动化部署工具可以大大减少操作失误,节省操作时间。现在比较流程的有如下几种部署方式:

(1) PowerVC。

通过PowerVC可以比较好的调用PowerVM,有比较友好的界面可以填写LPAR的各项信息,然后自动化快速部署。

(2) System Planing Tool

使用这个工具填写一些PowerVM相关的配置信息,自动生成LPAR的profile,然后进行LPAR的创建。

(3) 自己写脚本通过HMC的命令行进行LPAR的创建。

上述三种方式都可以实现自动化快速部署,但前两者依赖于现成的其它软件,配置起来灵活度不够。

5. 虚拟化环境的备份

VIOS操作系统的备份包括下面两类信息,以使你能够恢复物理及虚拟设备。

· VIOS中的base code, applied fix packs, 特定的设备驱动程序,Kerberos及LDAP客户端配置信息,所有这些都可用backupios备份。

· 用户定义的虚拟设备,如虚拟及物理设备间的映射,这些信息的备份见后面的备份说明

VIOS备份命令为backupios,它可以备份VIOS系统到tape, DVD, 或文件系统, 用户定义的虚拟设备映射也可包括在这个备份里,用于恢复。但日常的viobr命令也要做,这样能比较容易的恢复用户定义的虚拟设备映射,同时也可在重新安装VIOS时, 再部署用户定义的虚拟设备配置。

备份及恢复的方法有以下类型:

6. 如何避免网络风暴

在配置VIO虚拟化时最怕的事情是由于错误配置导致产生网络风暴(网络环路)。产生网络风暴后会导致所涉及的vlan中都会产生网络环路,大量的网络包会堵塞整个网络,从而导致所有分区网络全不通!这是一个灾难!下面就描述一下两种容易产生网络风暴的情况:

错误配置一:

在配置双VIOServer SEA HA时,需要指定一个心跳的虚拟网卡,也就是mkvdev –sea命令中的ctl_chan参数,而这个虚拟网卡是我们通过虚拟适配器建立出来的。在虚拟适配器的属性中需要指定VLAN ID(见下图)。在两个VIO Server上如果这个虚拟适配器所使用的VLAN ID不相同(例如一个VIO Server上使用99,另一个VIO Server上使用98),这样就很容易出现网络风暴。

错误配置二:

在配置SEA时,会使用如下命令:

mkvdev -sea ent0 -vadapter ent2 -default ent2 -defaultid 1 -attr ha_mode=auto ctl_chan=ent3

注意如何想配置两个VIOServer SEA的HA,一定要把-attr ha_mode=auto ctl_chan=ent3这两个参数和前面的参数放在一条命令中执行。切忌不要先执行前面的命令生成了SEA,然后再对SEA的属性进行修改。如果分成两条命令执行,很容易导致网络风暴。

错误配执三:

由于在使用IEEE802.1q协议时,一个VIO Server的下可以挂很多个VLAN,但一定注意一个virtual switch下的两个SEA上一定不能配置相同的VLAN ID。如果同一个virtual switch下有相同的VLAN ID,当物理层面没有启用相关的控制时,会导致网络广播帧会累计放大,最终形成网络风暴。

上面讲了几种会出现网络风暴的错误配置,那么如何避免网络风暴呢?

几个建议供参考:

(1) 在物理交换机连接虚拟交换机的接口上启用trunk allow VLAN功能,仅允许必要的VLAN通过,这样可针对VLAN完全打破环路。

(2) 物理交换机上应该开启生成树协议,且不可开启portfast特性

(3) 在物理交换机上启用storm control功能,限制广播流量的大小。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

4

添加新评论0 条评论

Ctrl+Enter 发表

本文隶属于专栏

PowerVC专栏
本专栏主要分享PwerVM和PowerVC相关方面的架构、实施、运维等经验,以及企业私有云建设的相关经验及总结。
最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

相关文章

相关问题

相关资料

X社区推广