PowerHA完全手册.docx
《PowerHA完全手册.docx》由会员分享,可在线阅读,更多相关《PowerHA完全手册.docx(108页珍藏版)》请在冰豆网上搜索。
![PowerHA完全手册.docx](https://file1.bdocx.com/fileroot1/2022-10/28/9823e8eb-095b-4a59-96ca-79fd8d1ad8f5/9823e8eb-095b-4a59-96ca-79fd8d1ad8f51.gif)
PowerHA完全手册
PowerHA完全手册
(一)
前言
自2008年4月02日笔者在IBMDevelopWork网站首次发表《HACMP5.X完全手册》以来,加上各网站的转载,应该已过了10万的阅读量,在此非常感谢大家的认可和支持。
转眼已经5年过去了,期间非常感谢不少同仁指出了该文的各种不足,并且HACMP已经改名为HACMP了,由于软件版本的更新和本人当时的技术水准有限,同时也存储不少同仁的希望,在原文基础上进行了补充和修订完善,也就有了本文。
正是由于AIX专家俱乐部的兴起,对AIX和HACMP的技术感兴趣的技术人员又更多了。
因此选择本杂志作为原创发表,就是希望能对更多的同仁日常工作有所帮助。
此外,虽然本文号称“完全手册”,一是为了吸引眼球,二也只是相对于其他只谈安装配置的文档而言。
由于HACMP现在已相当复杂,本文范围也主要关注于最常用的双节点,还望大家谅解。
即便如此,本文篇幅可能仍然较长,虽然也建议大家先通读一下,但实际使用使用时可根据具体目的按章节直接查阅操作。
这是因为一方面本文所述操作笔者都加以验证过;一方面也是全中文,省得大家去查一大堆原版资料。
希望能帮助大家在集成和运维HACMP的过程中节省精力、降低实施风险,这也是本文编写的初衷。
同时还望那些被部分摘抄文章的同仁也能理解,你们都是笔者的老师,这里也一一谢过。
虽笔者端正态度,尽力认真编写,但由于能力有限,恐仍有错漏之处,还望众多同仁多多指正海涵,在此先行谢过。
1. 为什么需要PowerHA/HACMP
随着业务需求日益增加,IT的系统架构中核心应用必须一直可用,系统必须对故障必须有容忍能力,已经是现代IT高可用系统架构的基本要求。
10年前各厂商现有的UNIX服务器就已拥有很高的可靠性,在这一点上IBM的Power系列服务器表现尤为突出。
但所有UNIX服务器均无法达到如原来IBM大型主机S/390那样的可靠性级别,这是开放平台服务器的体系结构和应用环境所决定的,这一点,即使科技发展到云计算的今天仍然如此。
因此,我们需要通过软件提供这些能力,同时这个软件还应该是经济有效的。
它可以有效确保解决方案的任何组件的故障都不会导致用户无法使用应用程序及其数据。
实现这一目标的方法是通过消除单一故障点消除或掩盖计划内和计划外停机。
另外,保持应用程序高可用性并不需要特殊的硬件。
IBM高可用性集群软件--PowerHA/HACMP也就应运而生,即使到了今天,对比x86平台的linux、windows甚至包括其他UNIX操作系统的高可用性集群,至少从笔者20年的IT从业实际经历来看,IBMPowerHA/HACMP高可用性解决方案虽然复杂,需要更高水平工程师的精心维护,但的确相对更成熟更有效。
PowerHA的前身为HACMP,或者说PowerHA和HACMP这两个词对IBM来说可以互换使用。
基于这一点,也由于实际使用过程中PowerHA软件的名称、菜单名、日志等均仍为HACMP,因此后面论述时我们仍均称为PowerHA为HACMP,以免造成理解的困难。
2. PowerHA的版本
由于IBM对软件的整合,目前PowerHA其实不仅仅只包含之前的HACMP软件,我们先来看看下图:
大家可以看到,我们通常的HACMP其实现在准确名称是 PowerHA SystemMirror ,它有2个平台4个主要大版本,for AIX ,i系统;企业版和标准版;企业版扩展了异地容灾相关的功能;而其他小版本,则是在其企业版和标准版基础之外的支持;比如最近比较热的PowerHA SystemMirror HyperSwap®的数据中心双活的解决方案 ,就是利用HyperSwap版本对存储DS8000容错的扩展支持来得以实现。
我们说的PowerHApureScale,则是和类oracleRAC的IBMDB2pureScale解决方案相配合的高可用性套件,不再是我们通常意义上的HACMP。
由于本文的重点为AIX的本地高可用性,因此除非特别声明,我们缺省说PowerHA时都是指PowerHASystemMirrorStandard的版本。
3. HACMP的工作原理
HACMP是HighAvailabilityClusterMulti-Processing的缩写;也就是IBM公司在P系列AIX操作系统上的高可靠集群软件,配置冗余,消除单点故障,保证整个系统连续可用性和安全可靠性。
HACMP是通过侦测主机及网卡的状况,搭配AIX所提供的LVM等管理功能,在主机、网卡、硬盘控制卡或网络发生故障时,自动切换到另一套备用元件上重新工作;若是主机故障还切换至备机上继续应用系统的运行。
作为双机系统的两台服务器同时运行HACMP软件;
◆两台服务器的备份方式大体有二种:
⏹一台服务器运行应用,另外一台服务器做为备份
⏹两台服务器除正常运行本机的应用外,同时又作为对方的备份主机;
◆两台主机系统在整个运行过程中,通过"心跳线"相互监测对方的运行情况(包括系统的软硬件运行、网络通讯和应用运行情况等);
◆一旦发现对方主机的运行不正常(出故障)时,故障机上的应用就会立即停止运行,本机(故障机的备份机)就会立即在自己的机器上启动故障机上的应用,把故障机的应用及其资源(包括用到的IP地址和磁盘空间等)接管过来,使故障机上的应用在本机继续运行;
◆应用和资源的接管过程由HACMP软件自动完成,无需人工干预;
◆当两台主机正常工作时,也可以根据需要将其中一台机上的应用人为切换到另一台机(备份机)上运行。
4. HACMP术语:
为方便大家阅读,我们这里简单介绍一下HACMP主要术语。
它们可以分为拓扑组件和资源组件两类。
拓扑组件(Clustertopology)基本上是物理组件。
它们包括:
∙节点(Nodes):
运行AIX操作系统的Power服务器上的分区或微分区。
实际目前节点现分为2种,一个是服务器节点(Server节点),运行核心服务和共享磁盘的应用的机器;一个是客户端节点(Client)节点,前台使用集群服务的应用的机器。
比如中间件软件等无需共享磁盘安装在客户端节点的机器上,数据库软件安装在服务器节点的机器上。
像监控节点的信息收集程序clinfo就是只运行在客户节点上。
而对于2个节点的集群,则简化掉这些分别,即节点为二合一。
∙网络(Networks):
IP网络和非IP网络
∙通信接口(Communicationinterfaces):
以太网或令牌环网适配器
∙通信设备(Communicationdevices):
RS232或磁盘的心跳机制
拓扑组件示意图
资源组件(Clusterresources)是需要保持高可用性的逻辑实体。
它们包括:
∙应用服务器(Applicationservers):
它涉及应用程序的启动/停止脚本。
∙服务IP地址(ServiceIPlabels/addresses):
最终用户一般通过IP地址连接应用程序。
这个IP地址映射到实际运行应用程序的节点。
因为IP地址需要保持高可用性,所以它属于资源组。
∙文件系统():
许多应用程序需要挂载文件系统。
∙卷组(Volumegroups):
许多应用程序需要高可用的卷组。
所有资源一起组成资源组实体。
HACMP把资源组当作单一单元处理。
它会保持资源组高可用性。
资源组件示意图
此外,还存在资源组有与其相关联的策略。
这些策略包括:
1.启动策略(Clusterstartup):
这决定资源组应该激活哪个节点。
2.故障转移策略(Resource/Nodefailure):
当发生故障时,这决定故障转移目标节点。
3.故障恢复策略(Resource/Noderecovery):
这决定资源组是否执行故障恢复。
当发生故障时,HACMP寻找这些策略并执行相应的操作。
5. 实验环境说明:
以双机互备中相对复杂的多业务网络的情况为例,其他类似设置可适当简化。
1) 机器一览表
节点机器名
操作系统
应用软件
HA版本
host1
AIX6.1.7
ORACLE11g
HA6.1.10
host2
AIX6.1.7
TUXEDO11
HA6.1.10
2) 磁盘和VG规划表
节点机器名
磁盘
VG
VGMajorNumber
host1
hdisk2
host1vg
101
host2
hdisk3
host2vg
201
3) 用户和组规划表
用户
USERID
组
组ID
使用节点
orarunc
610
dba
601
host1
tuxrun
301
tux
301
host1
bsx1
302
tux
301
host1
xcom
401
dba
601
host1
orarun
609
dba
601
host2
4) 逻辑卷和文件系统规划表
PPsize:
128M
节点机器名
逻辑卷
文件系统
大小(pp)
所有者
用途
host1
ora11runclv
/ora11runc
40
orarunc
ORACLE客户端软件
tux11runlv
/tux11run
30
tuxedo
Tuxedo软件
bsx1lv
/bsx1
30
bsx1
宝信MES应用程序
xcomlv
/xcom
30
xcom
宝信xcom通信软件
host2
ora11runlv
/ora11run
60
orarun
ORACLE数据库软件
oradatalv
/oradata
80
orarun
数据库
5) 路由规划表
节点名
目的
路由
host1
default
10.2.100.254
10.2.200
10.2.1.254
10.3.300
10.2.1.254
host2
default
10.2.100.254
6) HACMP结构表
集群名:
test_cluster
适配器名
功能
网络名
网络类型
属性
节点名
IP地址
MAC地址
host1_tty0
heartbeat
host1_net_rs232
rs232
serial
host1
host1_l2_boot1
boot1
host2_net_ether_2
ether
public
host1
10.2.2.1
host1_l1_boot1
boot1
host2_net_ether_1
ether
public
host1
10.2.1.21
host1_l2_svc
Service
host1_net_ether_2
ether
public
host1
10.2.200.1
host1_l1_svc1
Service
host1_net_ether_1
ether
public
host1
10.2.100.1
host1_l1_svc2
Service
host1_net_ether_1
ether
public
host1
10.2.101.1
host1_l2_boot2
boot2
host1_net_ether_2
ether
public
host