Amazon OpenSearch 서버리스 컬렉션 생성, 나열 및 삭제 - 아마존 OpenSearch 서비스

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

Amazon OpenSearch 서버리스 컬렉션 생성, 나열 및 삭제

Amazon OpenSearch Serverless의 컬렉션은 분석 워크로드를 나타내는 하나 이상의 인덱스를 논리적으로 그룹화한 것입니다. OpenSearch 서비스는 컬렉션을 자동으로 관리하고 조정하므로 수동 입력을 최소화할 수 있습니다.

필요한 권한

OpenSearch 서버리스는 컬렉션을 만들고 관리하는 데 다음 AWS Identity and Access Management (IAM) 권한을 사용합니다. 사용자를 특정 컬렉션으로 제한하도록 IAM 조건을 지정할 수 있습니다.

  • aoss:CreateCollection – 컬렉션을 생성합니다.

  • aoss:ListCollections – 현재 계정의 컬렉션을 나열합니다.

  • aoss:BatchGetCollection – 하나 이상의 컬렉션에 대한 세부 정보를 가져옵니다.

  • aoss:UpdateCollection – 컬렉션을 수정합니다.

  • aoss:DeleteCollection – 컬렉션을 삭제합니다.

다음 샘플 자격 증명 기반 액세스 정책은 사용자가 Logs라는 단일 컬렉션을 관리하는 데 필요한 최소 권한을 제공합니다.

[ { "Sid":"Allows managing logs collections", "Effect":"Allow", "Action":[ "aoss:CreateCollection", "aoss:ListCollections", "aoss:BatchGetCollection", "aoss:UpdateCollection", "aoss:DeleteCollection", "aoss:CreateAccessPolicy", "aoss:CreateSecurityPolicy" ], "Resource":"*", "Condition":{ "StringEquals":{ "aoss:collection":"Logs" } } } ]

컬렉션이 제대로 작동하려면 암호화, 네트워크, 데이터 액세스 정책이 필요하기 때문에 aoss:CreateAccessPolicyaoss:CreateSecurityPolicy가 포함됩니다. 자세한 정보는 Amazon OpenSearch 서버리스를 위한 ID 및 액세스 관리을 참조하세요.

참고

계정에서 첫 번째 컬렉션을 생성하려면 iam:CreateServiceLinkedRole 권한도 필요합니다. 자세한 정보는 서비스 연결 역할을 사용하여 서버리스 컬렉션 생성 OpenSearch 을 참조하세요.

컬렉션 생성

콘솔 또는 를 사용하여 서버리스 컬렉션을 AWS CLI 생성할 수 있습니다. 다음 단계에서는 검색 또는 시계열 컬렉션을 만드는 방법을 다룹니다. 벡터 검색 컬렉션을 만들려면 벡터 검색 컬렉션 작업(을)를 참조하세요.

컬렉션 생성(콘솔)

콘솔을 사용하여 컬렉션 생성하기
  1. https://console.aws.amazon.com/aos/home/ 에서 아마존 OpenSearch 서비스 콘솔로 이동합니다.

  2. 왼쪽 탐색 창에서 Serverless(서버리스)를 확장하고 Collections(컬렉션)를 선택합니다.

  3. Create collection(컬렉션 생성)을 선택합니다.

  4. 컬렉션의 이름과 설명을 입력합니다. 이름은 다음 조건을 충족해야 합니다.

    • 계정별로 고유하며 AWS 리전

    • 소문자로 시작할 것

    • 3~32자 사이일 것

    • 소문자 a~z, 숫자 0~9 및 하이픈(-)만 포함할 것

  5. 컬렉션 유형 선택:

    • Search(검색) – 내부 네트워크 및 인터넷 연결 애플리케이션의 애플리케이션을 지원하는 전체 텍스트 검색입니다. 모든 검색 데이터는 빠른 쿼리 응답 시간을 보장하기 위해 핫 스토리지에 저장됩니다.

    • Time series(시계열) – 대량의 반구조화된 기계 생성 데이터를 분석하는 데 중점을 둔 로그 분석 세그먼트입니다. 최소 24시간 분량의 데이터는 핫 인덱스에 저장되고 나머지는 웜 스토리지에 유지됩니다.

    • 벡터 검색 - 벡터 데이터 관리를 간소화하는 벡터 임베딩에 대한 시맨틱 검색입니다. 기계 학습(ML) 증강 검색 경험과 챗봇, 개인 비서, 사기 탐지와 같은 생성형 AI 애플리케이션을 강화합니다.

    자세한 정보는 컬렉션 유형 선택을 참조하세요.

  6. 배포 유형에서 컬렉션의 중복성 설정을 선택합니다. 기본적으로 각 컬렉션은 중복으로 생성됩니다. 즉, 인덱싱 및 검색 OCU ( OpenSearch Compute Unit) 는 각각 다른 가용 영역에 자체 대기 복제본을 보유합니다. 개발 및 테스트 목적으로 중복성을 비활성화하여 컬렉션의 OCU 수를 2개로 줄일 수 있습니다. 자세한 정보는 작동 방식을 참조하세요.

  7. 암호화에서 데이터를 암호화하는 데 사용할 AWS KMS 키를 선택합니다. OpenSearch 서버리스는 입력한 컬렉션 이름이 암호화 정책에 정의된 패턴과 일치하는지 여부를 알려줍니다. 이 일치 항목을 유지하거나 고유한 암호화 설정으로 재정의하도록 선택할 수 있습니다. 자세한 정보는 Amazon OpenSearch 서버리스에서의 암호화을 참조하세요.

  8. Network access settings(네트워크 액세스 설정)에서 컬렉션에 대한 네트워크 액세스를 구성합니다.

    • 액세스 유형에서 공개 또는 비공개를 선택합니다. 그런 다음 컬렉션에 액세스할 AWS 서비스 수 있는 VPC 엔드포인트를 지정합니다.

    • 리소스 유형의 경우 컬렉션에 액세스할 수 있는 OpenSearch엔드포인트 (curl, Postman 등을 통한 API 호출), OpenSearch 대시보드 엔드포인트 (시각화 작업 및 콘솔을 통한 API 호출) 또는 두 가지를 통해 컬렉션에 액세스할 수 있는지 여부를 선택합니다.

      참고

      AWS 서비스 비공개 액세스는 엔드포인트에만 적용되고 대시보드 OpenSearch 엔드포인트에는 적용되지 않습니다. OpenSearch

    OpenSearch 서버리스는 입력한 컬렉션 이름이 네트워크 정책에 정의된 패턴과 일치하는지 알려줍니다. 이 일치 항목을 유지하거나 사용자 지정 네트워크 설정으로 재정의하도록 선택할 수 있습니다. 자세한 정보는 Amazon OpenSearch 서버리스를 위한 네트워크 액세스을 참조하세요.

  9. (선택 사항) 컬렉션에 하나 이상의 태그를 추가합니다. 자세한 정보는 Amazon OpenSearch 서버리스 컬렉션에 태그 지정을 참조하세요.

  10. 다음을 선택하세요.

  11. 컬렉션 내의 데이터에 액세스할 수 있는 사용자를 정의하는 컬렉션에 대한 데이터 액세스 규칙을 구성합니다. 생성하는 각 규칙에 대해 다음 단계를 수행하세요.

    • Add principals(보안 주체 추가)를 선택하고 데이터 액세스를 제공할 하나 이상의 IAM 역할 또는 SAML 사용자 및 그룹을 선택합니다.

    • Grant permissions(권한 부여)에서 연결된 보안 주체에 부여할 별칭, 템플릿 및 인덱스 권한을 선택합니다. 전체 권한 및 해당 목록에서 허용되는 액세스는 지원되는 OpenSearch API 작업 및 권한 섹션을 참조하세요.

    OpenSearch 서버리스는 입력한 컬렉션 이름이 데이터 액세스 정책에 정의된 패턴과 일치하는지 여부를 알려줍니다. 이 일치 항목을 유지하거나 고유한 데이터 액세스 설정으로 재정의하도록 선택할 수 있습니다. 자세한 정보는 Amazon OpenSearch 서버리스의 데이터 액세스 제어을 참조하세요.

  12. 다음을 선택하세요.

  13. Data access policy settings(데이터 액세스 정책 설정)에서 방금 생성한 규칙으로 수행할 작업을 선택합니다. 이를 사용하여 데이터 액세스 정책을 새로 생성하거나 기존 정책에 추가할 수 있습니다.

  14. 컬렉션 구성을 검토하고 Submit(제출)을 선택합니다.

OpenSearch 서버리스가 컬렉션을 생성하면 컬렉션 상태가 Creating 로 변경됩니다.

컬렉션 생성(CLI)

를 사용하여 컬렉션을 만들려면 먼저 컬렉션의 AWS CLI의도한 이름과 일치하는 리소스 패턴을 사용하는 암호화 정책이 있어야 합니다. 예를 들어 컬렉션 로그 애플리케이션의 이름을 지정하려는 경우 다음과 같은 암호화 정책을 생성할 수 있습니다.

aws opensearchserverless create-security-policy \ --name logs-policy \ --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AWSOwnedKey\":true}"

정책을 추가 컬렉션에 사용하려는 경우 collection/logs* 또는 collection/*과 같이 규칙을 더 광범위하게 만들 수 있습니다.

또한 컬렉션에 대한 네트워크 설정을 네트워크 정책의 형태로 구성해야 합니다. 이전 로그 애플리케이션 예시를 사용하여 다음과 같은 네트워크 정책을 생성할 수 있습니다.

aws opensearchserverless create-security-policy \ --name logs-policy \ --type network --policy "[{\"Description\":\"Public access for logs collection\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/logs-application\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AllowFromPublic\":true}]"
참고

컬렉션을 생성한 후에 네트워크 정책을 생성해도 되지만, 네트워크 정책은 컬렉션보다 먼저 생성하는 것이 좋습니다.

컬렉션을 만들려면 CreateCollection요청을 보내세요.

aws opensearchserverless create-collection --name "logs-application" --type SEARCH --description "A collection for storing log data"

type에서 SEARCH 또는 TIMESERIES를 지정합니다. 자세한 정보는 컬렉션 유형 선택을 참조하세요.

샘플 응답

{ "createCollectionDetail": { "id": "07tjusf2h91cunochc", "name": "books", "description":"A collection for storing log data", "status": "CREATING", "type": "SEARCH", "kmsKeyArn": "auto", "arn": "arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc", "createdDate": 1665952577473 } }

요청에 컬렉션 유형을 지정하지 않으면 기본값은 TIMESERIES입니다. 컬렉션이 AWS 소유 키로 암호화된 경우 kmsKeyArn은 ARN이 아니라 auto입니다.

중요

컬렉션을 생성한 후에는 데이터 액세스 정책과 일치하지 않는 한 컬렉션에 액세스할 수 없습니다. 데이터 액세스 정책을 생성하는 방법에 대한 지침은 Amazon OpenSearch 서버리스의 데이터 액세스 제어 섹션을 참조하세요.

OpenSearch 대시보드 액세스

를 사용하여 컬렉션을 만든 후 컬렉션의 OpenSearch 대시보드 URL로 이동할 수 있습니다. AWS Management Console왼쪽 탐색 창에서 컬렉션을 선택하고 해당 컬렉션을 선택한 다음 세부 정보 페이지를 열면 Dashboards URL을 찾을 수 있습니다. URL은 https://dashboards.us-east-1.aoss.amazonaws.com/_login/?collectionId=07tjusf2h91cunochc 형식을 취합니다. URL을 탐색하면 Dashboards에 자동으로 로그인됩니다.

OpenSearch 대시보드 URL을 이미 사용할 수 있지만 에 없는 경우 브라우저에서 대시보드 URL을 호출하면 콘솔로 리디렉션됩니다. AWS Management Console AWS 자격 증명을 입력하면 대시보드에 자동으로 로그인됩니다. SAML용 컬렉션에 액세스하는 방법에 대한 자세한 내용은 SAML을 OpenSearch 사용하여 대시보드 액세스를 참조하십시오.

OpenSearch 대시보드 콘솔 제한 시간은 1시간이며 구성할 수 없습니다.

참고

2023년 5월 10일에 대시보드를 위한 공통 글로벌 엔드포인트가 OpenSearch 도입되었습니다. OpenSearch 이제 다음과 같은 형식의 URL을 사용하여 브라우저에서 OpenSearch 대시보드로 이동할 수 있습니다. https://dashboards.us-east-1.aoss.amazonaws.com/_login/?collectionId=07tjusf2h91cunochc 이전 버전과의 호환성을 보장하기 위해 해당 형식을 사용하는 기존 컬렉션별 OpenSearch 대시보드 엔드포인트를 계속 지원할 예정입니다. https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com/_dashboards

컬렉션 보기

Amazon OpenSearch Service 콘솔의 컬렉션 탭에서 기존 컬렉션을 볼 수 있습니다. AWS 계정

컬렉션을 해당 ID와 함께 나열하려면 ListCollections요청을 보내십시오.

aws opensearchserverless list-collections

샘플 응답

{ "collectionSummaries":[ { "arn":"arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc", "id":"07tjusf2h91cunochc", "name":"my-collection", "status":"CREATING" } ] }

검색 결과를 제한하려면 컬렉션 필터를 사용합니다. 이 요청은 ACTIVE 상태의 컬렉션에 대한 응답을 필터링합니다.

aws opensearchserverless list-collections --collection-filters '{ "status": "ACTIVE" }'

OpenSearch 엔드포인트 및 OpenSearch 대시보드 엔드포인트를 포함하여 하나 이상의 컬렉션에 대한 자세한 정보를 얻으려면 BatchGetCollection요청을 보내십시오.

aws opensearchserverless batch-get-collection --ids ["07tjusf2h91cunochc", "1iu5usc4rame"]
참고

요청에 --names 또는 --ids를 포함할 수 있지만 둘 다 포함할 수는 없습니다.

샘플 응답

{ "collectionDetails":[ { "id": "07tjusf2h91cunochc", "name": "my-collection", "status": "ACTIVE", "type": "SEARCH", "description": "", "arn": "arn:aws:aoss:us-east-1:123456789012:collection/07tjusf2h91cunochc", "kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "createdDate": 1667446262828, "lastModifiedDate": 1667446300769, "collectionEndpoint": "https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com", "dashboardEndpoint": "https://07tjusf2h91cunochc.us-east-1.aoss.amazonaws.com/_dashboards" }, { "id": "178ukvtg3i82dvopdid", "name": "another-collection", "status": "ACTIVE", "type": "TIMESERIES", "description": "", "arn": "arn:aws:aoss:us-east-1:123456789012:collection/178ukvtg3i82dvopdid", "kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab", "createdDate": 1667446262828, "lastModifiedDate": 1667446300769, "collectionEndpoint": "https://178ukvtg3i82dvopdid.us-east-1.aoss.amazonaws.com", "dashboardEndpoint": "https://178ukvtg3i82dvopdid.us-east-1.aoss.amazonaws.com/_dashboards" } ], "collectionErrorDetails":[] }

컬렉션 삭제

컬렉션을 삭제하면 컬렉션의 모든 데이터와 인덱스가 삭제됩니다. 컬렉션을 삭제한 후에는 복구할 수 없습니다.

콘솔을 사용하여 컬렉션 삭제하기
  1. Amazon OpenSearch 서비스 콘솔의 컬렉션 패널에서 삭제하려는 컬렉션을 선택합니다.

  2. [삭제(Delete)]를 선택하고 삭제 의사를 확인합니다.

를 사용하여 컬렉션을 삭제하려면 DeleteCollection요청을 보내십시오. AWS CLI

aws opensearchserverless delete-collection --id 07tjusf2h91cunochc

샘플 응답

{ "deleteCollectionDetail":{ "id":"07tjusf2h91cunochc", "name":"my-collection", "status":"DELETING" } }