리소스 나열 및 필터링 - Amazon Elastic Compute Cloud

리소스 나열 및 필터링

Amazon EC2 콘솔을 사용하여 리소스의 유형 목록을 얻을 수 있습니다. 사용자는 해당 명령 또는 API 작업을 이용하여 리소스의 각 유형 목록을 획득할 수 있습니다. 리소스가 많은 경우에 결과를 필터링하여 특정 기준에 부합하는 리소스만 포함시키거나 제외할 수 있습니다.

콘솔을 사용하여 리소스 나열 및 필터링

콘솔을 사용하여 리소스 나열

사용자는 콘솔을 이용하여 자주 사용하는 Amazon EC2 리소스의 유형 목록을 확인할 수 있습니다. 추가 리소스를 확인하려면 명령줄 인터페이스 또는 API 작업을 사용합니다.

콘솔을 이용하여 EC2 리소스를 목록화하려면
  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 탐색 창에서 리소스 유형에 해당하는 옵션을 선택합니다. 예를 들어, 인스턴스를 나열하려면 인스턴스(Instances)를 선택합니다.

    이 페이지에는 선택한 리소스 유형의 모든 리소스가 표시됩니다.

콘솔을 사용하여 리소스 필터링

리소스 목록을 필터링하려면
  1. 탐색 창에서 리소스 유형(예: [인스턴스])을 선택합니다.

  2. 검색 필드를 선택합니다.

  3. 목록에서 필터를 선택합니다.

  4. 연산자를 선택합니다(예: =(같음)(= (Equals)). 일부 속성에는 선택할 수 있는 연산자가 더 많습니다. 모든 화면에서 운영자 선택을 지원하는 것은 아닙니다.

  5. 필터 값을 선택합니다.

  6. 선택한 필터를 편집하려면 필터 토큰(파란색 상자)을 선택하고 필요한 내용을 편집한 다음 적용(Apply)을 선택합니다. 모든 화면에서 선택한 필터 편집을 지원하는 것은 아닙니다.

    
							필터를 편집합니다.
  7. 작업을 마쳤으면 필터를 제거합니다.

지원되는 필터

Amazon EC2 콘솔은 두 가지 유형의 필터링을 지원합니다.

  • API 필터링은 서버 측에서 발생합니다. 필터링은 API 호출에 적용되어 서버에서 반환되는 리소스 수를 줄일 수 있습니다. 대규모 리소스 집합을 빠르게 필터링할 수 있으며 서버와 브라우저 간의 데이터 전송 시간과 비용을 줄일 수 있습니다. API 필터링은 =(같음) 및 :(포함) 연산자를 지원하며 항상 대소문자를 구분합니다.

  • 클라이언트 필터링은 클라이언트 측에서 발생합니다. 브라우저에서 이미 사용 가능한 데이터(즉, API에서 이미 반환된 데이터)를 필터링할 수 있습니다. 클라이언트 필터링은 API 필터와 함께 작동하여 브라우저에서 더 작은 데이터 세트로 필터링합니다. 또한 =(같음) 및 :(포함) 연산자, 클라이언트 필터링은 >=(크거나 같음) 및 부정(역) 연산자(예:!=(같지 않음))와 같은 범위 연산자를 지원할 수도 있습니다.

Amazon EC2 콘솔에서는 다음과 같은 유형의 검색을 지원합니다.

키워드로 검색

키워드로 검색은 검색할 속성이나 태그 키를 지정하지 않고도 리소스의 모든 속성이나 태그에서 값을 검색할 수 있는 자유 텍스트 검색입니다.

참고

모든 키워드 검색은 클라이언트 필터링을 사용합니다.

키워드로 검색하려면 검색하려는 키워드를 검색 필드에 입력 또는 붙여넣기한 다음 Enter를 누릅니다. 예를 들어 123을 검색하면 IP 주소, 인스턴스 ID, VPC ID 또는 AMI ID 또는 이름과 같은 태그에 123이 있는 모든 인스턴스가 일치합니다. 자유 텍스트 검색에서 예기치 않은 일치 항목이 반환되는 경우 추가 필터를 적용하세요.

속성으로 검색

속성으로 검색하면 모든 리소스에서 특정 속성을 검색할 수 있습니다.

참고

속성 검색은 선택한 속성에 따라 API 필터링 또는 클라이언트 필터링을 사용합니다. 속성 검색을 수행할 때 그에 따라 속성이 그룹화됩니다.

예를 들어, 모든 인스턴스에 대한 인스턴스 상태 속성을 검색하여 stopped 상태에 있는 인스턴스만 반환할 수 있습니다. 방법:

  1. 인스턴스 화면의 검색 필드에 Instance state를 입력합니다. 문자를 입력하면 인스턴스 상태에 대해 API 필터클라이언트 필터의 두 가지 필터 유형이 표시됩니다.

  2. 서버 측에서 검색하려면 API 필터 아래 인스턴스 상태를 선택합니다. 클라이언트 측에서 검색하려면 클라이언트 필터 아래 인스턴스 상태(클라이언트)를 선택합니다.

    선택한 속성에 사용할 수 있는 연산자 목록이 나타납니다.

  3. =(같음) 연산자를 선택합니다.

    선택한 속성 및 연산자에 사용할 수 있는 값 목록이 나타납니다.

  4. 목록에서 중지됨(Stopped)을 선택합니다.

태그로 검색

태그로 검색하면 현재 표시된 테이블의 리소스를 태그 키 또는 태그 값으로 필터링할 수 있습니다.

태그 검색은 기본 설정 창의 설정에 따라 API 필터링 또는 클라이언트 필터링 중 하나를 사용합니다.

태그에 대한 API 필터링 보장
  1. 기본 설정(Preferences) 창을 엽니다.

  2. 정규 표현식 일치 사용(Use regular expression matching) 확인란을 선택 취소합니다. 이 확인란을 선택하면 클라이언트 필터링이 수행됩니다.

  3. 대소문자 구분 일치 사용(Use case sensitive matching) 확인란을 선택합니다. 이 확인란을 선택 해제하면 클라이언트 필터링이 수행됩니다.

  4. 확인을 선택합니다.

태그별로 검색할 때 다음 값을 사용할 수 있습니다.

  • (비어 있음)((empty)) - 지정된 태그 키는 있지만 태그 값은 없는 모든 리소스를 찾습니다.

  • 모든 값(All values) - 지정된 태그 키와 임의의 태그 값을 가진 모든 리소스를 찾습니다.

  • 태그 없음(Not tagged) - 지정된 태그 키가 없는 모든 리소스를 찾습니다.

  • 표시된 값 - 지정된 태그 키와 지정된 태그 값을 가진 모든 리소스를 찾습니다.

다음 기법을 사용하여 검색을 향상시키거나 구체화할 수 있습니다.

역검색

역검색을 통해, 지정된 값과 일치하지 않는 리소스를 검색할 수 있습니다. 인스턴스(Instances)AMI 화면에서, 역 검색은 !=(같지 않음) 또는 !:(포함하지 않음) 연산자를 선택한 다음 값을 선택하여 수행됩니다. 다른 화면에서 역검색은 검색 키워드 앞에 느낌표(!)를 붙여 수행됩니다.

참고

역검색은 클라이언트 필터의 키워드 검색 및 속성 검색에서만 지원됩니다. API 필터에 대한 속성 검색에서는 지원되지 않습니다.

예를 들어, 모든 인스턴스의 인스턴스 상태 속성을 검색하여 terminated 상태의 모든 인스턴스를 제외할 수 있습니다. 방법:

  1. 인스턴스 화면의 검색 필드에 Instance state를 입력합니다. 문자를 입력하면 인스턴스 상태에 대해 API 필터클라이언트 필터의 두 가지 필터 유형이 표시됩니다.

  2. 클라이언트 필터(Client filters) 아래 인스턴스 상태(클라이언트)(Instance state (client))를 선택합니다. 역검색은 클라이언트 필터에서만 지원됩니다.

    선택한 속성에 사용할 수 있는 연산자 목록이 나타납니다.

  3. !=(같지 않음)을 선택한 다음 종료(terminated)를 선택합니다.

인스턴스 상태 속성을 기준으로 인스턴스를 필터링하려면 인스턴스 상태 열의 검색 아이콘( Search icon. )을 사용할 수도 있습니다. 더하기 기호(+)의 검색 아이콘은 해당 속성에 부합하는 모든 인스턴스를 표시합니다. 빼기 기호(-)의 검색 아이콘은 해당 속성에 부합하는 모든 인스턴스를 제외합니다.

다음은 역검색을 사용한 다른 예제입니다. launch-wizard-1라는 보안 그룹이 할당되지 않은 모든 인스턴스를 나열하려면 클라이언트 필터(Client filters)에서 보안 그룹 이름(Security group name) 속성으로 검색하여 !=을 선택한 다음 검색 창에서 launch-wizard-1을 입력합니다.

부분 검색

부분 검색을 사용하면 부분 문자열 값을 검색할 수 있습니다. 부분 검색을 수행하려면 검색할 키워드의 일부만 입력합니다. 인스턴스(Instances)AMI 화면에서 부분 검색은 오직 :(포함) 연산자를 사용하여 수행할 수 있습니다. 다른 화면에서는 클라이언트 필터 속성을 선택하고 검색할 키워드의 일부만 즉시 입력할 수 있습니다. 예를 들어, 인스턴스 유형(Instance type) 화면에서 모든 t2.micro, t2.smallt2.medium 인스턴스를 검색하려면 인스턴스 유형(Instance Type) 속성으로 검색하고 키워드로 t2를 입력합니다.

정규식 검색

정규식 검색을 사용하려면 기본 창에서 정규식 일치 사용(Use regular expression matching)을 선택해야 합니다.

필드의 값이 특정 패턴에 맞아야 하는 경우 정규식을 유용하게 활용할 수 있습니다. 예를 들어, s로 시작하는 값을 검색하려면 ^s를 검색합니다. xyz로 끝나는 값을 검색하려면 xyz$를 검색합니다. 또는 뒤에 하나 이상의 문자가 오는 숫자로 시작하는 값을 검색하려면 [0-9]+.*를 검색합니다.

참고

정규식 검색은 클라이언트 필터에 대한 키워드 검색 및 속성 검색에서만 지원됩니다. API 필터에 대한 속성 검색에서는 지원되지 않습니다.

대소문자 구분 검색

대소문자 구분 검색을 사용하려면 기본 설정(Preferences) 창에서 대소문자 구분 일치 사용(Use case sensitive matching) 확인란을 선택합니다. 대소문자를 구분하는 기본 설정은 클라이언트 및 태그 필터에만 적용됩니다.

참고

API 필터는 항상 대소문자를 구분합니다.

와일드카드 검색

0개 이상의 문자와 일치시키려면 * 와일드카드를 사용합니다. 0개 또는 1개 이상의 문자와 일치시키려면 ? 와일드카드를 사용합니다. 예를 들어, prod, prodsproduction 값이 있는 데이터 세트가 있는 경우 prod* 검색은 모든 값과 일치하지만 prod?prodprods와만 일치합니다. 리터럴 값을 사용하려면 백슬래시(\)로 이스케이프합니다. 예를 들어, "prod\*"는 prod*와 일치합니다.

참고

와일드카드 검색은 API 필터에 대한 속성 및 태그 검색에서만 지원됩니다. 클라이언트 필터에 대한 키워드 검색 및 속성 및 태그 검색에서는 지원되지 않습니다.

검색 결합

일반적으로 동일한 속성을 가진 여러 필터는 OR을 사용하여 자동으로 조인됩니다. 예를 들어, Instance State : RunningInstance State : Stopped를 검색하면 실행 중이거나 중지된 모든 인스턴스가 반환됩니다. AND를 사용하여 검색을 조인하려면 여러 다른 속성을 검색합니다. 예를 들어 Instance State : RunningInstance Type : c4.large를 검색하면 c4.large 유형이면서 실행 중인 상태의 인스턴스만 반환됩니다.

CLI 및 API를 사용하여 나열 및 필터링

각 리소스 유형에는 사용자가 해당 유형의 리소스를 목록화하기 위해 사용하는 해당 CLI 명령 및 API 작업이 있습니다. 결과 리소스 목록은 길이가 길 수 있기 때문에 결과를 필터링하여 특정 기준에 부합하는 리소스만 포함시키는 것이 더 빠르고 유용할 수 있습니다.

필터링 고려 사항
  • 단일 요청에서 여러 필터와 여러 필터 값을 지정할 수 있습니다.

  • 또한 필터 값과 함께 와일드카드를 사용할 수 있습니다. 별표(*)는 0개 이상의 문자에 해당하고 물음표(?)는 0개 또는 1개의 문자에 해당합니다.

  • 필터 값은 대소문자를 구분합니다.

  • 검색에는 와이드카드 문자의 리터럴 값이 포함될 수 있고 문자 앞에 백슬래시를 사용하면 벗어날 수 있습니다. 예를 들어, \*amazon\?\\ 값은 리터럴 문자열 *amazon?\을 검색합니다.

지원되는 필터

각 Amazon EC2 리소스에 대해 지원되는 필터를 보려면 다음 설명서를 참조하세요.

예: 단일 필터 지정

describe-instances를 사용하여 Amazon EC2 인스턴스를 나열할 수 있습니다. 필터가 없으면 응답에는 모든 리소스에 대한 정보가 포함됩니다. 다음 명령을 사용하여 출력에 실행 중인 인스턴스만 포함할 수 있습니다.

aws ec2 describe-instances --filters Name=instance-state-name,Values=running

실행 중인 인스턴스의 인스턴스 ID만 나열하려면 다음과 같이 --query 파라미터를 추가합니다.

aws ec2 describe-instances --filters Name=instance-state-name,Values=running --query "Reservations[*].Instances[*].InstanceId" --output text

다음은 예제 출력입니다.

i-0ef1f57f78d4775a4 i-0626d4edd54f1286d i-04a636d18e83cfacb
예: 여러 필터 또는 필터 값 지정

여러 필터 또는 여러 필터 값을 지정하는 경우, 리소스는 결과에 포함할 모든 필터와 일치해야 합니다.

다음 명령을 사용하여 유형이 m5.large 또는 m5d.large인 모든 인스턴스를 나열할 수 있습니다.

aws ec2 describe-instances --filters Name=instance-type,Values=m5.large,m5d.large

다음 명령을 사용하여 유형이 t2.micro인 중지된 모든 인스턴스를 나열할 수 있습니다.

aws ec2 describe-instances --filters Name=instance-state-name,Values=stopped Name=instance-type,Values=t2.micro
예: 필터 값에 와일드카드 사용

describe-snapshots를 사용하여 EBS 스냅샷을 설명할 때 database 필터에 대한 필터 값으로 description를 지정하면 명령은 설명이 "database"인 스냅샷만 반환합니다.

aws ec2 describe-snapshots --filters Name=description,Values=database

* 와일드카드는 0개 이상의 문자와 일치합니다. *database*를 필터 값으로 지정하는 경우 명령은 설명에 database라는 단어가 포함된 스냅샷만 반환합니다.

aws ec2 describe-snapshots --filters Name=description,Values=*database*

? 와일드카드는 정확히 1개 문자와 일치합니다. database?를 필터 값으로 지정하는 경우 명령은 설명이 "database"이거나 "database" 뒤에 한 문자가 있는 스냅샷만 반환합니다.

aws ec2 describe-snapshots --filters Name=description,Values=database?

database????를 지정하면 명령은 설명에 “database” 뒤에 최대 4개 문자가 있는 스냅샷만 반환합니다. "database" 뒤에 5개 이상의 문자가 있는 설명은 제외됩니다.

aws ec2 describe-snapshots --filters Name=description,Values=database????
예: 날짜를 기준으로 필터링

AWS CLI를 사용하면 JMESPath를 통해 표현식을 사용하여 결과를 필터링할 수 있습니다. 예를 들어, 다음 describe-snapshots 명령은 지정된 날짜(2020-03-31로 표시) 이전에 AWS 계정 계정에서 생성된 모든 스냅샷의 ID(123456789012로 표시)를 표시합니다. 소유자를 지정하지 않으면 모든 퍼블릭 스냅샷이 결과에 포함됩니다.

aws ec2 describe-snapshots --filters Name=owner-id,Values=123456789012 --query "Snapshots[?(StartTime<='2020-03-31')].[SnapshotId]" --output text

다음 명령은 지정된 날짜 범위에 생성된 모든 스냅샷의 ID를 표시합니다.

aws ec2 describe-snapshots --filters Name=owner-id,Values=123456789012 --query "Snapshots[?(StartTime>='2019-01-01') && (StartTime<='2019-12-31')].[SnapshotId]" --output text
태그를 기준으로 필터링

태그에 따라 리소스 목록을 필터링하는 방법에 대한 예는 명령줄을 사용하여 태그 작업 단원을 참조하십시오.

Amazon EC2 Global View를 사용하여 리전 간 리소스 보기

Amazon EC2 Global View를 사용하면 Amazon EC2 및 Amazon VPC 리소스를 단일 AWS 리전에서, 또는 단일 콘솔에서 동시에 여러 리전에서 보고 검색할 수 있습니다. 자세한 내용은 Amazon EC2 Global View 단원을 참조하십시오.