#!/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