본문 바로가기

Compute/EC2

Amazon EC2 태그 기준으로 Instance Private IP 확인 CLI

aws ec2 describe-instances --filters "Name=tag:Name,Values=wisen-blog-ec2" |jq '.Reservations[].Instances[0] | select(.State.Name == "running")' |jq '.PrivateIpAddress'
(jq: https://stedolan.github.io/jq/)

#!/bin/bash
privateIpList=$(aws ec2 describe-instances --filters "Name=tag:Name,Values=wisen-blog-ec2" |jq '.Reservations[].Instances[0] | select(.State.Name == "running")' |jq '.PrivateIpAddress')
for ip in $privateIpList
do
        echo $ip
        rsync -avz --delete /home/html/new_mobile/ $ip::new_mobile
done

Auto Scaling이나 뭐 기타 일?로 인해 EC2가 정보가 변경될 경우 managed 서버에서 위 스크립트를 참고로 주기적으로 EC2 Instance IP List를 확인하고 필요한 작업들을 해주면 됩니다.