130 lines
5.0 KiB
Bash
Executable File
130 lines
5.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#get IP address of MS
|
|
OS=`uname`
|
|
echo "the OS is $OS"
|
|
logger -t xCAT -p local4.info "the OS is $OS"
|
|
ms_ip=$MONMASTER
|
|
echo "MS IP is $ms_ip"
|
|
logger -t xCAT -p local4.info "the MS is $ms_ip"
|
|
result=`ping -c1 $MONMASTER 2>&1`
|
|
if [ $? -eq 0 ]; then
|
|
index1=`expr index "$result" "\("`
|
|
index2=`expr index "$result" "\)"`
|
|
#ms_ip=${result:$index1+1:$index2-$index1-2}
|
|
pos=`expr $index1 + 1`
|
|
length=`expr $index2 - $index1`
|
|
length=`expr $length - 1`
|
|
ms_ip=`expr substr "$result" $pos $length`
|
|
echo final is $ms_ip
|
|
else
|
|
logger -t xCAT -p local4.info "Gangliamon setup"
|
|
fi
|
|
|
|
CLUSTER=\"$MONSERVER\"
|
|
echo "cluster is $CLUSTER"
|
|
logger -t xCAT -p local4.info "cluster is $CLUSTER"
|
|
MASTER=$ms_ip
|
|
#echo "The new IP is: $NEW_IP"
|
|
#echo "I will replace now....
|
|
gmond_conf="/etc/ganglia/gmond.conf"
|
|
gmond_conf_old="/etc/gmond.conf"
|
|
|
|
if [ $OS == "AIX" ]; then
|
|
echo "into AIX loop"
|
|
logger -t xCAT -p local4.info "into AIX loop"
|
|
if [ -f $gmond_conf_old ]; then
|
|
echo "ganglia version 3.0.7"
|
|
logger -t xCAT -p local4.info "ganglia version 3.0.7"
|
|
grep "xCAT gmond settings done" $gmond_conf_old
|
|
if [ $? -gt 0 ]; then
|
|
/bin/cp -f $gmond_conf_old /etc/gmond.conf.orig
|
|
sed -e "s/setuid = yes/setuid = no/1" $gmond_conf_old > /etc/gmond.conf1
|
|
sed -e 's/name = "unspecified"/name='$CLUSTER'/1' /etc/gmond.conf1 > /etc/gmond.conf2
|
|
sed -e "1,40s/mcast_join = .*/host = $MASTER/" /etc/gmond.conf2 > /etc/gmond.conf3
|
|
sed -e 's/mcast_join/#/g' /etc/gmond.conf3 > /etc/gmond.conf4
|
|
sed -e "s/bind/#/g" /etc/gmond.conf4 > /etc/gmond.conf5
|
|
/bin/cp -f /etc/gmond.conf5 $gmond_conf_old
|
|
rm -f /etc/gmond.conf1 /etc/gmond.conf2 /etc/gmond.conf3 /etc/gmond.conf4 /etc/gmond.conf5
|
|
echo "# xCAT gmond settings done sh" >> $gmond_conf_old
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
|
|
if [ $OS == "AIX" ]; then
|
|
echo "into AIX new loop"
|
|
logger -t xCAT -p local4.info "into AIX new loop"
|
|
if [ -f $gmond_conf ]; then
|
|
echo "ganglia version v3.10"
|
|
logger -t xCAT -p local4.info "ganglia version v3.10"
|
|
grep "xCAT gmond settings done" $gmond_conf
|
|
if [ $? -gt 0 ]; then
|
|
/bin/cp -f $gmond_conf /etc/ganglia/gmond.conf.orig
|
|
sed -e "s/setuid = yes/setuid = no/1" $gmond_conf > /etc/ganglia/gmond.conf1
|
|
sed -e 's/name = "unspecified"/name='$CLUSTER'/1' /etc/ganglia/gmond.conf1 > /etc/ganglia/gmond.conf2
|
|
sed -e "1,40s/mcast_join = .*/host = $MASTER/" /etc/ganglia/gmond.conf2 > /etc/ganglia/gmond.conf3
|
|
sed -e 's/mcast_join/#/g' /etc/ganglia/gmond.conf3 > /etc/ganglia/gmond.conf4
|
|
sed -e "s/bind/#/g" /etc/ganglia/gmond.conf4 > /etc/ganglia/gmond.conf5
|
|
/bin/cp -f /etc/ganglia/gmond.conf5 $gmond_conf
|
|
rm -f /etc/ganglia/gmond.conf1 /etc/ganglia/gmond.conf2 /etc/ganglia/gmond.conf3 /etc/ganglia/gmond.conf4 /etc/ganglia/gmond.conf5
|
|
echo "# xCAT gmond settings done sh" >> $gmond_conf
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
|
|
|
|
if [ $OS != "AIX" ]; then
|
|
echo "not AIX"
|
|
logger -t xCAT -p local4.info "not AIX"
|
|
if [ -f $gmond_conf ]; then
|
|
grep "xCAT gmond settings done" $gmond_conf
|
|
if [ $? -gt 0 ]; then
|
|
/bin/cp -f $gmond_conf /etc/ganglia/gmond.conf.orig
|
|
sed -i 's/setuid = yes/setuid = no/1' $gmond_conf
|
|
sed -i 's/name = "unspecified"/name='$CLUSTER'/1' $gmond_conf
|
|
sed -e "1,50s/^ *mcast_join = .*/host = $MASTER/" $gmond_conf > /etc/temp.conf
|
|
/bin/cp -f /etc/temp.conf $gmond_conf
|
|
sed -i 's/^ *mcast_join/#mcast_join/g' $gmond_conf
|
|
sed -i 's/^ *bind/#bind/g' $gmond_conf
|
|
echo "# xCAT gmond settings done sh" >> $gmond_conf
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
|
|
if [ $OS != "AIX" ]; then
|
|
echo "not AIX"
|
|
logger -t xCAT -p local4.info "not AIX"
|
|
|
|
if [ -f $gmond_conf_old ]; then
|
|
grep "xCAT gmond settings done" $gmond_conf_old
|
|
if [ $? -gt 0 ]; then
|
|
/bin/cp -f $gmond_conf_old /etc/gmond.conf.orig
|
|
sed -i 's/setuid = yes/setuid = no/1' $gmond_conf_old
|
|
sed -i 's/name = "unspecified"/name='$CLUSTER'/1' $gmond_conf_old
|
|
sed -e "1,40s/mcast_join = .*/host = $MASTER/" $gmond_conf_old > /etc/temp.conf
|
|
/bin/cp -f /etc/temp.conf $gmond_conf_old
|
|
sed -i 's/mcast_join/#/g' $gmond_conf_old
|
|
sed -i 's/bind/#/g' $gmond_conf_old
|
|
echo "# xCAT gmond settings done sh_old" >> $gmond_conf_old
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
if [ ! -f $gmond_conf ]; then
|
|
# echo "file not found"
|
|
logger -t gmonfail "gmond configuration file not found"
|
|
logger -t xCAT -p local4.warning "gmond configuration file not found"
|
|
fi
|
|
|
|
if [ ! -f $gmond_conf_old ]; then
|
|
# echo "file not found"
|
|
logger -t gmonfail "gmond configuration file not found"
|
|
logger -t xCAT -p local4.warning "gmond configuration file not found"
|
|
fi
|
|
|
|
exit 0
|