IBM Bluemix是基于Cloud Foundry开源项目的平台即服务(PaaS),它承诺提供易于集成到云应用程序中的企业级功能和服务。 用运行时编写的Cloud Foundry应用程序(例如Node.js,Ruby和Java编程语言)现在可以在IBM最新的处理器POWER8上运行。 在POWER8和Intel x86系统上建立混合Cloud Foundry环境的第一步是构建混合OpenStack环境。
要将Bluemix移植到Power上的Linux®上,您必须在包含x86和POWER8机器的混合环境中部署OpenStack。 使用以下步骤在IBM PowerKVM™上设置OpenStack计算节点,并将其连接到x86控制器节点。
- 在PowerKVM上更新并安装固件。
- 安装PowerKVM操作系统。
- 在PowerKVM上安装OpenStack nova。
- 在x86控制器节点上安装OpenStack。
- 连接Power计算节点和x86控制器节点。
- 验证OpenStack安装。
您的应用程序需要什么
- 两台物理机器:x86机器和POWER8机器
- 已安装的CentOS和PowerKVM版本
- 互联网连接
步骤1.更新并安装PowerKVM固件
KVM是Linux上OpenStack支持的最流行的虚拟化技术之一。 IBM Linux技术中心在POWER8上开发了PowerKVM。 它嵌入了所有KVM模块和程序。 PowerKVM充当主机管理程序操作系统,并且仅对于GA1.0作为OpenStack计算节点受支持。
要在Power机器上安装PowerKVM,必须更新并安装PowerKVM的固件。 请参阅IBM POWER8上的IBM PowerKVM 。
在已更新固件的高级系统管理界面(ASMI)中,单击系统配置>系统管理程序配置 。 然后选择OPAL 。 此选项在下一个电源循环后生效。
更新后的固件使您可以使用智能平台管理界面(IPMI)来使用控制台以及为机器加电和断电。 通过更新字段来配置IPMI密码。 在此模式下,计算机将引导并在所有可用控制台上为您显示petitboot菜单。
步骤2.安装PowerKVM操作系统
要使用IPMI,您需要控制计算机(例如您的笔记本电脑)上的ipmitool
程序,并且需要知道FSP的IP地址。
- 如前所述, 在ASMI中设置IPMI密码 。
- 发出以下命令:
ipmitool -I lanplus -H <domain_name> power cycle ipmitool -I lanplus -H <domain_name> sol activate
- 系统重新启动时,单击petitboot>退出到shell进入命令行shell。 配置IP地址。
nvram --update-config "petitboot,network=<MAC_ADDR>,static,<IP>,<GW>,dns <DOMAIN_SERVER_IP>"
- 请参阅IBM POWER8上的IBM PowerKVM以安装PowerKVM。
步骤3.在PowerKVM上安装OpenStack Nova
OpenStack是一个云操作系统,可控制整个数据中心的大型计算,存储和网络资源池。 它提供了基础架构即服务。 本示例使用OpenStack Icehouse版本,从2014年8月开始,OpenStack Icehouse包含七个核心项目:
- 仪表板:地平线
- 计算:新星
- 图片:一览
- 网络:中子
- 块存储:煤渣
- 对象库:Swift
- 身份:基石
Nova被称为OpenStack的核心组件。 它控制云计算平台并虚拟化基础硬件资源。 它包括诸如nova-api,nova-compute,nova-volume,nova-network和nova-schedule之类的组件。 nova-compute进程主要是一个工作守护程序,该守护程序通过管理程序的API创建和终止虚拟机实例。 它从队列中接受操作,然后执行一系列系统命令(例如启动KVM实例)以在更新数据库中的状态时执行它们。
混合环境由一个x86系统作为控制器节点,而一个Power Machine作为计算节点。 逻辑架构如图1所示。
图1.混合环境的逻辑架构
请参阅带有OpenStack 4.3.0的IBM Cloud Manager以安装OpenStack PowerKVM计算节点。
步骤4.在x86上安装OpenStack
由于x86计算机充当控制器节点,因此必须在其上安装整个OpenStack系统。
- 请参阅带有OpenStack 4.3.0的IBM Cloud Manager,以在x86节点上安装OpenStack控制器。
- 配置
iptables
的规则以启用对OpenStack仪表板(端口:80)的Web访问。 如图2所示,在/ etc / sysconfig / iptables文件中添加一行。iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
图2.修改ipstables的规则
配置仪表板配置以允许Web访问。 仪表板配置文件位于/ etc / openstack-dashboard / local_settings文件中。 用本地主机IP地址修改参数
ALLOWED_HOSTS
,如以下代码清单和图3所示。# Required for Django 1.5. # If horizon is running in production (DEBUG is False), set this # with the list of host/domain names that the application can serve. # For more information see: # https://docs.djangoproject.com/en/dev/ref/settings/#allowed-hosts ALLOWED_HOSTS = ['9.26.19.176', 'horizon.example.com', 'localhost']
图3.仪表盘配置
修改完成后,重新启动
httpd
和memcached
服务。 运行以下命令:chown apache:apache /usr/share/openstack-dashboard/openstack_dashboard/local/ service httpd restart && service memcached restart
- 使用以下命令删除梯形失真中的服务中子:
keystone service-delete {neutron_ID}
- 使用Web浏览器访问OpenStack仪表板。 使用用户名
admin
和密码openstack1
步骤5.连接Power计算节点和x86控制器节点
在步骤3和4中,您分别在电源系统和x86控制器节点上部署了nova计算节点。 在大多数情况下,这些节点已连接。 登录到x86计算机并发出命令nova-manage service list
以检查连接状态。 Power节点的正确状态已enabled :-)
,如以下代码清单和图4所示。
[root@end1 install]# nova-manage service list
Binary Host Zone Status State Updated_At
nova-conductor end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:08
nova-scheduler end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:08
nova-console end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:06
nova-consoleauth end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:10
nova-cert end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:03
nova-compute end1.torolab.ibm.com nova enabled :-) 2014-08-25 13:53:06
nova-compute tiny4 power enabled :-) 2014-08-25 13:53:07
nova-network tiny4 internal enabled :-) 2014-08-25 13:53:07
nova-network end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:05
nova-cells end1.torolab.ibm.com internal enabled :-) 2014-08-25 13:53:07
图4. x86和Power的Nova服务状态
如果状态为disabled
或状态为XXX
,请手动将计算节点连接到控制器节点。 登录到PowerKVM并运行以下命令:
nohup /usr/bin/python /usr/bin/nova-compute --config-file
/etc/nova/nova.conf --log-file /var/log/nova/compute.log &
nohup /usr/bin/python /usr/bin/nova-network --config-file
/etc/nova/nova.conf --logfile /var/log/nova/network.log &
登录到x86控制器节点,然后如以下代码清单所示,使用nova-manage
命令在Power系统上启动计算和网络服务。
nova-manage service enable --host=tiny4 --service=nova-compute
nova-manage service enable --host=tiny4 --service=nova-network
如果命令成功执行,则Power计算节点将连接到x86控制器。
步骤6.验证Openstack
现在,OpenStack环境已成功部署在混合环境中。 您可以通过仪表板或在不同主机中启动虚拟机来对其进行验证。 这是设置不同主机聚合的示例。
OpenStack Cloud可以从上到下划分为多个级别:区域,可用性区域和主机聚合。 主机聚合包括用于标记计算节点组的元数据,以使调度程序能够基于特定特征知道将虚拟机放置在何处。 对于混合环境,创建主机骨料power
与元数据availability_zone=power
。
- 登录到x86控制器并运行以下命令来创建主机聚合
power
:nova aggregate-create power power
将Power机器添加到创建的
power
Host集合中。nova aggregate-add-host power <power_name>
- 打开http:// <x86_ip> / dashboard /并登录。默认用户名为
admin
,密码为openstack1
。 单击管理>系统面板>主机聚合以查看主机聚合的列表,如图5所示。图5.仪表板中的主机聚合列表
结论
本教程说明了如何使用x86控制器节点和Power计算节点设置混合OpenStack环境。 本系列的后续教程将描述如何使BOSH自动化在Power系统上部署CloudFoundry Droplet执行代理(DEA),以及如何在此混合OpenStack环境之上构建混合BlueMix。
翻译自: https://www.ibm.com/developerworks/cloud/library/cl-openstack-power8-trs/index.html