Skip to content

Instantly share code, notes, and snippets.

@kubihie
Last active August 29, 2015 14:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kubihie/7c77b1f6dd10476eaa50 to your computer and use it in GitHub Desktop.
Save kubihie/7c77b1f6dd10476eaa50 to your computer and use it in GitHub Desktop.
Add crond,rsyslog restart
#!/bin/bash -ex
RETRYLIMIT=3
RETRYINTERVAL=2
\cp -f /usr/share/zoneinfo/Japan /etc/localtime
sed -i -e "s/ZONE=.*$/ZONE=\"Asia\/Tokyo\"/" /etc/sysconfig/clock
sed -i -e "s/UTC=.*$/UTC=false/" /etc/sysconfig/clock
echo 'ARC=false' >> /etc/sysconfig/clock
service crond restart
yum install jq -y
yum update -y
CMD='curl -s --connect-timeout 5 --max-time 10 http://169.254.169.254/latest/meta-data/placement/availability-zone/'
for i in $(seq 1 ${RETRYLIMIT})
do
RET=$(${CMD} 2>&1)
RESULT=$?
[ ${RESULT} -eq 0 ] && break
[ $i -ge ${RETRYLIMIT} ] && logger "get region failed." && exit 1
sleep ${RETRYINTERVAL}
done
REGION=$(echo ${RET} | sed -e "s/.$//")
CMD='curl -s --connect-timeout 5 --max-time 10 http://169.254.169.254/latest/meta-data/instance-id'
for i in $(seq 1 ${RETRYLIMIT})
do
RET=$(${CMD} 2>&1)
RESULT=$?
[ ${RESULT} -eq 0 ] && break
[ $i -ge ${RETRYLIMIT} ] && logger "get instance-id failed." && exit 1
sleep ${RETRYINTERVAL}
done
INSTANCEID=${RET}
CMD="aws ec2 describe-tags --region ${REGION} --filters "Name=resource-id,Values=${INSTANCEID}""
for i in $(seq 1 ${RETRYLIMIT})
do
RET=$(${CMD} 2>&1)
RESULT=$?
[ ${RESULT} -eq 0 ] && break
[ $i -ge ${RETRYLIMIT} ] && logger "get Name failed" && exit 1
sleep ${RETRYINTERVAL}
done
NAME=$(echo ${RET} | jq '.Tags[] | select(.Key == "Name") | .Value' | tr -d '"' | tr -d "\n")
hostname ${NAME}
sed -i -e "1s/$/ ${NAME}/" /etc/hosts
sed -i -e "s/HOSTNAME=.*$/HOSTNAME=${NAME}/" /etc/sysconfig/network
service rsyslog restart
resize2fs /dev/xvda1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment