登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

飞哥的技术博客

世上无难事,只怕有心人!

 
 
 

日志

 
 
 
 

MC/SG双机系统安装和配置  

2009-09-26 21:45:09|  分类: Linux |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

  MC/SG双机系统安装和配置

该补丁包文件为X1_mobile_patches.depot,大小为254,648,320Bytes,将该文件传输到/tmp目录下

使用lanscan可以查找系统中有几块网卡及其相关的信息,在本工程中可以看到每台机器上有lan0、lan1、lan2等三块网卡,其作用如下:

双机心跳线使用10 Base-T网卡,配置在不同网段192.168.0.1,使用直连线连接。(直连线的制作需要自己动手,HP不提供,请参阅有关文档)

可通过系统工具sam进行将网卡IP地址更改到需要的工作网段上,并可通过查看/etc/rc.config.d/netconf文件来查看当前网络的配置情况,在配置完工作网卡的IP地址后,要选定一个工作用的IP地址,应和工作网卡在同一个网段,如:

cp /etc/hosts.equiv /etc/cmcluster/cmclnodelist

rcp /etc/hosts.equiv fadata1:/etc/hosts.equiv

rcp /etc/hosts.equiv fadata1:/etc/cmcluster/cmclnodelist

pvcreate -f -s 200M /dev/rdsk/c3t0d4 /dev/rdsk/c4t1d4

#vgcreate /dev/vglock /dev/dsk/c3t0d4 /dev/dsk/c4t1d4

#vgexport -v -p -s -m /tmp/vglock.map /dev/vglock

    确定XXDATA1和XXDATA2双机上的VG01、VG02、VG03、VGLOCK处于非活动状态

通过hostname来查看各主机的名称,并确定在CRCT1为主机,CRCT2为备份机。

#cmcheckconf -v -C /etc/cmcluster/cluster.ascii

   #cmmakepkg -p /etc/cmcluster/informix/pkg1.conf

PACKAGE_NAME               pkg1                  

FAILOVER_POLICY                CONFIGURED_NODE

FAILBACK_POLICY                 MANUAL

NODE_NAME....................................................................................................................................................................... xxdata2                 

HALT_SCRIPT_TIMEOUT              NO_TIMEOUT

SERVICE_NAME                   xxecs                

SERVICE_FAIL_FAST_ENABLED      NO                      

SERVICE_HALT_TIMEOUT            300          

ora_ckpt_${SID_NAME}  ora_smon_${SID_NAME} ora_lgwr_${SID_NAME} ora_reco_${SID_NAME} ora_arc0_${SID_NAME}

PATH=${ORACLE_HOME}/bin:/sbin:/usr/bin:/usr/sbin:/etc:/bin

   PFILE=${ORACLE_HOME}/dbs/init${SID_NAME}.ora

        print "ORACLE: The file ${PFILE} does not exist."

        print "\tERROR:  Failed to start Oracle database."

    if [[ ${ORA_7_3_X} = yes || ${ORA_8_0_X} = yes || ${ORA_8_1_X} = yes ]]

su oracle -c ${ORACLE_HOME}/bin/svrmgrl <<EOF

su oracle -c ${ORACLE_HOME}/bin/sqldba lmode=y <<EOF

#   Start the listener process for SQL*Net V2 or Net8.

    if [[ ${ORA_7_3_X} = yes || ${ORA_8_0_X} = yes || ${ORA_8_1_X} = yes ]]

        if [[ ${SQLNET} = yes || ${NET8} = yes ]] 

            su oracle -c "${ORACLE_HOME}/bin/lsnrctl start ${LISTENER_NAME}"

                print "Oracle lsnrctl start failed."

                print "Oracle lsnrctl start done."

    if [[ ${ORA_7_3_X} = yes || ${ORA_8_0_X} = yes || ${ORA_8_1_X} = yes ]]

        su oracle -c ${ORACLE_HOME}/bin/svrmgrl <<EOF

        su oracle -c ${ORACLE_HOME}/bin/sqldba lmode=y <<EOF

    set -m                                                            

    if [[ ${ORA_7_3_X} = yes || ${ORA_8_0_X} = yes || ${ORA_8_1_X} = yes ]]

        su oracle -c ${ORACLE_HOME}/bin/svrmgrl <<EOF

        if [[ ${SQLNET} = yes || ${NET8} = yes ]] 

            su oracle -c ${ORACLE_HOME}/bin/lsnrctl <<EOF

         su oracle -c ${ORACLE_HOME}/bin/sqldba lmode=y <<EOF

        if [[ ${SQLNET} = yes || ${NET8} = yes ]] 

            su oracle -c ${ORACLE_HOME}/bin/lsnrctl <<EOF

    typeset -i num_procs=${#MONITOR_PROCESSES[@]}

        for i in ${MONITOR_PROCESSES[@]}

           -fu oracle | awk '/'${i}$'/ { print $2 }'`       #JAGad06432

           if [[ ${id} = "" ]]                                     #JAGad06432

                print "\n *** ${i} process has stopped. ***\n"

                while (( c < $num_procs ))

                    if [[ ${MONITOR_PROCESSES[$c]} = $i ]]

                        unset MONITOR_PROCESSES[$c]

                        c=$num_procs

                    (( c = c + 1 ))

        if [[ ${MONITOR_PROCESSES[@]} = "" ]]

            job=$(jobs | grep -v Done)

                print "Killing the kill_hung_processes script\n"

     print "This monitor script has been signaled to terminate\n"

       -fu oracle | awk '/'${i}$'/ { print $2 }'`            #JAGad06432

                print "\n *** ${0} kill_hung_processes function did NOT find process ***\n *** ${i} running. ***\n"

                print "\n *** ${0} kill_hung_processes function did find process ***\n *** ${i} running.  Sent SIGKILL. ***\n"

            print " *** kill_hung_processes function did NOT find ANY process running. ***\n"

       MONITOR_PROCESSES_PID[$n]=`ps -fu oracle | awk '/'${i}$'/ { print $2 }'` #JAGad06432

        print "Monitored process = ${i}, pid = ${MONITOR_PROCESSES_PID[$n]}"

        if [[ ${MONITOR_PROCESSES_PID[$n]} = "" ]]

            print "\n *** ${i} has failed at startup time.  Aborting Oracle. ***"

            nohup ${0} fault &    # The script calls itself with the fault option.

        for i in ${MONITOR_PROCESSES_PID[@]}

            kill -s 0 ${i} > /dev/null

                print "\n *** ${i} has failed.  Aborting Oracle. ***"

                nohup ${0} fault &    # The script calls itself with the fault option.

print "\n *** $0 called with $1 argument. ***\n"

        print "\n \"${HOST}\": Starting Oracle SESSION $SID_NAME at ${DATE} "

        print "\n \"${HOST}\": Aborting Oracle SESSION $SID_NAME at ${DATE} "

        print "\n \"${HOST}\": Shutting down Oracle SESSION $SID_NAME at ${DATE} "

        print "Usage: ${0} [ shutdown | halt | start | monitor ]"

有关群集状态的信息保存在状态数据库中,此数据库可在群集的每个节点上进行维护.发出cmviewcl命令,可显示数据库中包含的信息

Starting 群集正在确定其活动成员关系.至少有一个群集守候进程运行

发出cmviewcl 命令的节点不能与群集中的其他节点通信

节点状态是运行还是停止取决于群集守候进程是否运行。注意:从群集的角度来看一个节点可能处于停止状态,但它仍旧在运行HP-UX。

Failed:此状态下的节点永远也看不到它自己。如果此节点在活动的群几种,则群集中其他活动的成员会看到处于此状态的节点,但是此节点不再是活动的并且未暂停。

Reforming:群集重组时节点处于这种状态。节点当前运行的协议可确保所有节点都同意活动的群集中新的成员关系。如果达成了一致,状态数据库将更新,以便反映新的群集成员关系。

Running :对于最终的重组来说,处于这种状态的节点已完成所有要求的操作并正常运行

Halted:此状态下的节点永远也看不到它自己。此节点从容的离开活动的群集之后,其他节点将会看到节点处于此状态,如通过使用cmhaltnode命令

Unknown:此状态下的节点永远也看不到它自己。如果某个节点从来不是活动的群集成员,则其他节点将把此状态指派给此节点。

程序包切换。启用它意味着万一出现故障时,程序包可以切换到另一个节点

节点切换启用。启用意味着程序包可以切换到引用的节点。禁用则意味着程序包不能切换到指定的节点,除非已使用cmmodpkg命令为该程序包启用了节点

Uninitialized。群集配置中包括服务,但是不能在控制脚本中使用运行命令启动此服务

Unknown。我们不能确定接口是运行还是停止。群集停止时会发生这种情况,备用接口具有这种状态

CONFIGURED_NODE。程序包会故障切换到程序包配置文件的节点列表中的下一个节点

MIN_PACKAGE_NODE。程序包会故障切换到群集运行的程序包最少的节点

对于FAILBACK_POLICY参数,程序包也可配置为两个值中的一个:

AUTOMATIC。当主节点再次可用时,具有这种设置的程序包将在故障切换后返回到它的注      节点

MANUAL。具有这种设置的程序包必须在故障切换后由系统管理员返回到它的原节点。

使用cmrunpkg 命令可以在特殊节点上运行程序包,然后使用cmmodpkg命令来启用程序包切换。例如

此命令将启动xxdata1上的程序包,接着启动程序包切换。由于暂停程序包会禁用切换,所以当程序包以前曾在某个节点上暂停时,必须按此顺序操作

如果不想使用程序包但是还是希望节点继续运行,可暂停MC/ServiceGuard程序包。使用cmhaltpkg命令可暂停程序包,如下所述:

使用MC/ServiceGuard命令可以从一个节点移动程序包到另一个节点

移动程序包之前,使用cmhaltpkg命令在主节点上暂停此程序包,此操作不仅暂停程序包,而且还将禁止程序包切换回暂停节点,所以在移动程序包之后,必须重新启动此程序包并启用切换,在cmrunpkg之后发出cmmodpkg –e package_name命令可以做到这一点。

创建于: 2006-04-24 13:56:38,
引文来源  MC/SG双机系统安装和配置 - 皮皮的BLOG

  评论这张
 
阅读(557)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018