#/bin/sh
echo "running cloud-init..."
HOSTNAME=`hostname`
IP_TAG=`echo $HOSTNAME | awk -F "-" '{print $1}'`
if [ IP_TAG != "ip" ]
then
echo "not a eucalyptus image, exit"
exit 1;
fi
IP=`echo $HOSTNAME | awk -F "-" '{print $2"."$3"."$4"."$5}'`
#echo -e "\n$IP $HOSTNAME\n"
IP_EXISTS=`grep -c "$IP" /etc/hosts`
if [ $IP_EXISTS = "0" ]
then
sudo sh -c "echo '$IP $HOSTNAME' >> /etc/hosts"
echo "$IP added to /etc/hosts file"
fi
When we want to run hadoop on eucalyptus image, it need set ip address to the hostname first. The image default hostname is like ip-172.18.1.3, which carry ip address information.
So the above script will resolve hostname and set ip address in the host file.
本文介绍了一段用于自动设置Eucalyptus镜像主机名和IP地址的Shell脚本,确保在运行Hadoop前正确配置网络信息。脚本解析主机名,获取IP地址,并将其写入主机文件,适用于自动化部署流程。
1万+

被折叠的 条评论
为什么被折叠?



