1、Suse linux (NewStartHA):
cli:~>service-migrate
Select service to migrate:
Current service:
0) bill
1) gdb
2) cancel
Select a service [0, 2]:
按照命令行的提示输入进行倒换
2、AIX(HACMP):
# smit hacmp
后进入:
enter进入:
查看双机状态:
3、Suse Linux (SKYbility):
HA配置结束后,需要进行最后一个步骤:双机的倒换测试。通过测试可以检查整个软件安装是否成功。
测试步骤如下:
1. 在主节点上检查双机状态:
(1) 检查浮动IP是否激活
运行:
# ip addr
应该存在浮动IP绑定到eth0:0上的内容。
(2) 检查文件系统是否mount
运行:
# df –k
有类似如下结果返回:
/dev/sdb1 50403000 14185692 33656952 30% /zxindata
(3) 检查智能网软件是否正常启动
以zxin10用户登录,运行:
$ zxtool –p
应能看到智能网各进程已经成功启动,另外可以查看启动日志: /home/zxin10/log/zxcom.log该文件中应能找到智能网系统成功连接到数据库上的信息。如果所有检查无误的话,表明双机软件在主用节点上成功启动,然后执行以下步骤。
2. 在备用节点上检查HA进程是否启动:
# /etc/init.d/hadaemons status
hacomm (pid 12016) is running.
hacenter (pid 12021) is running.
halockd (pid 12019) is running.
如上面的显示running,则表示HA进程正常运行。
运行如下命令检查双机启动是否正常:
# /opt/ha/bin/hastat
如果返回结果如图5.2‑1所示能看到两个节点都是UP状态,表示网络是ONLINE状态。
5.2‑1 检查双机状态
3. 在主节点上运行以下命令进行双机倒换
$ superstop
CLUSTER将检测到应用故障,双机发生倒换。
而如果使用停CLUSTER服务的方式:
#/opt/ha/bin/hadaemons stop
则双机将立即倒换,但本节点不会关机。下次需要从备用节点倒换到主节点时,需要再手工启动CLUSTER服务:
# /opt/ha/bin/hadaemons start
HA一般按以下步骤在主用节点上停止双机:
(1) 停止应用脚本
(2) umount文件系统
(3) 释放浮动IP地址
在备用节点上运行如下命令检查双机停止步骤:
# /opt/ha/bin/hastat
如果出现如图5.2‑2所示内容,表明主节点双机正在停止。
5.2‑2 检查双机状态1
当出现如图5.2‑3所示内容时,表明service 已经成功切换到备机了。
5.2‑3 检查双机状态2
4. 在备用节点检查双机倒换后系统状态
以root用户登录到备机,检查中兴智能网软件是否已运行在备机上:
(1) 检查浮动IP是否激活;
(2) 检查文件系统是否mount;
(3) 检查智能网软件是否正常启动。
5. 到主用节点启动CLUSTER
执行下面命令检测CLUSTER 服务在主用节点的状态:
# /opt/ha/bin/hadaemons status
当有如下结果返回,表示HA服务没启动。
hacomm (pid 12016) is running.
hacenter (pid 12021) is running.
halockd (pid 12019) is running.
如果是系统重新启动后没有启动CLUSTER服务,则要检查一下原因。如果刚才是手工停掉的主节点CLUSTER服务,则再手工启动CLUSTER服务:
# /opt/ha/bin/hadaemons start
然后运行以下命令检查状态:
# /opt/ha/bin/hastat
当显示如图5.2‑4所示结果时,表明启动成功。
5.2‑4 检查双机状态3
6. 在备用节点上运行以下命令进行将双机倒换到主用节点
# /opt/ha/bin/hadaemons stop
7. 到备用节点启动HA
#/opt/ha/bin/hadaemons start
至此,双机环境准备就绪。
以上是通过常规方法进行的倒换测试,在此基础上用户还可以进行多种手段的倒换测试,如:拔掉主节点网线、将主节点关机、停掉数据库等。所有这些情况都将引起HA双机倒换。
4、HP UNIX :
双机维护命令的位置
#cd /usr/sbin/ (用ls cm*可以看到所有关于双机的执行命令)
# cmviewcl [-v] [-n NN]... [-p PN]... [-l {package|cluster|node}]
[-v] Verbose output
[-n ] View information only about the specific node_name(s).
[-p package_name... View information only about the specific
package_name(s).
[-l] pkg|clus|node Display only package, cluster or node specific information
例如:
# cmviewcl
CLUSTER STATUS
cluster1 up
NODE STATUS STATE
imana100 up running
PACKAGE STATUS STATE AUTO_RUN NODE
pkg_oracle up running enabled imana100
NODE STATUS STATE
imana101 up running
PACKAGE STATUS STATE AUTO_RUN NODE
pkg_app up running enabled imana101
也可以用一下命令:
cmviewcl -v;或
cmquerycl;或
cmviewconf;
# cmruncl -v -n imana100
# cmhaltcl –f -v
[-f] Force the cluster to shutdown even if packages are currently running.
[-v] Verbose output
# cmrunnode -v imana100
# cmhaltnode [-f] [-v] [NN...]
[-f] Force the node to halt even if there are packages running on it.
[-v] Verbose output
# cmhaltnode –f –v imana101
# cmrunpkg [-n NN] [-v] PN...
[-n ] Act on a specific node.
[-v] Verbose output
例如:
# cmrunpkg -n imana101 pkg_app
cmrunpkg : Completed successfully on all packages specified.
# cmhaltpkg [-n NN] [-v] PN...
[-n ] Act on a specific node.
[-v] Verbose output
例如:
# cmhaltpkg -n imana101 pkg_app
One or more packages has been halted and will not be started automatically. To start these packages, enable AUTO_RUN via cmmodpkg
-e <Package_Name>.
cmhaltpkg : Completed successfully on all packages specified.
# cmmodpkg [-v] [-n NN]... {-e|-d} PN...
[-v] Verbose output
[-n ] Modify attributes on specific node(s) - else globally mod.
-e enable
-d disable
PN - package(s) whose switching attributes are changed
注:CN = cluster_name NN = node_name PN = package_name
Explainations: ... = multiple occurences | = OR [descriptor] = optional
#cd /etc/cmcluster/ (双机守护进程的配置文件cluster.ascii)
#cd /etc/cmcluster/pkg_app/、#cd /etc/cmcluster/pkg_oracle/ (pkg_app.ctl、pkg_oracle_ctl是用来制定双机的浮动IP的)
在主机上执行
#cmhaltpkg -v pkg_oracle ----在主机上停止包
#cmrunpkg -v -n imana101 pkg_oracle ----在备机上启动包
#cmmodpkg -e -n imana100 pkg_oracle ----允许主机failover
说明:当启用程序包时,如果报如下错误,需要执行上面的命令将节点加入failover
# cmrunpkg -n imana100 pkghlrdb
cmrunpkg : Node imana100 is currently unable to run package pkg_oracle.
Check the syslog on node imana100 and pkg log files for more detailed information.