前言
为什么需要 HACMP
各厂商现有的 UNIX 服务器一般都拥有很高的可靠性,在这一点上 IBM 的 P 系列服务器表现尤为突出。但所有 UNIX 服务器均无法达到如 IBM 大型主机 S/390 那样的可靠性级别,这是开放平台服务器的体系结构和应用环境所决定的。使用 IBM 高可用性集群软件 --HACMP,可以更好的保护关键业务应用不受故障影响。
HACMP 工作原理
HACMP 是 High Availability Cluster Multi-Processing 的缩写。HACMP 是 IBM 公司在 P 系列 AIX 操作系统上的高可靠集群软件,配置冗余,消除单点故障,保证整个系统连续可用性和安全可靠性。HACMP 是利用网络来侦测主机及网卡的状况,搭配 AIX 所提供的硬盘镜像等功能,在主机、网卡、硬盘控制卡、硬盘或网络发生故障时,自动切换到另一套备用元件上重新工作 ; 若是主机故障还切换至备份机上继续应用系统的运行。
作为双机系统的两台服务器同时运行 HACMP 软件:
? 两台服务器的备份方式有二种 :
o 一台服务器运行应用,另外一台服务器做为备份
o 两台服务器除正常运行本机的应用外,同时又作为对方的备份主机 ;
? ?
两台主机系统在整个运行过程中,通过 \心跳线 \相互监测对方的运行情况 ( 包括系统的软硬件运行、网络通讯和应用运行情况等 );
一旦发现对方主机的运行不正常 ( 出故障 ) 时,故障机上的应用就会立即停止运行,本机 ( 故障机的备份机 ) 就会立即在自己的机器上启动故障机上的应用,把故障机的应用及其资源 ( 包括用到的 IP 地址和磁盘空间等 ) 接管过来,使故障机上的应用在本机继续运行 ;
? ?
应用和资源的接管过程由 HACMP 软件自动完成,无需人工干预 ;
当两台主机正常工作时,也可以根据需要将其中一台机上的应用人为切换到另一台机 ( 备份机 ) 上运行。
实验环境说明:
本文的实验环境以双机互备中比较复杂的多 service 多网络的情况为例,其它类似设置可适当简化。
?
节点机器名
机器一览表
操作系统
应用软件
HA 版本
host2 AIX5305-CSP ORACLE 10g HA5208
host1 AIX5305-CSP Tuxedo8.1 HA5208
? 节点机器名 磁盘和 VG 规划表 磁盘 VG VG MajorNumber host1 hdisk2 host1vg 101 host2 hdisk3 host2vg 201
?
用户
用户和组规划表
USERID
组
组 ID
使用节点
orarrunc 210 dba 201 host1
tuxrun 301 bea 301 host1
bsx1 302 bea 301 host1
xcom 401 dba 201 host1
orarun 209 dba 201 host2
?
逻辑卷和文件系统规划表
PP size:128M
节点机器名
逻辑卷
文件系统
大小(pp)
所有者
用途
host1 ora10runclv /ora10runc 40 orarunc ORACLE 客户端软件
host1 tux81runlv /tux81run 30 tuxedo Tuxedo 软件
host1 bsx1lv /bsx1 30 bsx1 宝信 MES 应用程序
host1 xcomlv /xcom 30 xcom 宝信 xcom 通信软件
host2 ora10runlv /ora10run 60 orarun ORACLE 数据库软件
host2 oradatalv /oradata 100 orarun 数据库
?
路由规划表
节点名 目的 路由 host1 default 10.2.200.254 host2 default 10.2.200.254
?
HACMP 结构表
集群名 : test_cluster
适配器名
功能
网络名
网络类型
属性
节点名
IP 地址
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.1
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 host1 10.2.12.1
host1_l1_boot2 boot2 host1_net_ether_1 ether public host1 10.2.11.1
host2_tty0 heartbeat host2_net_rs232 rs232 serial host2
host2_l2_boot1 boot1 host2_net_ether_2 ether public host2 10.2.2.2
host2_l1_boot1 boot1 host2_net_ether_1 ether public host2 10.2.1.2
host2_l2_svc service host2_net_ether_2 ether public host2 10.2.200.2
host2_l1_svc1 service host2_net_ether_1 ether public host2 10.2.100.2
host2_l1_svc2 service host2_net_ether_1 ether public host2 10.2.101.2
host2_l2_boot2 boot2 host2_net_ether_2 ether public host2 10.2.12.2 host2_l1_boot2 boot2 host2_net_ether_1 ether public host2 10.2.11.2
图 1 HACMP 示意图
图 2 实验环境示意图

