메뉴
Amazon Elastic Compute Cloud
User Guide for Linux Instances

Amazon EC2 리소스에 태그 지정

원한다면 고유의 메타데이터를 태그의 형태로 각 리소스에 배정하여 인스턴스, 이미지 및 기타 Amazon EC2 리소스를 쉽게 관리할 수 있습니다. 이 주제에서는 태그를 설명하고 태그를 생성하는 방법을 보여 줍니다.

태그 기본 사항

태그를 사용하면 용도, 소유자 또는 환경을 기준으로 하는 등 AWS 리소스를 다양한 방식으로 분류할 수 있습니다. 할당한 태그에 따라 특정 리소스를 빠르게 식별할 수 있기 때문에 이 기능은 동일 유형의— 리소스가 많을 때 유용합니다. 각 태그는 사용자가 정의하는 와 선택적 으로 구성됩니다. 예를 들어, 계정의 Amazon EC2 인스턴스에 대해 각 인스턴스의 소유자나 스택 수준을 추적하는 데 도움이 되는 태그 세트를 정의할 수 있습니다. 각 리소스 유형에 대한 요건을 충족하는 태그 키 세트를 고안하는 것이 좋습니다. 일관된 태그 키 세트를 사용하면 리소스를 보다 쉽게 관리할 수 있습니다. 추가하는 태그에 따라 리소스를 검색하고 필터링할 수 있습니다.

다음 다이어그램은 태그 지정 방식을 설명합니다. 이 예에서는 OwnerStack이라는 두 태그를 각 인스턴스에 배정했습니다. 또한 각 태그에는 연결된 값이 있습니다.

 태그 예

태그는 Amazon EC2에는 의미가 없으며 엄격하게 문자열로 해석됩니다. 또한 태그는 리소스에 자동으로 배정되지 않습니다. 태그 키와 값을 편집할 수 있으며 언제든지 리소스에서 태그를 제거할 수 있습니다. 태그의 값을 빈 문자열로 설정할 수 있지만 태그의 값을 Null로 설정할 수는 없습니다. 해당 리소스에 대해 키가 기존 태그와 동일한 태그를 추가하는 경우 새 값이 이전 값을 덮어씁니다. 리소스를 삭제하면 리소스 태그도 삭제됩니다.

AWS Management Console, AWS CLI, Amazon EC2 API를 사용하여 태그 관련 작업을 수행할 수 있습니다.

AWS Identity and Access Management(IAM)을 사용하는 경우 AWS 계정에서 태그를 생성, 편집 또는 삭제할 수 있는 권한이 있는 사용자를 제어할 수 있습니다. 자세한 내용은 Amazon EC2 리소스에 대한 액세스 제어 단원을 참조하십시오.

리소스에 태그 지정

계정에 이미 존재하는 대부분의 Amazon EC2 리소스에 태그를 지정할 수 있습니다. 아래의 에는 태그 지정을 지원하는 리소스가 나와 있습니다.

Amazon EC2 콘솔을 사용하는 경우, 관련 리소스 화면에서 [Tags] 탭을 사용하여 리소스에 태그를 적용하거나 [Tags] 화면을 사용할 수 있습니다. 일부 리소스 화면을 사용하면 리소스를 생성할 때 리소스에 대해 태그를 지정할 수 있습니다. 예를 들어 Name의 키가 있는 태그와 지정하는 값이 있습니다. 대부분의 경우, 콘솔은 리소스 생성 직후(리소스 생성 중이 아니라) 태그를 적용합니다. 콘솔은 Name 태그에 따라 리소스를 조직할 수 있지만 이 태그는 Amazon EC2 서비스에 대한 의미가 없습니다.

Amazon EC2 API, AWS CLI 또는 AWS SDK를 사용하는 경우, CreateTags EC2 API 작업을 사용하여 기존 리소스에 태그를 적용할 수 있습니다. 또한 일부 리소스 생성 작업에서는 리소스 생성 시 리소스의 태그를 지정할 수 있습니다. 리소스 생성 도중 태그를 적용할 수 없는 경우, 리소스 생성 프로세스가 롤백됩니다. 이는 태그를 사용하여 리소스가 생성되거나 아예 리소스가 생성되지 않도록 하고 언제든 태그 지정되지 않은 리소스가 남지 않도록 하는 데 도움이 됩니다. 생성 시 리소스에 태그를 지정하면 리소스 생성 후 사용자 지정 태그 지정 스크립트를 실행할 필요가 없습니다.

다음 표는 태그 지정할 수 있는 Amazon EC2와 생성 시 태그 지정할 수 있는 리소스를 설명합니다.

Amazon EC2 리소스 태그 지정 지원

Resource 태그 지원 생성 시 태그 지원(EC2 API, AWS CLI, AWS SDK)

AMI

아니요

번들 작업

아니요

아니요

고객 게이트웨이

아니요

전용 호스트

아니요

아니요

DHCP 옵션

아니요

EBS 스냅샷

아니요

EBS 볼륨

외부 전용 인터넷 게이트웨이

아니요

아니요

탄력적 IP 주소

아니요

아니요

인스턴스

인스턴스 스토어 볼륨

해당 사항 없음

해당 사항 없음

인터넷 게이트웨이

아니요

키 페어

아니요

아니요

NAT 게이트웨이

아니요

네트워크 ACL

아니요

네트워크 인터페이스

아니요

배치 그룹

아니요

아니요

예약 인스턴스

아니요

예약 인스턴스 목록

아니요

아니요
라우팅 테이블

아니요

스팟 인스턴스 요청

아니요

보안 group–EC2-Classic

아니요

보안 group–VPC

아니요

서브넷

아니요

가상 프라이빗 게이트웨이

아니요

VPC

아니요

VPC 엔드포인트

아니요

아니요

VPC 흐름 로그

아니요

아니요

VPC 피어링 연결

아니요

VPN 연결

아니요

생성 시 인스턴스나 볼륨에 태그를 지정하기 위해 Amazon EC2 콘솔의 Amazon EC2 Launch Instances 마법사, RunInstances Amazon EC2 API 또는 CreateVolume Amazon EC2 API를 사용할 수 있습니다. Amazon EC2 콘솔의 [Volumes] 화면을 통해 생성 시 EBS 볼륨에 태그를 지정할 수 있습니다.

IAM 정책에서 CreateVolumeRunInstances Amazon EC2 API 작업에 태그 기반 리소스 수준 권한을 적용하여 생성 시 리소스에 태그를 지정할 수 있는 사용자와 그룹에 대한 세분화된 제어를 구현할 수 있습니다. 리소스를 생성하면 태그가 즉시 적용되기 때문에 생성— 단계부터 리소스를 적절하게 보호할 수 있습니다. 따라서 태그를 기반으로 리소스 사용을 제어하는 리소스 권한이 즉시 발효됩니다. 이에 따라 더욱 정확한 리소스 추적 및 보고가 가능합니다. 새 리소스에서 태그 지정 사용을 적용하고 리소스에서 어떤 태그 키와 값이 설정되는지 제어할 수 있습니다.

IAM 정책에서 CreateTagsDeleteTags Amazon EC2 API 작업에 리소스 수준 권한을 적용하여 기존 리소스에서 어떤 태그 키와 값이 설정되는지 제어할 수도 있습니다. 자세한 내용은 Amazon EC2 API 작업에 지원되는 리소스 수준 권한AWS CLI 또는 AWS SDK 작업을 위한 예제 정책 단원을 참조하십시오.

결제를 위한 리소스 태그 지정에 대한 자세한 내용은 AWS Billing and Cost Management 사용 설명서비용 할당 태그 사용 단원을 참조하십시오.

태그 제한

태그에 적용되는 기본 제한은 다음과 같습니다.

  • 리소스당 최대 태그 수 - 50개

  • 최대 키 길이 - UTF-8의 유니코드 문자 127자

  • 최대 값 길이 - 유니코드 문자 255자(UTF-8)

  • 태그 키와 값은 대/소문자를 구분합니다.

  • 태그 이름이나 값에서 aws: 접두사는 사용하지 마십시오. 이 단어는 AWS용으로 예약되어 있습니다. 이 접두사가 지정된 태그 이름이나 값은 편집하거나 삭제할 수 없습니다. 이 접두사가 지정된 태그는 리소스당 태그 수 제한에 포함되지 않습니다.

  • 태깅 스키마를 여러 서비스와 리소스에서 사용하게 될 경우 다른 서비스 또한 허용되는 문자에 대한 제한이 있을 수 있음을 유의하십시오. 일반적으로 허용되는 문자는 UTF-8로 표현할 수 있는 문자, 공백 및 숫자와 특수 문자 + - = . _ : / @입니다.

태그에만 기초하여 리소스를 종료, 중지 또는 삭제할 수 없습니다. 리소스 식별자를 지정해야 합니다. 예를 들어 DeleteMe라는 태그 키로 태그를 지정한 스냅샷을 삭제하려면 해당 스냅샷의 리소스 식별자(예: DeleteSnapshots)를 지정하여 snap-1234567890abcdef0 작업을 사용해야 합니다.

퍼블릭 또는 공유 리소스에 태그를 지정할 수 있지만, 배정하는 태그는 AWS 계정에만 사용할 수 있으며 해당 리소스를 공유하는 다른 계정에는 사용할 수 없습니다.

모든 리소스에 태그를 지정할 수는 없습니다. 자세한 내용은 Amazon EC2 리소스 태그 지정 지원 단원을 참조하십시오.

리소스에 결제용 태그 지정

태그를 사용하여 비용 구조를 반영하도록 AWS 청구서를 구성할 수 있습니다. 이렇게 하려면 가입하여 태그 키 값이 포함된 AWS 계정 청구서를 가져옵니다. 태그를 사용한 비용 할당 보고서 설정에 대한 자세한 내용은 AWS Billing and Cost Management 사용 설명서월간 비용 할당 보고서 단원을 참조하십시오. 결합된 리소스의 비용을 확인하려면 태그 키 값을 동일한 리소스에 따라 결제 정보를 구성할 수 있습니다. 예를 들어, 특정 애플리케이션 이름으로 여러 리소스에 태그를 지정한 다음 결제 정보를 구성하여 여러 서비스에 걸친 해당 애플리케이션의 총 비용을 볼 수 있습니다. 자세한 내용은 AWS Billing and Cost Management 사용 설명서비용 할당 태그 사용을 참조하십시오.

비용 할당 태그는 비용에 기여하는 리소스를 나타낼 수 있지만, 리소스를 삭제하거나 비활성화한다고 해서 비용이 항상 절감되는 것은 아닙니다. 예를 들어, 원본 데이터가 포함된 스냅샷을 삭제하더라도 다른 스냅샷에서 참조하는 스냅샷 데이터는 보존됩니다. 자세한 내용은 AWS Billing and Cost Management 사용 설명서Amazon Elastic Block Store 볼륨 및 스냅샷을 참조하십시오.

참고

방금 보고서를 활성화한 경우, 24시간 후에 이번 달의 데이터를 볼 수 있습니다.

콘솔을 사용한 태그 작업

Amazon EC2 콘솔을 사용하여 동일 리전의 모든 Amazon EC2 리소스에서 사용 중인 태그를 볼 수 있습니다. 리소스와 리소스 유형별로 태그를 볼 수 있으며, 지정된 태그와 연결되어 있는 각 리소스 유형의 항목 수를 볼 수 있습니다. 또한 Amazon EC2 콘솔을 사용하여 한 번에 하나 이상의 리소스에서 태그를 적용하거나 제거할 수도 있습니다.

리소스 나열 시 필터 사용에 대한 자세한 내용은 리소스 목록화 및 필터링 단원을 참조하십시오.

태그를 중앙에서 통합 생성 및 관리할 수 있는 AWS Management Console의 Tag Editor는 사용하기 쉽고 최상의 결과를 발휘합니다. 자세한 내용은 Getting Started with the AWS Management ConsoleTag Editor 작업 단원을 참조하십시오.

태그 표시

Amazon EC2 콘솔에는 두 가지 방법으로 태그를 표시할 수 있습니다. 개별 리소스에 대한 태그를 표시하거나 모든 리소스에 대한 태그를 표시할 수 있습니다.

개별 리소스에 대한 태그를 표시하려면

Amazon EC2 콘솔에서 리소스 관련 페이지를 선택하면 이러한 리소스의 목록이 표시됩니다. 예를 들어, 탐색 창에서 [Instances]를 선택하는 경우 콘솔에 Amazon EC2 인스턴스 목록이 표시됩니다. 이러한 목록 중 하나(예: 인스턴스)에서 리소스를 선택하는 경우 해당 리소스에서 태그를 지원하면 관련 태그를 보고 관리할 수 있습니다. 대부분의 리소스 페이지에서는 세부 정보 창의 [Tags] 탭에서 태그를 볼 수 있습니다.

키가 동일한 태그의 값을 모두 표시하는 열을 하나 리소스 목록에 추가할 수 있습니다. 이 열을 사용하면 태그별로 리소스 목록을 정렬하고 필터링할 수 있습니다. 리소스에 새 열을 추가하여 태그를 표시하는 방법에는 두 가지가 있습니다.

  • [Tags] 탭에서 [Show Column]을 선택합니다. 새 열이 콘솔에 추가됩니다.

  • [Show/Hide Columns] 기어 모양 아이콘을 선택하고 [Show/Hide Columns] 대화 상자의 [Your Tag Keys]에서 태그 키를 선택합니다.

모든 리소스에 대한 태그를 표시하려면

Amazon EC2 콘솔의 탐색 창에서 [Tags]를 선택하여 모든 리소스의 태그를 표시할 수 있습니다. 다음 이미지는 리소스 유형별로 사용 중인 모든 태그를 나열하는 [Tags] 창을 보여 줍니다.

 Amazon EC2 콘솔의 [Tags] 창

개별 리소스에 대한 태그 추가 및 삭제

리소스 페이지에서 개별 리소스에 대한 태그를 직접 관리할 수 있습니다.

개별 리소스에 태그를 추가하려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 모음에서 요구에 맞는 리전을 선택합니다. 일부 Amazon EC2 리소스는 리전 간에 공유될 수 있지만 그렇지 않은 리소스도 있으므로 잘 선택해야 합니다. 자세한 내용은 리소스 위치 단원을 참조하십시오.

  3. 탐색 창에서 리소스 유형(예: [Instances])을 선택합니다.

  4. 리소스 목록에서 리소스를 선택합니다.

  5. 세부 정보 창에서 [Tags] 탭을 선택합니다.

  6. [Add/Edit Tags] 버튼을 선택합니다.

  7. [Add/Edit Tags] 대화 상자에서 각 태그에 대한 키와 값을 지정하고 [Save]를 선택합니다.

개별 리소스에서 태그를 삭제하려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 모음에서 요구에 맞는 리전을 선택합니다. 일부 Amazon EC2 리소스는 리전 간에 공유될 수 있지만 그렇지 않은 리소스도 있으므로 잘 선택해야 합니다. 자세한 내용은 리소스 위치 단원을 참조하십시오.

  3. 탐색 창에서 리소스 유형(예: [Instances])을 선택합니다.

  4. 리소스 목록에서 리소스를 선택합니다.

  5. 세부 정보 창에서 [Tags] 탭을 선택합니다.

  6. [Add/Edit Tags]를 선택하고 태그의 [Delete] 아이콘을 선택한 다음 [Save]를 선택합니다.

리소스 그룹에 태그 추가 및 삭제

리소스 그룹에 태그를 추가하려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 모음에서 요구에 맞는 리전을 선택합니다. 일부 Amazon EC2 리소스는 리전 간에 공유될 수 있지만 그렇지 않은 리소스도 있으므로 잘 선택해야 합니다. 자세한 내용은 리소스 위치 단원을 참조하십시오.

  3. 탐색 창에서 [ Tags]를 선택합니다.

  4. 콘텐츠 창 맨 위에서 [Manage Tags]를 선택합니다.

  5. [Filter]에서 태그를 추가할 리소스 유형(예: 인스턴스)을 선택합니다.

  6. 리소스 목록에서 태그를 추가할 각 리소스 옆의 확인란을 선택합니다.

  7. [Add Tag]에서 [Key] 및 [Value]에 태그 키와 값을 입력한 다음 [Add Tag]를 선택합니다.

    참고

    태그 키가 기존 태그와 동일한 새 태그를 추가하는 경우 새 태그가 기존 태그를 덮어씁니다.

리소스 그룹에서 태그를 제거하려면

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 모음에서 요구에 맞는 리전을 선택합니다. 일부 Amazon EC2 리소스는 리전 간에 공유될 수 있지만 그렇지 않은 리소스도 있으므로 잘 선택해야 합니다. 자세한 내용은 리소스 위치 단원을 참조하십시오.

  3. 탐색 창에서 [Tags]와 [Manage Tags]를 선택합니다.

  4. 사용 중인 태그를 보려면 [Show/Hide Columns] 기어 모양 아이콘을 선택하고, [Show/Hide Columns] 대화 상자에서 조회할 태그 키를 선택한 다음 [Close]를 클릭합니다.

  5. [Filter]에서 태그를 제거할 리소스 유형(예: 인스턴스)을 선택합니다.

  6. 리소스 목록에서 태그를 제거할 각 리소스 옆에 있는 확인란을 선택합니다.

  7. [Remove Tag]의 [Key] 상자에 태그의 이름을 입력한 다음 [Remove Tag]를 선택합니다.

인스턴스 시작 시 태그 추가

[Launch Wizard]를 사용하여 태그를 추가하려면

  1. 탐색 모음에서 인스턴스를 시작할 리전을 선택합니다. 일부 Amazon EC2 리소스는 리전 간에 공유될 수 있지만 그렇지 않은 리소스도 있으므로 잘 선택해야 합니다. 필요에 따라 적합한 리전을 선택하십시오. 자세한 내용은 리소스 위치 단원을 참조하십시오.

  2. [Launch Instance]를 선택합니다.

  3. [Choose an Amazon Machine Image (AMI)] 페이지에서는 Amazon 머신 이미지(AMI)라 불리는 일련의 기본 구성들을 목록으로 표시합니다. 사용할 AMI를 선택하고 [Select]를 선택합니다. AMI 선택에 대한 자세한 내용은 Linux AMI 찾기 단원을 참조하십시오.

  4. [Configure Instance Details] 페이지에서 필요에 따라 인스턴스 설정을 구성하고 [Next: Add Storage]를 선택합니다.

  5. [Add Storage] 페이지에서 인스턴스에 대한 추가 스토리지 볼륨을 지정할 수 있습니다. 모두 마쳤으면 Next: Add Tags를 선택합니다.

  6. [Add Tags] 페이지에서 인스턴스나 볼륨 또는 이 둘의 태그를 지정합니다. Add Tags를 선택하여 리소스에 한 개 이상의 태그를 인스턴스에 추가할 수 있습니다. 모두 마쳤으면 [Next: Configure Security Group]을 선택합니다.

  7. [Configure Security Group] 페이지에서 소유하는 기존 보안 그룹 중 하나를 선택하거나 마법사를 통해 새 보안 그룹을 생성합니다. 작업을 마치면 [Review and Launch]를 선택합니다.

  8. 설정을 검토합니다. 선택한 항목에 만족하면 [Launch]를 선택합니다. 기존 키 페어를 선택하거나 새 키 페어를 생성하고, 승인 확인란을 선택하고 [Launch Instances]를 선택합니다.

태그를 기준으로 리소스 목록 필터링

하나 이상의 태그 키와 태그 값에 따라 리소스 목록을 필터링할 수 있습니다.

태그를 기준으로 리소스 목록을 필터링하려면

  1. 다음과 같이 태그 열을 표시합니다.

    1. 리소스를 선택합니다.

    2. [Details] 창에서 [Tags]를 선택합니다.

    3. 목록에서 태그를 찾고 [Show Column]을 선택합니다.

  2. 태그 열의 오른쪽 위에 있는 필터 아이콘을 선택하여 필터 목록을 표시합니다.

  3. 태그 값을 선택하고 [Apply Filter]를 선택하여 결과 목록을 필터링합니다.

    참고

    필터에 대한 자세한 내용은 리소스 목록화 및 필터링 단원을 참조하십시오.

CLI 또는 API를 사용한 태그 작업

다음을 사용하여 리소스에 대한 태그를 추가, 업데이트, 조회 및 삭제할 수 있습니다. 해당 설명서의 예제를 참조하십시오.

작업 AWS CLI Windows PowerShell용 AWS 도구 API 작업

하나 이상의 태그를 추가하거나 덮어씁니다.

create-tags

New-EC2Tag

CreateTags

하나 이상의 태그를 삭제합니다.

delete-tags

Remove-EC2Tag

DeleteTags

하나 이상의 태그에 대해 설명합니다.

describe-tags

Get-EC2Tag

DescribeTags

또한 태그에 따라 리소스 목록을 필터링할 수도 있습니다. 다음 예제는 describe-instances 명령으로 태그를 사용하여 인스턴스를 필터링하는 방법을 보여 줍니다.

예제 1: 지정한 태그 키를 갖는 인스턴스에 대한 설명 제공

다음 명령은 태그 값과 상관없이 Stack 태그를 가진 인스턴스에 대한 설명을 제공합니다.

Copy
aws ec2 describe-instances --filters Name=tag-key,Values=Stack

예제 2: 지정한 태그 키를 가진 인스턴스에 대한 설명 제공

다음 명령은 Stack=production 태그를 가진 인스턴스에 대한 설명을 제공합니다.

Copy
aws ec2 describe-instances --filters Name=tag:Stack,Values=production

예제 3: 지정한 태그 값을 가진 인스턴스에 대한 설명 제공

다음 명령은 태그 키와 상관없이 값이 production인 태그를 가진 인스턴스에 대한 설명을 제공합니다.

Copy
aws ec2 describe-instances --filters Name=tag-value,Values=production

일부 리소스 생성 작업에서는 리소스를 생성할 때 태그를 지정할 수 있습니다. 다음 작업은 생성 시 태그 지정을 지원합니다.

작업 AWS CLI Windows PowerShell용 AWS 도구 API 작업

하나 이상의 인스턴스를 시작합니다.

run-instances(인스턴스 실행)

New-EC2Instance(새 EC2 인스턴스)

RunInstances

EBS 볼륨을 생성합니다.

create-volume

New-EC2Volume

CreateVolume

다음 예제는 리소스를 생성할 때 태그를 적용하는 방법을 보여 줍니다.

예제 4: 인스턴스를 시작하고 인스턴스와 볼륨에 태그 적용

다음 명령은 인스턴스를 시작하고 키가 webserver이고 값이 production인 태그를 인스턴스에 적용합니다. 이 명령은 또 생성되는 EBS 볼륨(이 경우에는 루트 볼륨)에 키가 cost-center이고 값이 cc123인 태그를 적용합니다.

Copy
aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-6e7f829e --tag-specifications 'ResourceType=instance,Tags=[{Key=webserver,Value=production}]' 'ResourceType=volume,Tags=[{Key=cost-center,Value=cc123}]'

시작 중에 인스턴스와 볼륨에 동일한 태그 키와 값을 적용할 수 있습니다. 다음 명령은 인스턴스를 시작하고 키가 cost-center이고 값이 cc123인 태그를 인스턴스와 생성되는 일체의 EBS 볼륨에 적용합니다.

Copy
aws ec2 run-instances --image-id ami-abc12345 --count 1 --instance-type t2.micro --key-name MyKeyPair --subnet-id subnet-6e7f829e --tag-specifications 'ResourceType=instance,Tags=[{Key=cost-center,Value=cc123}]' 'ResourceType=volume,Tags=[{Key=cost-center,Value=cc123}]'

예제 5: 볼륨 생성 및 태그 적용

다음 명령은 볼륨을 생성하고 2개의 태그(purpose = productioncost-center = cc123)를 적용합니다.

Copy
aws ec2 create-volume --availability-zone us-east-1a --volume-type gp2 --size 80 --tag-specifications 'ResourceType=volume,Tags=[{Key=purpose,Value=production},{Key=cost-center,Value=cc123}]'