1、ROSE HA双机软件图解安装配置linuxROSE HA双机软件图解安装配置最近给客户做了一个双机系统,双机软件是臭名昭著的rose ha,本来不建议客户买这种双机软件的,但是由于各种商务原因,客户还是买了这个rose软件,那么我的苦难之旅也就开始了,安装配置本来很简单,但是商业软件限制太严,软件封闭性很强,中间枉费了不少周折!下面就开始吧! 如何在Linux环境下安装Rose HA。本文假设环境为Linux操作系统,采用9.2版本的oracle数据库。下面我们看看,在Linux Oracle环境下如何安装和配置Rose HA。 首先将光盘放进光驱 计算机 CD-ROM 双击打开 将三个文件
2、复制到系统的某个文件夹下或是将将光驱 mount 到 /mnt 下。系统工具终端(将光驱挂载到 mnt 文件夹下) 在终端窗口下一次键入: # mount t iso9660 /dev/cdrom /mnt (挂载设备) # cd /mnt (进入 mnt 文件夹) # ls ( 查看 mnt 下的文件 ) 安装 ROSEHA ,进入到 mnt 目录下 运行 # ./install.sh 可检查 /opt/roseha/bin 面是否有文件存在两个较为重要的文件 NewPass 修改密码(第一次运行需要修改密码)运行 # ./NewPass 按照下图进行按照提示首先 User : ha ( 管
3、理员的用户名 ) New password : 密码 Re-enter new password 重新输入密码 到这里,Rose HA的安装基本结束,但是不要心急,我们会还需要一些步骤来设置Rose HA的初始化。初始设置Rose软件 在进入系统之前然我们来设置一下系统的相关信息如下图所示: /etc/hosts 设置完毕后重新引导系统确定 starting RoseHA dearm 服务启动正常在 /opt/roseha/bin 下运行 # ./hacon 运行 ROSEHA 的管理界面 进入控制界面首先敲击回车选择 Connect 进入系统,User 是上面我们设置的用户名 Passwor
4、d 也是我们设置的密码 全部输完 “ OK” 出现如下界面说明连接正常当我们没有拿到正式的 licence 授权之前我们就可以先享受 30 天的使用期,可是也需要设置一下 只要移动 Tab 键在 HostName: 处将本机的主机名 和对端主机名填写正确就可以了“ OK “两边机器都需要进行设置 出现下图所示的 License Information success 说明我们可以用试用版了只要在一个月内注册正式版产品就可以了!两边的服务器都需要做相同的设置。配置双机HA1 、管理界面的启动 # hacon 2 、连接: 进入 Tools-Connect, 输入 Server:localhost
5、 User:root Password:root 3 、 license 号输入: 进入 Tools-License, 输入 HostName: 左边为本机主机名,右边为远程主机名。 ( 把左边主机名输入后 , 按 Tab 键可把光标移动到右边 , 输入远程主机名 , 点击 ok) 4 、创建 RS232 私网: 进入 PrivateNet-Create RS232, 把两台主机的 DeviceName 改成 /dev/ttys0 。 注:该操作在两台主机上都要做 5 、创建 socket 私网 进入 PrivateNet-Create Socket, 选择主机用于私网的地址,输入远程主机用于
6、私网的地址。说明:这是两台机器通讯用的 IP 地址(心跳 IP ), 注:该操作在两台主机上都要做 6 、获取对方主机信息: 进入 Tools-Network, 直接选中 AutoGet , OK 。这样就会得到对方主机信息。 7 、创建服务: 进入 Services-Create , Type : ORACLE IP Holding NIC :分别选择两台主机所提供外界服务的网卡设备名(如: eth0 ) , 不能与心跳网卡在同一个设备上。 Active IP Address :这是为外界数据库服务的 IP (虚拟 IP )地址。此地址必 须与公网的实际 IP 在同一网段上(也就是与在 IP
7、 Holding NIC 中所选择的网卡实际 IP 在同一网段上)。 Active SubnetMask :虚拟 IP 的子网掩码。 Agent Script :相应的监控脚本,如: ha_ag_oracle.x 。 Start Script :相应的启动脚本,如: ora_start.sh 。 Stop Script :相应的停止脚本,如: ora_stop.sh 。 Active Volume :磁盘阵列两台主机共用的文件系统的设备名。如: /dev/sdb1 Backup Volume :磁盘阵列两台主机共用的文件系统的设备名。 Active Volume 应与 Backup Volum
8、e 的值相同。 Mount Point :与 Active Volume,Backup Volume 值所对应的 mount 点。如: /oracle SwitchBack:NO 卸载 Rose HA# mount /dev/cdrom /mnt /cdrom # cd /mnt/ cdrom/Shell#./uninstall.sh 常见问题及注意事项 开机方法:开机的时候我们必须注意到,必须先开磁盘阵列,等 磁盘阵列状态READY 后,再开主机,主机完全开启后,再把备机开启。关机方法:关机的方法则是开机的反顺序,先关备机,备机关完以后,再关主机,最后关磁盘阵列。 Q :两台服务器上的双机软
9、件启动后,而双机两边的资源都处于虚状态怎么办? A : 在工作机上将资源一一点中,使资源处于高亮状态,点击工具栏上的 bring in 按钮。 Q :安装 ROSE HA 软件时, Windows NT 对 Service Pack 版本的 要求? A : 用 Service Pack4 , Service Pack5 或以上。Q :当工具栏的“ takeover”, “ failover”, “bring in”, “bring out” 等快捷按 钮均为不可用。主备机的状态保持不变,提示“ the public net is functioning, but all instances o
10、f private net are down or unavailable.” A : 如果在“ private net ”界面下心跳线变为红色,检查心跳是否连接正常。Q :没有选择 Auto-Switch Back 开关时,关机后先启 关机前为备机状态的 Host ,后启 关机前为主机状态的 Host 。会出现什么情况? A : 先启的 Host 成为主机,后启的 Host 成为备机。Q :两台 Host 均是在本地机上启动 ROSE HA 双机,启动双机时无法启动,并出现报错“ Fail to get remote Servers IP address from the registry
11、”。以上情况如何处理? A : 以上情况是由于两台服务器上的 Administrator 的密码不相同而造成的, 将两台服务器的 Administrator 密码改为一样,重新登录即可。Q :双机手工切换时无法切换,软件报错信息如下: 999. System Error 拒绝访问 (0x5) 423. Lock Volume : Fail ”(注: E: 为公共磁盘卷) 该现象是什么原因造成的?(设数据库文件安装在公共磁盘 E 盘上) A : 以上现象发生后,检查是否打开了察看 E 盘的窗口,或者正在使用磁 盘管理器。关掉窗口或磁盘管理器后即可正常切换。Q : 安装完毕后,进入控制界面,点击开
12、始,显示 “Cluster doesnt start” , 服务无法启动,以上情况如何解决。A : 进入“服务”,启动 cluster service ,得到提示登录时错误,然后双击该服务,点击“确定”,即可。其它重要的注意事项:1.在安装双机软件以后,数据库的服务的启 / 停都应该通过双机软件的 Bring In (启动服务)和 Bring Out (停止服务)功能来实现,不要使用数据库自带的工具软件来进行 2 心跳线的(私用网) IP 地址和公用网 IP 最好设置在不同的网段.配置双机HA1 、管理界面的启动 # hacon 2 、连接: 进入 Tools-Connect, 输入 Serv
13、er:localhost User:root Password:root 3 、 license 号输入: 进入 Tools-License, 输入 HostName: 左边为本机主机名,右边为远程主机名。 ( 把左边主机名输入后 , 按 Tab 键可把光标移动到右边 , 输入远程主机名 , 点击 ok) 4 、创建 RS232 私网: 进入 PrivateNet-Create RS232, 把两台主机的 DeviceName 改成 /dev/ttys0 。 注:该操作在两台主机上都要做 5 、创建 socket 私网 进入 PrivateNet-Create Socket, 选择主机用于私网
14、的地址,输入远程主机用于私网的地址。说明:这是两台机器通讯用的 IP 地址(心跳 IP ), 注:该操作在两台主机上都要做 6 、获取对方主机信息: 进入 Tools-Network, 直接选中 AutoGet , OK 。这样就会得到对方主机信息。 7 、创建服务: 进入 Services-Create , Type : ORACLE IP Holding NIC :分别选择两台主机所提供外界服务的网卡设备名(如: eth0 ) , 不能与心跳网卡在同一个设备上。 Active IP Address :这是为外界数据库服务的 IP (虚拟 IP )地址。此地址必 须与公网的实际 IP 在同一
15、网段上(也就是与在 IP Holding NIC 中所选择的网卡实际 IP 在同一网段上)。 Active SubnetMask :虚拟 IP 的子网掩码。 Agent Script :相应的监控脚本,如: ha_ag_oracle.x 。 Start Script :相应的启动脚本,如: ora_start.sh 。 Stop Script :相应的停止脚本,如: ora_stop.sh 。 Active Volume :磁盘阵列两台主机共用的文件系统的设备名。如: /dev/sdb1 Backup Volume :磁盘阵列两台主机共用的文件系统的设备名。 Active Volume 应与
16、Backup Volume 的值相同。 Mount Point :与 Active Volume,Backup Volume 值所对应的 mount 点。如: /oracle SwitchBack:NO Oracle 9.2.0 版本的启动脚本 (1)ora_start.sh #!/bin/sh # This file: ora_start.sh # Version: 4.0.1 HAHOME=cat /etc/init.d/HAHOME export HAHOME out=$HAHOME/bin/APIOUT.x JOBNAME=$2 # When Another Server are Do
17、wn, You MUST sleep awhile. # You can change this value to meet your requirement if need. if $1 = anotherdown then /bin/sleep 30 fi # DISKDEV=/dev/sda5 # MOUNTPOINT=/oracle # $HAHOME/bin/dflush $DISKDEV # fsck -a $DISKDEV # if test $? -ne 0 # then # $out INFO fsck $DISKDEV. # fsck -yf $DISKDEV # fi #
18、 mount $DISKDEV $MOUNTPOINT # mount | grep $DISKDEV on $MOUNTPOINT /dev/null 2&1 # if test $? -ne 0 # then # $out INFO Cannot mount $DISKDEV. # exit # fi $HAHOME/bin/ha_ag_oracle.x $JOBNAME 0 if test $? -eq 0 then $out INFO The service has started. exit else $out INFO Start Oracle server. su - oracl
19、e -c $HAHOME/bin/ora_dbshut_ab.sh su - oracle -c $HAHOME/bin/ora_dbstart.sh fi $out INFO Start shell finished. (2) ora_dbstart #!/bin/sh # This file: ora_dbstart.sh # Version: 4.0.1 HAHOME=cat /etc/init.d/HAHOME export HAHOME if test ! $1 -o ! $2 then echo ora_dbstart.sh: Message: ORACLE_SID LISTENE
20、R not specified. else ORACLE_SID=$1 LISTENER=$2 export ORACLE_SID fi # start Oracle Instance # You MUST choose a Oracle setup mode to meet your requirement. # The nether lines for Oracle Version 9 or Later sqlplus / as sysdba ! startup exit ! # The nether lines for Oracle Version 8 or Older # svrmgrl ! # connect internal # startup # exit # !# start Oracle listener lsnrctl start $2 Oracle 9.2.0 的停止脚本 (1)ora_stop.sh #!/bin/sh # This file: ora_stop.sh # Version: