HA Monitor Kit for Oracle Description and User's Guide
This section describes an example of environmental definition for a system that uses HA Monitor Kit. This example uses the system configuration shown in the following figure in which an Oracle instance and an Oracle listener are monitored by a single server.
Figure 3-11 System configuration in which an Oracle instance and an Oracle listener are monitored by a single server
#1: The following directory paths are used in the environment definition example:
#2: This is the interval at which the server monitoring command performs monitoring.
An environment definition example for this system configuration follows:
192.168.100.1 server1 # alias IP address |
ORCL1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = server1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = orcl1)
)
)
|
ORACLE_SID=orcl1 ORACLE_BASE=/home/oracle ORACLE_HOME=/home/oracle/product/10.2.0/db_1 ORACLE_USER=oracle PATROL=120 ABORT_LIMIT=180 |
LISTENER_NAME=LISTENER ORACLE_BASE=/home/oracle ORACLE_HOME=/home/oracle/product/10.2.0/db_1 ORACLE_USER=oracle PATROL=120 ABORT_LIMIT=180 |
#!/bin/sh
set -x
INTERFACE=eth0:1 # LAN interface name
IPADDR=192.168.100.1 # alias IP address
NETMASK=255.255.255.0 # netmask address
BROADCAST=192.168.100.255 # broadcast address
RETRYCNT=2 # retry count
# Retry for the alias IP address adding.
exitcode=1
loopcnt=0
while [ $loopcnt -lt $RETRYCNT ]
do
# The alias IP address is added to the LAN interface.
/sbin/ifconfig $INTERFACE inet $IPADDR netmask $NETMASK broadcast $BROADCAST
# The information on old routing cache is deleted.
/bin/echo 0 > /proc/sys/net/ipv4/route/flush
# The ARP caches are updated.
IFNAME=`echo $INTERFACE | /bin/sed -e 's/:[0-9]*$//'`
/sbin/arping -U -c 2 -I $IFNAME $IPADDR
# Was the alias IP address registered to the system ?
RCD=`/sbin/ifconfig -a | /bin/grep ":$IPADDR "`
if [ "$RCD" = "" ]
then
# When it is not registered, "1" is returned as the termination code.
exitcode=1
loopcnt=`/usr/bin/expr $loopcnt + 1`
else
# When it is registered, "0" is returned as the termination code.
exitcode=0
break
fi
done
exit $exitcode
|
#!/bin/sh
set -x
INTERFACE=eth0:1 # LAN interface name
RETRYCNT=1 # retry count
# Retry for the alias IP address delete.
exitcode=1
loopcnt=0
while [ $loopcnt -lt $RETRYCNT ]
do
# The alias IP address is deleted from the LAN interface.
/sbin/ifconfig $INTERFACE down
# Was the alias IP address deleted from the system ?
RCD=`/sbin/ifconfig -a | /bin/grep "$INTERFACE "`
if [ "$RCD" = "" ]
then
# When it is deleted, "0" is returned as the termination code.
exitcode=0
break
else
# When it is not deleted, "1" is returned as the termination code.
exitcode=1
loopcnt=`/usr/bin/expr $loopcnt + 1`
sleep 1
fi
done
# The information on old routing cache is deleted.
/bin/echo 0 > /proc/sys/net/ipv4/route/flush
exit $exitcode
|
/* Server environment definition */ server name /opt/hitachi/HAmon/etc/orasrv/actcommand_orasrv, alias orasrv, acttype monitor, initial online#, termcommand /opt/hitachi/HAmon/etc/orasrv/termcommand_orasrv, patrolcommand /opt/hitachi/HAmon/etc/orasrv/patrol_orasrv.sh, disk /dev/vg01, fs_name /dev/vg01/lvol1, fs_mount_dir /ora_mnt, lan_updown use, waitserv_exec yes, servexec_retry 0, start_timeout 180; |
#! /bin/sh
####################################################################
LOGNAME=orasrv
LOGSIZE=1048576
####################################################################
act_proc(){
RT_CD=0
# Listener
haoralsnrbgn LISTENER
# Instance
haorainsbgn orcl1
return ${RT_CD}
}
####################################################################
: (omitted)
|
#! /bin/sh
####################################################################
LOGNAME=orasrv
LOGSIZE=1048576
####################################################################
term_proc(){
RT_CD=0
case "$1" in
"-e" ) # normal end
# Instance
haorainsend orcl1
if [ "$?" != "0" ]
then
RT_CD=1
fi
# Listener
haoralsnrend LISTENER
if [ "$?" != "0" ]
then
RT_CD=2
fi
;;
"-w" ) # monswap
# Instance
haorainsend orcl1
if [ "$?" != "0" ]
then
RT_CD=1
fi
# Listener
haoralsnrend LISTENER
if [ "$?" != "0" ]
then
RT_CD=2
fi
;;
"-c" ) # down
# Instance
haorainsend orcl1
# Listener
haoralsnrend LISTENER
;;
esac
return ${RT_CD}
}
####################################################################
: (omitted)
|
#! /bin/sh
####################################################################
LOGNAME=orasrv
LOGSIZE=1048576
PATROL_INTERVAL=5
####################################################################
patrol_proc(){
# Instance
haorainsptl orcl1
if [ "$?" != "0" ]
then
return 1
fi
# Listener
haoralsnrptl LISTENER
if [ "$?" != "0" ]
then
return 2
fi
return 0
}
####################################################################
: (omitted)
|
#! /bin/sh #################################################################### ORACLE_USER=oracle PATROL_SHELL=/opt/hitachi/HAmon/etc/patrolcommand_orasrv #################################################################### : (omitted) |
All Rights Reserved. Copyright (C) 2011, 2014, Hitachi, Ltd.