chinesezzqiang
作者chinesezzqiang2017-12-18 13:55
信息技术经理, M

虚拟化环境下Power System批量部署解决方案

字数 7394阅读 5179评论 1赞 7

本文作者:张志强


摘要

在IT技术快速发展的今天,虚拟化技术日趋成熟,由于其在资金节省和IT效率提高上的优势日益明显,越来越多的企业也开始部署虚拟化平台。虚拟化平台中Lpar的数量会随着业务的增长而增加,快速的部署操作系统将成为必须的操作。一般部署一个AIX操作系统大约需要50分钟以上并且需要人为参与的步骤比较多,占用管理员大量的时间和精力。为了提高系统的部署速度和灵活性,本文将针对现有的IBM Power VM虚拟化环境,通过Network Install Manager (以下称为NIM)快速部署AIX系统到各个LPAR或者物理Power上。为了方便理解,将通过以往真实的项目实战与经验,把操作实施过程全部记录下来。主要有以下几个主要内容。

  • 简介
  • NIM的规划
  • NIM的安装
  • NIM的配置
  • NIM客户端部署

一、简介

1、背景介绍

一直以来,IBM Power System无论在性能上还是稳定性上都得到广大客户的认可与青睐,尤其是在金融或者电信领域。针对客户业务的特殊性和客户IT环境的不断扩大,Power服务器的数量也在逐量增加。管理也变得复杂,其中重装系统就是最让IT人员头疼的事情之一。随着服务器的数量增加,安装系统的时间成本也在增加,各个AIX版本也逐渐增多,IT人员要熟记每个版本与安装位置也很麻烦。

考虑到上述问题,项目采用IBM Power系列服务器自带的批量安装技术Network Install Manager。最大程度的减轻IT人员对OS的批量部署和管理工作。实现AIX系统批量快速部署,操作系统版本的统一管理,针对重要的业务系统可以快速的进行备份与恢复。从而简化 IT 管理员的操作系统管理成本和系统安装的时间成本。

2、NIM介绍

NIM是AIX操作系统的一个功能模块,无需单独付费购买。系统管理员可以通过NIM对一个或者多个系统进行远程的安装、升级和维护。同时可以对多个操作系统,ML,TL进行管理,可以将多个版本放在同一个NIM环境中。可以配合mksysb的备份文件,快速恢复受损的系统或“克隆”生产系统。多个NIM资源也可以共享同一个网络资源,互不影响。

NIM分为服务器端和客户端,服务器端负责存储各种操作和软件资源并通过需求提供给客户端。接受和利用这些资源的就是客户端,也是最终的AIX操作系统。

3、NIM的术语与工作原理

要设计NIM的架构和配置NIM就必须先了解一下NIM的常用术语和工作原理。

图片1.png

图片1.png

图1-1NIM 工作原理

理解NIM的工作原理对于成功的NIM服务搭建至关重要。NIM服务基于bootp服务和tftp 服务为NIM客户机提供网络引导内核的传递,之后,基于NFS 服务为NIM 客户机提供根文件系统和安装包资源,其工作原理如图1-1所示:

NIM client在系统启动时,将向指定的NIM服务器IP地址发出bootp系统引导请求,以获取本机 IP 地址及相应的系统引导内核等信息。NIM master响应来自 NIM client的bootp请求,并返回相应的网络引导内核的目录地址 ( 例如 /tftpboot/) 等信息NIM client依据获取的网络引导内核的目录地址,发出tftp请求下载该网络引导内核NIM master通过tftp服务响应来自NIM client 的 tftp 请求,NIM client在获取相应的网络引导内核之后,加载该内核,并通过 NFS 服务挂载安装、升级或是维护过程中所需要的各种NIM资源。

完成上述步骤之后,NIM client将开始正式的安装、升级或维护的过程,并将相应的进度信息不断更新给 NIM master。

NIM主机:
是指建立和维护NIM环境的服务器,可以通过master对client进行推送安装。NIM master的版本一定要比所有NIM client的版本高或者相同。

NIM客户端:
NIM客户端是NIM 主机初始安装的目标,例如安装、升级、推送。Client也可以发送pull的安装请求。

资源服务器:
用于存储各种软件资源或者系统资源的服务器,大多数情况下master也是资源服务器。

NIM数据库:
用来存储各种NIM相关的信息,并统一存储在ODM数据库中。可以通过lsnim命令查看详细的NIM resource信息。

4、NIM的资源类型

SPOT:
全称为Shared Product Object Tree,指向一个目录,其中存放了NIM Client在引导时需要用到的代码程序。与AIX中的/usr文件系统的内容大致相同。包含设备驱动程序,BOS的安装程序和其他与安装相关的代码。

LPP_Resource:
指向一个目录,其内容等同于AIX的系统光盘或应用程序的安装光盘。包含了要进行安装的lpp文件,即可以是bff格式,也可以是rpm格式。

Mksysb:
指向一个文件,是某服务器rootvg的备份文件,用于恢复或克隆系统。

5、NIM的安装方式

一般安装模式有两种:推模式和拉模式。

推送模式(Push mode):从master进行初始化操作。如果要通过push的方式,需要client已经安装了AIX并配置了IP信息。

拉入模式(Pull mode):从client进行初始化操作,在第一次安装client的时候,也是默认的操作方式。可以通过client的SMS菜单配置client的TCP/IP去联系master。

图片2.png

图片2.png

图1-2NIM 推拉模式

二、NIM的规划

在文章所描述的架构设计中,NIM Server及资源服务器全部安装在一个虚拟机(Lpar)中。通过网络对系统中的硬件以及Lpar进行操作系统的安装。

通过以下架构,简单描述了利用NIM方式来远程安装AIX操作系统到Power服务器或者Lpar中的方式。但是在大型的部署环境中,可能需要设立多个NIM服务器,来提供冗余的部署服务。以下架构将通过Vlan划分的手法,将服务器段与客户端段区分开,方便各种网络安全策略的部署,这也是在常规部署中最常用的方式。所有云硬件均采用IBM Power 740+服务器和V7000存储设备。为了将来便于NIM服务的迁移,建议将NIM和资源服务器放在同一个机器上,提供自动部署云环境中的物理机和虚拟机服务。

1、硬件列表

表1:服务器配置表

机型角色说明
Power 740+Lpar主机承载多个虚拟机

表2:存储

机型角色说明
V7000数据存储存储硬盘数据

表3:网络划分

服务器网络段客户网络段客户网络段
192.168.4.0/24192.168.2.0/24192.168.3.0/24

2、部署架构图

图片3.png

图片3.png

图2-1NIM架构图

三、NIM的安装

1、划分Lpar

所有的服务都是通过Lpar的方式提供。这样可以充分利用Power VM虚拟化的优势和特有功能来按需分配和提供所需的性能和计算能力。由于NIM服务器需要大量的存储空间来存放各种版本的操作系统镜像及相关软件资源,所以在Lpar中单独挂载一个大的LUN来专门存放这些资源。CPU和内存方面不用过多的设置,按照0.8和8G的标准。通过HMC按照下表标准,创建一个Lpar用于安装NIM server,Lpar的具体创建方法可以参考IBM 红皮书(www.redbooks.ibm.com)。

表4:LPAR配置表

处理器内存硬盘网卡
0.8(shared)8G100GEth0

2、安装NIM Server

由于NIM Server是AIX的一个现有功能,所以要提前安装一个高版本的AIX操作系统,此实验采用AIX7作为NIM的平台。

注意:NIM Server上的所有资源的版本不能超过平台的版本。

通过Telnet指令,可以远程登录到安装好的AIX上安装NIM软件,NIM Server需要安装如下组件,这些组件都可以通过AIX光盘获得并安装。

Bos.sysmgt.nim.master
Bos.sysmgt.nim.spot
Bos.sysmgt.nim.client
Bos.net.nfs.server

运行命令Smit install --Install and Update Software--Install Software--INPUT device / directory for software选择/dev/cd0,并选择上述的软件进行安装。

图片4.png

图片4.png

图3-1

这个软件包的安装速度很快,大概1分钟左右NIM安装完成。

四、NIM的配置

1、配置NIM Server

NIM Server安装完成后,需要通过一些配置才能正常工作,提供远程部署能力。针对NIM Server的所有操作我们都可以通过AIX所提供的强大的管理工具SMIT来完成。

通过smit nim命令来配置NIM Server

图片5.png

图片5.png

图4-1 配置NIM菜单

选择configure the NIM Environment--Advanced configuration--Initialize the NIM Master Only开始初始化NIM Master

图片6.png

图片6.png

图4-2初始化Master

为该NIM Server网络起个名字,并给出相应网络接口名,如en0(网卡接口可以根据实际情况调整)

图片7.png

图片7.png

图4-3定义网络名称

2、配置NIM资源

NIM的资源分为三种LPP resource、SPOT和Mksysb,以下依次介绍。

LPP resource
通过SMIT NIM去创建LPP_resource资源,smit-nim选择菜单项Perform NIM Administration Tasks

图片8.png

图片8.png

图4-4执行管理任务

选择manage resources---define a resource

图片9.png

图片9.png

图4-5定义资源

选择LPP_source资源类型的资源

图片10.png

图片10.png

图4-6 资源类型

为选择的类型的资源起个名字,放在哪个服务器上,文件存放在哪个目录下,它的安装介质在哪。实验中名字定为lpp_resource_7100,放在master服务器上,文件存放在/export/lpp_resources下,介质选择/dev/cd0。由于是将光盘介质中的文件拷贝到目标位置,所以需要等待一段时间。

图片11.png

图片11.png

图4-7资源信息

文件拷贝完成后,lpp_resources就创建完成了。

SPOT资源

下面我们创建SPOT资源,通过刚定义的lpp_resources资源来用SMIT工具来生成SPOT资源。Smit nim---Perform NIM Administration Tasks--Manage Resources---Define a Resource

图片12.png

图片12.png

图4-8定义SPOT

给出SPOT 资源的名字spot_7100, 存放服务器的名字master, 在Source of Install images 中给出所要使用的lpp_source名字lpp_resources7100,SPOT 资源存放的目录名/export/spot

图片13.png

图片13.png

图4-9资源信息

给出相关信息后,SPOT就会从lpp_resources7100中读取所需的内容,并将结果存放到指定的目录中,其过程与为系统安装软件类似,完成后我们继续定义mksysb类型的资源。

Mksysb资源

Mksysb类型的资源也是生产环境中最常用的类型,其无论在创建和恢复上都非常的灵活。AIX系统通过mksysb备份rootvg,当原系统出现问题的时候,可以迅速的恢复服务。

首先我们需要通过mksysb -i /mksysb/mksysb7100命令将rootvg备份到指定位置。之后通过Smit nim--Perform NIM Administration Tasks--Manage Resources---Define a Resource来定义mksysb资源。

图片14.png

图片14.png

图4-10 资源类型

为选择的类型的资源起个名字,放在哪个服务器上,文件存放在哪个目录下。实验中名字定为AIX7100,放在master服务器上,文件存放在/export/mksysb下。

图片15.png

图片15.png

图4-11资源信息

文件拷贝完成后,mksysb资源就创建完成了。

建立完成后,也要建立与之相关的SPOT资源为刚才的mksysb。按照下图,给出spot的名字,存放的服务器的名字。在Source of Install Images里给出之前mksysb资源的绝对路径,在Location of Resource中填写SPOT的存放位置。

图片16.png

图片16.png

图4-12资源信息

至此基本的NIM资源已经建立。NIM本身有很多高可用的配置,详细信息可以参考IBM的redbook网站(http://www.redbooks.ibm.com)。 我们可以根据实际的需要增加更多版本的资源,当然最高的版本不得超过NIM Server的系统版本。

五、NIM客户端批量部署

1、定义客户机

通过定义客户机能限制哪些服务器可以通过NIM Server来批量部署系统。在虚拟化的环境中,批量部署操作系统是一个常规而且严谨的步骤。所以前期设定好客户机就变得至关重要,否则会造成部署机器规划出现问题,不利于整体的管理。

AIX提供了SMIT命令来方便的定义所需要的客户机。在定义之前要先在NIM Server本地的Hosts文件中将客户机的Host Name和IP地址进行映射,否则定义客户机无法成功。日后部署也是通过这个去定位客户机并传输相关信息去安装。

通过Vi工具打开hosts文件,键入Vi /etc/hosts,并输入如下信息:

192.168.2.24 Client01
192.168.2.25 Client02

以上信息可以按照实际环境进行添加和修改。之后依然通过smit nim--Perform NIM Administration Tasks--Manage Machines--Define a Machine--选择ent作为主要的网络安装类型

图片17.png

图片17.png

图片18.png
图片18.png

图5-1 客户机信息

依此方法定义client02到NIM库中。

完成初始化NIM Server、定义NIM资源、定义客户机后,NIM Server基本可以正常工作提供部署源。通过下面章节通过拉的方式进行客户机的安装。(第一次安装NIM Client的时候,默认是拉的模式)。

2、定义组

为了可以实现批量部署操作系统,我们需要在NIM server端定义一个组,容纳预安装的客户端。

此处实验,将两台Lpar放入这个组中。在NIM server中执行smit nim--Perform NIM Administration Tasks--Manage Groups--Define a Group--Define a Standalone Machine Group,填写组名(test group)和选择两个Lpar。

图片19.png

图片19.png

图5-2 客户机信息

3、安装客户端

部署操作系统到客户端大概需要两个步骤,第一个步骤是在NIM Server端发起安装的请求,将预安装的系统信息和相关文件放入tftp中。第二个步骤是通过HMC启动客户端的配置文件,通过设置初始IP进行网络安装。这时需要管理员提供相关的客户机IP、NIM Server地址。拉的方式需要人工的干预才能完成,同时这也是虚拟化环境中最常用的方式。下面通过smit方式安装test group来举例。

在NIM Server上键入Smit nim--Perform NIM Software Installation and Maintenance Tasks--Install and Update Software--Install the Base Operating System on Standalone Clients--选择test Group组并选择安装类型,一般经常使用的是mksysb的类型,因其部署速度要比rte快。

图片20.png

图片20.png

图5-3 安装类型

在后面的向导中,依次选择正确的mksysb源和SPOT资源,并将向导中所提出的协议,选择成Yes,否则不能顺利部署完成。

图片21.png

图片21.png

图5-4 协议选择

待提示ok后,登录HMC找到相关的客户机(client01和client02),选择active去激活client01和client02的配置文件启动client01和02进入SMS界面,选择配置网卡信息

图片22.png

图片22.png

图5-5设置网卡信息

设置完成后从网络启动,客户端将自动从NIM服务器上拿相关的启动信息进行自动化安装,大概10分钟左右,系统安装完成。

六、总结

本文介绍了在虚拟化环境中部署NIM Server来提供自动、快速的安装客户端操作系统的方法和原理。通过快速的操作系统建立,可以充分的节省IT管理员的时间成本和工作成本,更是解决了云计算中的快速部署操作系统的问题。

参考资料

IBM网站为Power产品和存储产品提供了丰富的文档资料,用户可以从以下的链接中获得详细帮助
息。

  1. IBM Power VM Best Practices
    http://www.redbooks.ibm.com/Redbooks.nsf/RedbookAbstracts/sg248062.html
  2. IBM Power System HMC Implementation and Usage Guide
    http://publib-b.boulder.ibm.com/abstracts/sg247491.html
  3. NIM from A to Z in AIX 5L
    http://www.redbooks.ibm.com/abstracts/sg247296.html?Open
  4. IBM Flex System V7000 Storage Node Introduction and Implementation Guide
    http://publib-b.boulder.ibm.com/redpieces/abstracts/sg248068.html

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

7

添加新评论1 条评论

wuwenpinwuwenpin软件开发工程师, 南京
2017-12-18 20:34
学习了。
Ctrl+Enter 发表

本文隶属于专栏

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

作者其他文章

相关文章

相关问题

相关资料

X社区推广