본문 바로가기

리눅스

AWS CLI를 사용하여 EC2 리소스의 태그를 확인, 추가 및 삭제하는 방법

728x90

AWS CLI를 사용하여 EC2 리소스의 태그를 확인, 추가 및 삭제하는 방법

AWS EC2 인스턴스 내에서 EC2 인스턴스의 메타데이터 엔드포인트를 통해 현재 인스턴스의 ID 조회

curl -s http://169.254.169.254/latest/meta-data/instance-id

EC2 리소스의 태그 확인

aws ec2 describe-instances --instance-ids <instance-id> --query 'Reservations[*].Instances[*].[Tags]'

<instance-id>를 실제 EC2 인스턴스의 ID로 바꿔주셔야 합니다.

aws ec2 describe-instances \
--instance-ids `curl -s http://169.254.169.254/latest/meta-data/instance-id` \
--query 'Reservations[*].Instances[*].[Tags]' --output table

EC2 리소스에 태그 추가

aws ec2 create-tags --resources <resource-id> --tags Key=<key>,Value=<value>

<instance-id>를 EC2 인스턴스의 ID로 <key>와 <value>를 추가하고 싶은 태그의 키와 값으로 바꿔주셔야 합니다.

aws ec2 create-tags \
--resources `curl -s http://169.254.169.254/latest/meta-data/instance-id` \
--tags Key=Deployment,Value=codedeploy Key=Environment,Value=production

EC2 리소스의 특정 태그 삭제

aws ec2 delete-tags --resources <resource-id> --tags Key=<key>

<instance-id>를 EC2 인스턴스의 ID로 <key>를 삭제하고자 하는 태그의 키로 바꿔주셔야 합니다.

aws ec2 delete-tags \
--resources `curl -s http://169.254.169.254/latest/meta-data/instance-id` \
--tags Key=Deployment,Value=codedeploy Key=Environment,Value=production

 

인스턴스의 ID 조회

aws ec2 describe-instances --query "Reservations[].Instances[].InstanceId"

인스턴스의 ID, Name, PrivateIP 조회

aws ec2 describe-instances \
--query 'Reservations[*].Instances[*].{Name: Tags[?Key==`Name`].Value | [0], Instance:InstanceId, PrivateIP: PrivateIpAddress}' \
--output table

instance_ids1

여러 인스턴스의 ID를 지정하고 원하는 태그를 추가

aws ec2 create-tags \
--resources i-03abcdef1 i-040abcdef0 \
--tags Key=Deployment,Value=codedeploy Key=Environment,Value=production

 

참고URL

- AWS CLI Command Reference : https://docs.aws.amazon.com/cli/latest/reference/ec2/

 

728x90