# # Setup hostname # echo "post scripts" >/root/post.log export PRINIC=#TABLE:noderes:THISNODE:primarynic# if [ -z "$PRINIC" ] then export PRINIC=eth0 fi IP=$(ifconfig $PRINIC | grep inet | awk '{print $2}' | awk -F: '{print $2}') if [ -z $IP ] then dhclient eth0 IP=$(ifconfig $PRINIC | grep inet | awk '{print $2}' | awk -F: '{print $2}') fi echo "search #TABLE:site:key=domain:value#" >/etc/resolv.conf for i in $(echo #TABLE:site:key=nameservers:value# | tr ',' ' ') do echo "nameserver $i" done >>/etc/resolv.conf export HOSTNAME=$(host $IP 2>/dev/null | awk '{print $5}' | awk -F. '{print $1}') hostname $HOSTNAME # # Run xCAT post install # export MASTER_IP="#XCATVAR:XCATMASTER#" export MASTER_IPS="#XCATVAR:XCATMASTER#" export MASTER="#XCATVAR:XCATMASTER#" cd /tmp RAND=$(perl -e 'print int(rand(50)). "\n"') sleep $RAND for i in $(seq 1 20) do GOTIT=0 for i in $MASTER_IPS do wget -l inf -N -r --waitretry=10 --random-wait --retry-connrefused -t 0 -T 60 ftp://$i/postscripts #wget --wait=10 --random-wait --waitretry=10 --retry-connrefused -t 0 -T 60 http://$i/install/autoinst/xcatpost.tar.gz if [ "$?" = "0" ] then if [ -x /usr/sbin/stunnel -o -x /usr/bin/stunnel ]; then #Stop if no stunnel to help the next bit echo client=yes > /etc/stunnel/stunnel.conf echo foreground=yes >> /etc/stunnel/stunnel.conf echo output=/dev/null >> /etc/stunnel/stunnel.conf echo verify=0 >> /etc/stunnel/stunnel.conf echo '[xcatd]' >> /etc/stunnel/stunnel.conf echo accept=400 >> /etc/stunnel/stunnel.conf echo connect=$i:3001 >> /etc/stunnel/stunnel.conf stunnel & STUN_PID=$! sleep 1 fi mv $i/postscripts /xcatpost rm -rf $i chmod +x /xcatpost/* /xcatpost/getpostscript.awk |sed -e 's/<[^>]*>//g'|egrep -v '^ *$'|sed -e 's/^ *//' > /tmp/mypostscript MYCONT=`cat /tmp/mypostscript` while [ -z "$MYCONT" ]; do let SLI=$RANDOM%10+10 sleep $SLI /xcatpost/getpostscript.awk |sed -e 's/<[^>]*>//g'|egrep -v '^ *$'|sed -e 's/^ *//' > /tmp/mypostscript MYCONT=`cat /tmp/mypostscript` done chmod +x /tmp/mypostscript GOTIT=1 break fi done if [ "$GOTIT" = "1" ] then break fi RAND=$(perl -e 'print int(rand(5)). "\n"') sleep $RAND done cd /xcatpost #gunzip xcatpost.tar.gz #tar -xvf xcatpost.tar #/xcatpost/#TABLE:nodelist:THISNODE:node# export PATH=/xcatpost:$PATH /tmp/mypostscript export NODE=#TABLE:nodelist:THISNODE:node# export OSVER=#TABLE:nodetype:THISNODE:os# export ARCH=#TABLE:nodetype:THISNODE:arch# addsiteyum iscsiadm -m discovery -t st -p #TABLE:iscsi:$NODE:server# uploadboot cd / rm -Rf /xcatpost rm -f /tmp/mypostscript rm -f /etc/stunnel/stunnel.conf exit 0