zv8912000
作者zv8912000·2016-11-16 23:11
系统架构师·电信行业

电信行业向互联网+的转型实践:利用Linux on Power搭建

字数 5264阅读 4490评论 0赞 0

电信业BI系统发展10余年,已经变成了体量巨大、架构繁复、应用庞杂的系统,虽然传统SMP传统小型机加存储架构满足了过去公司发展需要的各类信息服务需求,但随着互联网业务的快速发展,传统模式带来的问题也日益凸显。传统的应用以非实时的应用能力建设为主,传统架构缺乏统一高效的数据服务,缺少实时的运营能力支持;传统数据的数据源侧重于B域,面向未来的发展前瞻性较低,传统的烟囱式开发成本高。现有BI系统存储的数据不够全并且存储成本较高,互联网数据的处理速度不够快,数据价值应用不够灵活,传统经分的定位跟不上企业战略转型的诉求。利用大数据技术是电信行业优化服务、提高用户体验的必然选择。

一、大数据平台对服务器的要求

BI领域构建大数据平台,在分布式数据库方面,用户会采用普通X86。但在加载机和中间件方面,CPU低主频,无法满足电信行业业务需要,即不是所有的技术场景均适合采用普通X86。在某些领域,如事件型应用、中间件应用、加载服务器都适合采用更高可速,更高可靠性能的服务器。随着IBM POWER8 推广,Linux on Power走进了我们服务器选择的视野,基于POWER处理器实现海量扩展,迅速吸引了我们眼球。我们提出了采购意向并最终实现了系统的建设。

二、企业级中间件池的选择

面向未来的企业级数据中心,需要提供IAAS、PAAS、SAAS三层的服务能力。在PAAS层除了采用普通X86建设的分布式数据库系统,另一个重要的技术领域是企业级中间件池的建设。企业中间件池服务的目标就是分散的web应用和批量处理或实时处理的事件应用。一般以web中间件和数据中间件为主,web中间件如一般同时在线100人的web系统,内存消耗每个应用在2GB-4GB之间对内存的消耗很低,但登录系统的在线人员加剧了资源访问速度,对CPU的消耗就会逐步增加。数据中间件分网格计算类和内存计算类,同时海量的数据处理都需要很高的CPU主频消耗。普通X86如Intel芯片主频一般在2.1~2.6之间,如AMD芯片即时到2.8也相当于INTER芯片的80%。中间件软件性能不能很好的发挥。

web中间件数据中间件
Intel中 中
AMD
POWER

三、事件处理池的选择

在事件处理方面,IT支撑无论选择Storm还是Spark或者采用商业软件IBM Streams,在系统资源使用上,都需要很强的计算能力。Spark Streaming提供了更好的支持容错状态计算,这个计算的基础就是高效的CPU运算速度。在Storm中,每个单独的记录当它通过系统时必须被跟踪,所以Storm能够至少保证每个记录将被处理一次,但是在从错误中恢复过来时候允许出现重复记录。可变状态可能不正确地被更新两次。这个处理机制也是需要消耗很高的CPU运算的。再比如商业软件IBM Streams,采用内存网格技术,将数据处理放在内存中,但是事件的响应,仍然需要消耗很高的CPU资源,业务场景需要的计算能力是多元化的,Linux on Power的高计算能力和稳定性,带来的性价比是显而易见的。POWER8处理器芯片具有内存Transactional Memory、Java硬件助手Hardware Helper、KVM微线程技术等,从而更好的应对企业的大数据、云计算、Java应用。

四、部署实践
1. 虚拟IO服务器安装配置
虚拟IO 服务器创建

虚拟IO服务器分区Profile文件创建

1)在HMC所管理的服务器上选择左侧server菜单下的POWER服务器建立虚拟IO 服务器分区,选择Configuration -> Create Logic Partition ->VIO Server

2) 输入Partition ID 和Partition name, 完成后继续选择Next

3)输入Profile name,完成后继续选择Next

4)选择CPU的配置。

5)内存的使用视具体情况而定。

6)选择Desired及Required 实际IO资源,在本次配置中,本项目规划每Server创建1个VIOS

7)Virtual Adapter设置

8)对于共享Ethernet的系统,根据需要共享的Ethernet总线数量建立相应数量的Virtual Ethernet Adapter个数

9)预览Profile配置信息,如果确认完成,选择Finish.

VIO Server Profile 配置建立完成。

依据项目规划每Server创建1个VIOS,所有物理资源全部分配给VIOS,规划2个网络,创建虚拟网卡2块,虚拟光纤通道卡2块。

2.虚拟IO 服务器软件安装

激活该分区,并选择SMS模式启动

选择Open Terminal Windows打开终端

进入SMS菜单,更改启动顺序

选择CD安装作为第一启动顺序

进入欢迎界面

选择全新安装

选择一块硬盘安装VIO Server操作系统,然后回车开始安装

开始安装,安装完后会自动启动进入操作系统。

安装完成后输入如下命令接受虚拟IO服务器软件应用许可:

$ license –accept

检查当前虚拟IO服务器版本:

$ ioslevel

检查当前虚拟IO服务器的时间,日期及时区信息:

$ date

输入如下命令获得虚拟IO服务器的root权限:

$ oem_setup_env

如果需要,请设置虚拟IO服务器的时间,日期及时区信息:# smitty chtz_date

安装VIOS版本为2.2.3.4

3.虚拟光纤卡NPIV配置

N_Port ID虚拟化(NPIV) 是一种在光纤通道(FC)领域用来实现物理光纤通道端口虚拟化的标准方法. NPIV技术将一个F_Port与多个N_Port ID相连,于是在虚拟环境下的多个分区的操作系统可以共享一个物理FC主机总线适配器(HBA). 在POWER处理器的系统上,NPIV技术使逻辑分区获得一些专用的N_Port ID,从而使操作系统相对于存储区域网络(SAN)而言有一个统一的识别身份,其效果等同于操作系统有专用的HBA.

首先在VIO服务器端创建虚拟光纤适配器,在创建虚拟资源的时候选择 Fiber Channel Adapter.

在弹出菜单中输入虚拟光纤适配器的ID号,并需要指定该设备用于哪个分区,与分区中的哪个ID对应。

4.分区服务器安装配置
(1)分区服务器创建

建立VIO Client分区步骤:

具体参数,参考“分区规划配置信息表”

Configuration -> CreateLogic Partition -> AIX or Linux

输入分区ID及分区名称

输入分区Profile名称

选择CPU模式

根据分区需求输入CUP相关参数

根据分区需求输入Memory参数

与普通创建分区的区别在于创建Virtual Adapter

首先创建Virtual EthernetAdapter

根据VIO Server 创建SEA的Virtual Ethernet,选择相应的VLAN ID。VIO Client分区根据需要创建相应Virtual Ethernet。

确认无误,点击Finish完成创建分区。

(2)分区服务器安装

通过 HMC,确认将要安装 Linux 的分区有合适的硬盘,虚拟或物理网卡,网络与本地个人电脑相通。安装光盘通过虚拟或物理方式可供分区访问。

通过 HMC,启动该分区,打开虚拟终端,进入 SMS (System Management Services),选择从光盘启动。

出现 boot: 提示之后,输入启动参数:

boot: linux vnc ip=8.163.171.11 gateway=8.163.171.1 netmask=255.255.255.0

其中 IP 是 VNC 服务使用的同时也是后面该服务器将会使用的 IP,根据你的事情情况设置。Gateway 和 netmask 参数按实际网络环境输入。

图:输入启动参数

回车后,显示 [Disc Found] 对话框,问是否 testing the media,选择 [Skip]。

之后显示如下界面,说明 VNC 服务启动好了。

图:VNC 服务启动完成

在本地个人电脑上,启动 RealVNC,连接VNC安装

图:Red Hat 的图形安装界面

接下来,安装过程就同原来的图形安装过程相同了。注意:网卡已经自动按前面的配置好 IP 了,如下图所示:

图:Red Hat 的网卡配置

选择安装包的时候,选择 [Customize now],可以选择具体的安装软件包。可以在这个时候安装 X Windows, Gnome 等软件包。还有按客户需求的其他软件包。

图:Red Hat 6 安装完成

重启之后,安装过程启动的那个 VNC server 就不存在了。虚拟终端上出现了字符模式的 Setup 工具界面。

(3)BES安装
把安装包上传到服务器上。使用命令chmod 777 B*.bin,给安装包执行的权限。

运行命令./BES082000B10909-REDHATAS64-X86-V52.bin -i console,开始安装,

选择要使用的JVM,直接回车,然后输入JDK的绝对路径,

选择BES的安装路径,如果接受给出的默认路径,直接回车;如果要修改安装路径,则直接输入安装路径,

选择安装类型,选择最小化安装,只安装软件,稍后再手工创建域管理服务器、节点管理器和实例,

(选择典型安装时,自动创建域管理控制器,名为domain1;自动创建节点管理器,名为na;自动创建实例,名为aloneIns1)

(选择高级安装时,需要在安装过程中指定域管理控制器名称、域管理控制器的端口、用户名、密码、节点管理控制器的名称等,但不会创建实例)



回车,结束安装。

(4)单点安装

在iastool交互环境中执行:create --node --nodehost IP --host192.168.186.129 --port 1900 --user admin --password admin --domainname domain1node*。create --node <节点名>是创建节点的命令,--nodehost为节点所在的服务器的IP地址,--host值为管理域的IP地址,--port值为管理域的端口,--user和—password值为管理域的用户名和密码,--domainname值为管理域的域名,即对应服务器上BES的域的域名,最后的node132为新创建的节点的节点名。

登录服务器的管理控制台,点击“节点管理器”,可以看到在服务器上新创建的节点node已经出现在服务器BES的管理控制台上了,node的状态为已停止。

在服务器的iastool交互环境中,执行命令:start --node --user admin --password admin--domainname domain1 nodenew,把新创建的nodenew启动起来。直接启动节点即可,不用再启动域。

在服务器BES的管理控制台查看,可以看到两个节点都已经启动起来了。其中服务器BES上还没有实例,实例稍后在管理控制台上进行创建。

停止服务器上BES节点的命令为:stop --node --domainname domain1 node*

(5)集群安装

点击“新建”,设置集群名称,然后点击“完成”,


点击“节点管理器”,“na”,为na节点创建集群实例,

在“创建实例或服务”中选择“集群实例”,,在集群名称中选择新创建的“c1”,然后点击“创建”,设置集群实例的名称,集群实例使用的AJP端口号,节点管理器选择na,点击“保存”,创建由na管理的集群实例,

设置Apache的名称,选择Apache服务所属的节点,设置Apache对外提供服务的端口号,点击“下一步”,


设置负载均衡器的配置,“/*”表示转发所有的请求,负载均衡的目标为c1,点击“下一步”,根据需要修改MPM的配置,点击“完成”。

点击“集群”,“c1”,可以看到c1集群中共有两个集群实例,绑定的HTTP负载均衡器为apache1,集群实例和HTTP负载均衡器的状态均为“已停止”,Apache需要单独启动,点击Apache的名称,进入Apache的编辑页面,再点击启动,即可把Apache启动起来。

五、使用效果
(1)主机情况

Top

pidstat

Mpstat

(2)软件情况


六、总结

使用中间件池后web系统和事件系统运行平稳性能优越。完全发挥了Linux on Power系统的优越性,同时系统在线3个月内,未发生任何故障和宕机现象,Java系统和硬件系统同样稳定。后面为主机情况和软件情况。在中间件应用、加载服务器选择灵越,适宜采用更高可速,更高可靠性能的Linux on Power。Linuxon Power成为“科学决策之器”针对性营销和客户挽留之器”、“精细化管理之器”的服务器最佳选择。

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

0

添加新评论0 条评论

Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

相关文章

相关问题

相关资料

X社区推广