高可用集群服务器的配置和使用
Sep 8
 在前面的关于红旗HA高可用服务器的安装和配置,都是基于SE版本,也就是有共享盘柜的情况下进行。但其实红旗HA服务器还有一个LE版本,专用于在数据量不是特别大,也没有共享盘柜的情况下,可以用每台服务器各自的磁盘做镜像,实现数据同步,以满足高可用环境的功能。
 配置LE版镜像高可用服务器,与配置SE版共享盘柜高可用服务器有两个区别:
引用
1、需要建立镜像磁盘;
2、需要对镜像磁盘进行有效的监控。

Tags: , ,
Dec 2
 由于有项目说原来红旗HA 4.1上监控Oracle有问题,在进行大量数据备份或操作的时候,会自动发生切换,但这个时候Oracle是正常的。
 考虑到原来的脚本一直使用的都是pid进程监控的方法,可能Oracle的部分进程出现问题后,并不会马上影响Oracle的服务,一段时间后他就自动恢复了。但这对于HA来说,觉得他已经出现问题了。
 基于这样的故障,重新写了一下脚本:点击下载
Tags: , , ,
Dec 1
 上面用模板的方式介绍了如何安装红旗HA 4.1,但里面没有详细的介绍启动、关闭脚本以及监控脚本的编写方式,今天再来看看。
1、准备
 在编写脚本前,我们需要了解清楚脚本的编写位置以及它实际运行位置的不同:
 假设我们使用配置工具生成的clp.conf文件存放在/rfha目录中,而HA软件默认是安装在/opt/redflag/hacluster目录中,就出现了这样的对应关系:
引用

/rfha/scripts/oracle   ==>  /opt/redflag/hacluster/scripts/oracle

  基于这样的关系,HA自身引用的start.sh和stop.sh的路径是已经嵌入到HA中的,所以可以不用调整;但start.sh和stop.sh中使用的命令,如果原来是放在/rfha/scipts下的话,这必须在start.sh和stop.sh中使用绝对路径,指向/opt/redflag/hacluster/scripts目录中。
 理论的说明不容易理解,我们从下面的实例讲解吧。
※必须记住的一点是,所有引用的命令,除非有PATH指定,否则都应该放在和clp.conf文件的同一个上层目录中,也就是/rfha/scripts下。否则导入配置后,另一台机器就找不到路径了。

2、编写启动和关闭脚本
1)先是编写HA的启动和关闭脚本:
◎路径:/rfha/scripts/oracle/oracleexec/
◎start.sh:

echo "NORMAL1"
               if [ "$CLP_SERVER" = "HOME" ]
               then
                       echo "NORMAL2"
               else
                       echo "ON_OTHER1"
               fi
su - oracle -c "/opt/redflag/hacluster/scripts/oracle/oracleexec/dbstart"
su - oracle -c "lsnrctl start;agentctl start"
       else
               echo "ERROR_DISK from START"

以及

echo "FAILOVER2"
               else
                       echo "ON_OTHER2"
               fi
su - oracle -c "/opt/redflag/hacluster/scripts/oracle/oracleexec/dbstart"
su - oracle -c "lsnrctl start;agentctl start"
       else
               echo "ERROR_DISK from FAILOVER"


◎stop.sh:

echo "NORMAL2"
               else
                       echo "ON_OTHER1"
               fi
su - oracle -c "lsnrctl stop;agentctl stop"
su - oracle -c "/opt/redflag/hacluster/scripts/oracle/oracleexec/dbshut"
       else
               echo "ERROR_DISK from START"

以及

echo "FAILOVER2"
               else
                       echo "ON_OTHER2"
               fi
su - oracle -c "lsnrctl stop;agentctl stop"
su - oracle -c "/opt/redflag/hacluster/scripts/oracle/oracleexec/dbshut"
       else
               echo "ERROR_DISK from FAILOVER"

※注意启动和关闭命令的绝对路径以及命令在start.sh、stop.sh脚本中的位置
2)引用的Oracle启动和关闭命令
◎路径/rfha/scripts/oracle/oracleexec/
◎dbstart:
[root@db01 oracleexec]# pwd
/rfha/scripts/oracle/oracleexec
[root@db01 oracleexec]# cat dbstart
sqlplus /nolog <<EOF
conn / as sysdba
startup
EOF

◎dbshut:

[root@db01 oracleexec]# pwd
/rfha/scripts/oracle/oracleexec
[root@db01 oracleexec]# cat dbshut
sqlplus /nolog <<EOF
conn / as sysdba
shutdown immediate
EOF

3)留意dbstart和dbshut绝对路径的位置。
 因为配置只是在其中一台机器db01上配置的,db02上并没有/rfha目录。
 所以,在我们导入配置的时候,dbstart和dbshut的路径就会改变了。
4)导入到HA配置文件中
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片
点击在新窗口中浏览此图片

3、编写监控脚本
◎路径/rfha/scripts/oracle/oraclemon/
◎start.sh:

[root@db01 oraclemon]# cat start.sh
#! /bin/sh
#***************************************
#*              start.sh               *
#***************************************

#set -n
declare -a PROCS
PROCS[0]="ora_pmon"
PROCS[1]="ora_dbw"
PROCS[2]="ora_lgwr"
PROCS[3]="ora_ckpt"
PROCS[4]="ora_smon"
PROCS[5]="ora_reco"

#PROCS[2]="XXXX" #u can add new process
while true; do
               echo $PROCS
               for proc in "${PROCS[@]}"
               do
                       echo $proc
                       running=`ps -ef |grep $proc | grep -v grep`
                       if [ "x" = "x$running" ]; then
                               echo "$proc is not present now!"
                               exit 2  #break while loop
                       fi
               done
               sleep 5  #sleep for next while loop
done
Tags: , ,
Nov 30
 上面已经介绍了如何在红旗DC 4.1上安装Oracle 9i 9204数据库,今天我来利用这个环境,讲解一下如何使用两台DC 4.1和HA 4.1实现高可用的服务。
 红旗的HA 4.1产品分为LE、SE、SX三个版本:LE用于没有共享盘柜的x86或x86_64平台上;SE用于有共享盘柜的x86或x86_64平台上;SX针对的是安腾2的平台,功能与SE类似。这里以SE版本为例说明、LE的使用在附录里面会介绍。
Tags: , , , ,
分页: 1/1 第一页 1 最后页 [ 显示模式: 摘要 | 列表 ]