rsyncするインスタンスをAWS EC2のNameタグを元に判断する

5分で作ったスクリプトのメモ
・管理サーバから実行することを想定
・(EC2インスタンスのNameタグ)は「prd-web」等を想定
・IAMrole使用
・jq使用
・並列実行風

[code]
#!/bin/bash
################
# Sync2DocRoot #
################

SYNCHOST=(`aws ec2 describe-instances –filters Name=tag-value,Values="(EC2インスタンスのNameタグ)*" | jq ‘.Reservations[].Instances[]|{PrivateIpAddress}’ | grep "PrivateIpAddress" | awk ‘{print $NF}’ | sed -e "s/"//g"`)

SRCDIR="(DocumentRootに配置するコンテンツのあるディレクトリ)"
DSTDIR="(WebサーバのDocumentRoot)"
#USER="root"

for ((i=0; i<${#SYNCHOST[*]}; i++))
do
rsync -avc –delete -e ‘ssh -c arcfour256 -o StrictHostKeyChecking=no’ ${SRCDIR} ${USER}@${SYNCHOST[$i]}:${DSTDIR} &
done
wait

exit 0
[/code]

rsyncするインスタンスをAWS EC2のNameタグを元に判断する” への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です