Resource Explorer 검색 쿼리 예제 - AWS 리소스 탐색기

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Resource Explorer 검색 쿼리 예제

다음 예제는 AWS 리소스 탐색기에서 사용할 수 있는 일반적인 쿼리 유형에 대한 구문을 보여줍니다.

중요

AWS CLI search 명령을 사용하고 --query-string 파라미터 값의 첫 번째 문자로 - 연산자를 사용하는 경우 일반적인 공백 문자 대신 등호 문자(=)를 사용하여 파라미터 이름과 해당 값을 구분해야 합니다. 공백 문자를 사용하면 CLI가 문자열을 잘못 해석합니다. 예를 들어 다음 쿼리는 실패합니다.

aws resource-explorer-2 search --query-string "-tag:none region:us-east-1"

공백을 =으로 대체하는 다음 수정된 쿼리는 예상대로 작동합니다.

aws resource-explorer-2 search --query-string="-tag:none region:us-east-1"

-가 파라미터 값의 첫 번째 문자가 되지 않도록 쿼리 문자열에서 필터 순서를 변경하는 경우 표준 공백 문자를 사용할 수 있습니다. 다음 쿼리는 작동합니다.

aws resource-explorer-2 search --query-string "region:us-east-1 -tag:none"

태그가 지정되지 않은 리소스 검색

계정에서 ABAC(속성 기반 액세스 제어)를 사용하거나, 비용 기반 할당을 사용하거나, 리소스에 대해 태그 기반 자동화를 수행하려는 경우 계정에서 태그가 누락되었을 수 있는 리소스를 알아야 합니다. 다음 예제 쿼리에서는 특이 케이스 필터 태그: 없음을 사용하여 사용자 생성 태그가 누락된 모든 리소스를 반환합니다.

tag:none 필터는 사용자가 생성한 태그에만 적용됩니다. AWS에서 생성하고 유지 관리하는 태그는 이 필터에서 제외되며 결과에는 계속 표시됩니다.

tag:none

모든 AWS 생성된 시스템 태그도 제외하려면 다음 예제와 같이 두 번째 필터를 추가합니다. 쿼리 문자열의 첫 번째 요소는 사용자가 생성한 모든 태그를 필터링하여 이전 예제를 복제합니다. AWS 생성된 시스템 태그는 항상 문자 aws로 시작됩니다. 따라서 tag.key 필터와 함께 논리 부정(NOT) 연산자(-)를 사용하여 aws로 시작되는 키 이름을 가진 태그가 있는 모든 리소스도 제외할 수도 있습니다.

tag:none -tag.key:aws*

태그가 지정된 리소스 검색

모든 유형의 태그가 있는 리소스를 모두 찾으려면 다음과 같이 특이 케이스 태그: 없음 필터와 함께 논리 부정(NOT) 연산자(-)를 사용할 수 있습니다.

-tag:none

특정 태그가 누락된 리소스 검색

또한 ABAC와 관련하여, 지정된 키가 있는 태그가 없는 모든 리소스를 검색할 수도 있습니다. 다음 예제에서는 논리 부정(NOT) 연산자 -를 사용하여 키 이름이 Department인 태그가 없는 모든 리소스를 반환합니다.

-tag.key:Department

잘못된 태그 값을 가진 리소스 검색

규정 준수를 위해 중요한 태그에서 태그 값이 누락되었거나 철자가 틀린 모든 리소스를 검색하는 것이 좋습니다. 다음 예제에서는 키 이름이 environment인 태그가 있는 모든 리소스를 반환합니다. 하지만 쿼리는 유효한 값 prod, integ, dev 중 하나를 가진 모든 리소스를 필터링합니다. 이 쿼리에서 나타나는 모든 결과에는 조사하고 수정해야 하는 다른 값이 있습니다.

중요

Resource Explorer 검색은 대/소문자를 구분하지 않으므로 대/소문자 표기만 다른 키 이름과 값을 구분할 수 없습니다. 예를 들어 다음 예제의 값은PROD, prod, PrOd 또는 모든 변형과 일치합니다. 그러나 일부 애플리케이션에서는 대/소문자를 구분하여 태그를 사용합니다. 소문자 태그 키 이름 및 값만 사용하는 등 조직에 맞게 대문자 사용 전략을 표준화하는 것이 좋습니다. 일관된 접근 방식을 취하면 대/소문자 표기만 다른 태그로 인해 발생할 수 있는 혼란을 피할 수 있습니다.

tag.key:environment -tag:environment=prod -tag:environment=integ -tag:environment=dev

AWS 리전의 하위 집합에서 리소스 검색

전 세계 특정 리전의 모든 리전을 일치시키려면 '*' 와일드카드 연산자를 사용하세요. 다음 예제는 유럽(Europe) 리전에 있는 모든 리소스를 반환합니다.

region:eu-*

글로벌 리소스 검색

region: 필터에 특이 케이스 global 값을 사용하여 글로벌 리소스로 간주되고 개별 리전과 연결되지 않은 리소스를 찾을 수 있습니다.

region:global

특정 리전에 있는 특정 유형의 리소스 검색

여러 필터를 사용하는 경우 Resource Explorer는 접두사를 암시적 논리 AND 연산자와 결합하여 표현식을 평가합니다. 다음 예제에서는 아시아 태평양(홍콩) 리전 AND에 있는 모든 리소스가 Amazon EC2 인스턴스임을 반환합니다.

region:ap-east-1 resourcetype:ec2:instance
참고

암시적 AND로 인해 리소스와 연결된 값을 하나만 가질 수 있는 속성에 대해 하나의 필터만 사용할 수 있습니다. 예를 들어, 리소스는 하나의 AWS 리전에만 속할 수 있습니다. 따라서 다음 쿼리는 결과를 반환하지 않습니다.

region:us-east-1 region:us-west-1

이 제한은 동시에 여러 값을 가질 수 있는 속성(예: tag:, tag.key:, tag.value:)의 필터에는 적용되지 않습니다.

여러 단어로 구성된 용어가 있는 리소스 검색

여러 단어로 구성된 용어를 큰따옴표(")로 묶으면 전체 용어가 지정된 순서대로 포함된 결과만 반환됩니다. 큰따옴표를 사용하지 않으면 Resource Explorer는 해당 용어를 구성하는 개별 단어와 일치하는 리소스를 반환합니다. 예를 들어 다음 쿼리는 큰따옴표를 사용하여 용어 "west wing"과 일치하는 리소스만 반환합니다. 쿼리는 us-west-2 AWS 리전(또는 해당 코드에 west가 포함된 다른 리전)의 리소스 또는 “west”라는 단어 없이 “wing”이라는 단어와 일치하는 리소스와 일치하지 않습니다.

"west wing"

지정된 CloudFormationStack의 일부인 리소스 검색

AWS CloudFormation 스택의 일부로 리소스를 생성하면 자동으로 모든 리소스에 스택의 이름으로 태그가 지정됩니다. 다음 예제에서는 지정된 스택의 일부로 생성된 모든 리소스를 반환합니다.

tag:aws:cloudformation:stack-name=my-stack-name