Amazon OpenSearch 서비스에서 구성 변경 - 아마존 OpenSearch 서비스

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

Amazon OpenSearch 서비스에서 구성 변경

Amazon OpenSearch Service는 도메인을 업데이트할 때 블루/그린 배포 프로세스를 사용합니다. 블루/그린 배포는 프로덕션 환경을 복제하고 업데이트가 완료되면 사용자를 새 환경으로 라우팅하는 도메인 업데이트용으로 유휴 환경을 만듭니다. 블루/그린 배포에서는 블루 환경이 현재 프로덕션 환경입니다. 그린 환경은 유휴 환경입니다.

데이터는 블루 환경에서 그린 환경으로 마이그레이션됩니다. 새 환경이 준비되면 OpenSearch 서비스는 환경을 전환하여 녹색 환경을 새로운 프로덕션 환경으로 만듭니다. 전환은 데이터 손실 없이 이루어집니다. 이렇게 하면 가동 중지가 최소화되고, 새로운 환경에 배포하는 데 실패하더라도 원래의 환경이 유지됩니다.

블루/그린 배포의 원인이 되는 변경 사항

다음 작업에서는 블루/그린 배포가 사용됩니다.

  • 인스턴스 유형 변경

  • 세분화된 액세스 제어 활성화

  • 서비스 소프트웨어 업데이트 수행

  • 전용 프라이머리 노드 활성화 또는 비활성화

  • Multi-AZ without Standby 활성화 또는 비활성화

  • 스토리지 유형, 볼륨 유형 또는 볼륨 크기 변경

  • 다른 VPC 서브넷 선택

  • VPC 보안 그룹 추가 또는 제거

  • 대시보드에 대한 Amazon Cognito 인증 활성화 또는 비활성화 OpenSearch

  • 다른 Amazon Cognito 사용자 풀 또는 자격 증명 풀 선택

  • 고급 설정 수정

  • 새 OpenSearch 버전으로 업그레이드 (일부 또는 전체 업그레이드 중에는 OpenSearch 대시보드를 사용하지 못할 수 있음)

  • 저장된 데이터 암호화 또는 암호화 활성화 node-to-node

  • 콜드 스토리지 활성화 UltraWarm 또는 비활성화

  • 자동 조정 사용 중지 및 변경 내용 롤백

  • 선택적 플러그인을 도메인에 연결 및 선택적 플러그인을 도메인에서 분리

  • 두 개의 전용 마스터 노드가 있는 다중 AZ 도메인의 전용 마스터 노드 수 증가

  • EBS 볼륨 크기 줄이기

  • EBS 볼륨 크기, IOPS 또는 처리량 변경 (마지막 변경이 진행 중이거나 6시간 미만 전에 변경된 경우)

  • 에 감사 로그를 게시할 수 있도록 합니다. CloudWatch

Multi-AZ with Standby 도메인의 경우 한 번에 하나의 변경 요청만 할 수 있습니다. 변경이 이미 진행 중인 경우 새 요청은 거부됩니다. DescribeDomainChangeProgress API로 현재 변경의 상태를 확인할 수 있습니다.

블루/그린 배포가 발생하지 않는 변경 사항

대부분의 경우 다음 작업에서는 블루/그린 배포가 사용되지 않습니다.

  • 액세스 정책 수정

  • 사용자 지정 엔드포인트 수정

  • 전송 계층 보안(TLS) 정책 변경

  • 자동 스냅샷 시간 변경

  • HTTPS 요구 활성화 또는 비활성화

  • 변경 사항을 롤백하지 않고 자동 조정 사용 설정 또는 사용 중지

  • 도메인에 전용 마스터 노드가 있는 경우, 데이터 노드 또는 UltraWarm 노드 수 변경

  • 도메인에 전용 마스터 노드가 있는 경우, 전용 마스터 인스턴스 유형 또는 수 변경 (두 개의 전용 마스터 노드가 있는 다중 AZ 도메인 제외)

  • 다음과 같은 오류 로그 또는 느린 로그의 게시를 활성화 또는 비활성화합니다. CloudWatch

  • 에 대한 감사 로그 게시 비활성화 CloudWatch

  • 데이터 노드당 최대 3TiB까지 볼륨 크기 증가, 볼륨 유형, IOPS 또는 처리량 변경

  • 태그 추가 및 삭제

참고

서비스 소프트웨어 버전에 따라 몇 가지 예외가 있습니다. 변경으로 인해 블루/그린 배포가 발생하지 않도록 하려면 이 옵션을 사용할 수 있는 경우 도메인을 업데이트하기 전에 테스트 실행을 수행하세요. 일부 변경 사항에는 테스트 실행 옵션이 제공되지 않습니다. 일반적으로 트래픽이 가장 많은 시간 외에는 클러스터를 변경하는 것이 좋습니다.

변경 사항으로 인해 블루/그린 배포가 발생하는지 판단

계획된 구성 변경의 일부 유형을 테스트하여 변경 내용을 적용하지 않고도 블루/그린 배포가 발생할지 여부를 확인할 수 있습니다. 구성 변경을 시작하기 전에 콘솔 또는 API를 사용하여 검증 확인을 실행하여 도메인을 업데이트할 수 있는지 확인합니다.

Console
구성 변경을 검증하려면
  1. 에서 Amazon OpenSearch 서비스 콘솔로 이동합니다https://console.aws.amazon.com/aos/.

  2. 왼쪽 탐색 창에서 Domains(도메인)를 선택합니다.

  3. 구성을 변경할 도메인을 선택합니다. 그러면 도메인 세부 정보 페이지가 열립니다. Actions(작업) 드롭다운 메뉴를 선택한 다음 Edit cluster configuration(클러스터 구성 편집)을 선택합니다.

  4. Edit cluster configuration(클러스터 구성 편집) 페이지에서 인스턴스 유형, 노드 수 및 기타 구성을 변경할 수 있습니다. 요약 패널에서 변경 내용을 확인한 후 Run(실행)을 선택합니다.

  5. 모의 실습이 완료되면 모의 실습 ID와 함께 결과가 페이지 하단에 자동으로 표시됩니다. 이 결과를 통해 변경 사항이 어떤 범주에 속하는지 알 수 있습니다.

    • 블루/그린 배포 시작

    • 블루/그린 배포 필요 없음

    • 변경 사항을 저장하기 전에 해결해야 하는 검증 오류 포함

    각 모의 실습은 이전 모의 실습을 덮어씁니다. 나중에 각 모의 실습의 세부 정보를 조회하려면 모의 실습 ID를 저장해야 합니다. 각 모의 실습은 90일 동안 또는 구성을 업데이트할 때까지 사용할 수 있습니다.

  6. 구성 업데이트를 계속하려면 Save changes(변경 사항 저장)를 선택합니다. 그렇지 않은 경우 취소를 선택합니다. 둘 중 어느 옵션을 선택하든 Cluster configuration(클러스터 구성) 탭으로 돌아갑니다. 이 탭에서 Dry run details(모의 실습 세부 정보)를 선택하여 최신 모의 실습의 세부 정보를 볼 수 있습니다. 이 페이지에는 테스트 실행 이전의 구성과 테스트 실행 구성을 side-by-side 비교한 내용도 포함되어 있습니다.

API

구성 API를 통해 모의 실습 검증을 수행할 수 있습니다. API로 변경 사항을 테스트하려면 DryRuntrue로 설정하고 DryRunModeVerbose로 설정합니다. 상세 표시 모드는 변경 사항이 블루/그린 배포를 시작할지 여부를 결정하는 것 외에도 검증 확인을 실행합니다. 예를 들어, 이 UpdateDomainConfig요청은 UltraWarm 다음을 활성화하여 생성된 배포 유형을 테스트합니다.

POST https://es.us-east-1.amazonaws.com/2021-01-01/opensearch/domain/my-domain/config { "ClusterConfig": { "WarmCount": 3, "WarmEnabled": true, "WarmType": "ultrawarm1.large.search" }, "DryRun": true, "DryRunMode": "Verbose" }

요청은 검증 확인을 실행하고 변경으로 인해 발생할 배포 유형을 반환하지만 실제로 업데이트를 수행하지는 않습니다.

{ "ClusterConfig": { ... }, "DryRunResults": { "DeploymentType": "Blue/Green", "Message": "This change will require a blue/green deployment." } }

가능한 배포 유형은 다음과 같습니다.

  • Blue/Green - 변경으로 인해 블루/그린 배포가 발생합니다.

  • DynamicUpdate - 변경으로 인해 블루/그린 배포가 발생하지 않습니다.

  • Undetermined - 도메인이 여전히 처리 중 상태이므로 배포 유형을 결정할 수 없습니다.

  • None - 구성 변경이 없습니다.

검증에 실패하면 검증 실패 목록이 반환됩니다.

{ "ClusterConfig":{ "..." }, "DryRunProgressStatus":{ "CreationDate":"2023-01-12T01:14:33.847Z", "DryRunId":"db00ca39-48b2-4774-bbd3-252cf094d205", "DryRunStatus":"failed", "UpdateDate":"2023-01-12T01:14:33.847Z", "ValidationFailures":[ { "Code":"Cluster.Index.WriteBlock", "Message":"Cluster has index write blocks." } ] } }

상태가 pending 계속인 경우 후속 DescribeDryRunProgress호출에서 UpdateDomainConfig 응답의 드라이 런 ID를 사용하여 검증 상태를 확인할 수 있습니다.

GET https://es.us-east-1.amazonaws.com/2021-01-01/opensearch/domain/my-domain/dryRun?dryRunId=my-dry-run-id { "DryRunConfig": null, "DryRunProgressStatus": { "CreationDate": "2023-01-12T01:14:42.998Z", "DryRunId": "db00ca39-48b2-4774-bbd3-252cf094d205", "DryRunStatus": "succeeded", "UpdateDate": "2023-01-12T01:14:49.334Z", "ValidationFailures": null }, "DryRunResults": { "DeploymentType": "Blue/Green", "Message": "This change will require a blue/green deployment." } }

검증 확인 없이 모의 실습 분석을 실행하려면 구성 API를 사용할 때 DryRunModeBasic으로 설정합니다.

Python

다음 Python 코드는 UpdateDomainConfigAPI를 사용하여 테스트 실행 검증 검사를 수행하고, 검사가 성공하면 테스트 실행 없이 동일한 API를 호출하여 업데이트를 시작합니다. 검사에 실패하면 스크립트는 오류를 출력하고 중지합니다.

import time import boto3 client = boto3.client('opensearch') response = client.UpdateDomainConfig( ClusterConfig={ 'WarmCount': 3, 'WarmEnabled': True, 'WarmCount': 123, }, DomainName='test-domain', DryRun=True, DryRunMode='Verbose' ) dry_run_id = response.DryRunProgressStatus.DryRunId retry_count = 0 while True: if retry_count == 5: print('An error occured') break dry_run_progress_response = client.DescribeDryRunProgress('test-domain', dry_run_id) dry_run_status = dry_run_progress_response.DryRunProgressStatus.DryRunStatus if dry_run_status == 'succeeded': client.UpdateDomainConfig( ClusterConfig={ 'WarmCount': 3, 'WarmEnabled': True, 'WarmCount': 123, }) break elif dry_run_status == 'failed': validation_failures_list = dry_run_progress_response.DryRunProgressStatus.ValidationFailures for item in validation_failures_list: print(f"Code: {item['Code']}, Message: {item['Message']}") break retry_count += 1 time.sleep(30)

구성 변경 시작 및 추적

참고

한 번에 하나의 구성 변경을 요청할 수 있습니다. 단일 요청으로 여러 구성 변경을 그룹화할 수도 있습니다. 추가 구성 변경을 Active 요청하기 전에 도메인 상태가 될 때까지 기다리십시오.

Amazon OpenSearch Service 콘솔에서 도메인 처리 상태Config Change Status 필드를 보고 도메인 및 구성 변경을 추적할 수 있습니다. 또한 API 응답의 및 ConfigChangeStatus 파라미터를 통해 도메인 DomainProcessingStatus 및 구성 변경을 추적할 수 있습니다. 자세한 내용은 OpenSearch 서비스 API 참조의 DomainStatus데이터 유형을 참조하십시오.

도메인 처리 상태 가시성: 콘솔의 도메인 처리 상태 필드를 보면 도메인의 구성 상태를 쉽게 확인할 수 있습니다. 마찬가지로 DomainProcessingStatus API 매개변수를 사용하여 상태를 식별할 수 있습니다. 다음 값은 도메인의 처리 상태입니다.

  • Active: 구성 변경이 진행 중이지 않습니다. 새 구성 변경 요청을 제출할 수 있습니다.

  • Creating: 도메인을 만드는 중입니다.

  • Modifying: 새 데이터 노드 추가, EBS, gp3, IOPS 프로비저닝 또는 KMS 키 설정과 같은 구성 변경이 진행 중입니다.

    참고

    구성 변경을 완료하기 위해 도메인의 샤드 Modifying 이동이 필요한 상황과 같은 상태가 표시될 수 있습니다. 이전 버전과의 호환성을 위해 Processing 파라미터의 동작은 API 응답에서 변경되지 않고 유지되며, 샤드 이동 완료를 기다릴 필요 없이 핵심 구성 변경이 완료되는 즉시 false로 설정됩니다.

  • Upgrading Engine Version: 엔진 버전 업그레이드가 진행 중입니다.

  • Updating Service Software: 서비스 소프트웨어 업데이트가 진행 중입니다.

  • Deleting: 도메인이 삭제되고 있습니다.

  • Isolated: 도메인이 일시 중지되었습니다.

구성 상태 가시성: 구성 변경은 운영자 (예: 새 데이터 노드 추가, 인스턴스 유형 변경) 또는 서비스 (예: Auto-Tune 및 사용량이 적은 시간 업데이트) 에 의해 시작될 수 있습니다. Amazon OpenSearch Service 콘솔의 구성 변경 상태 필드와 ConfigChangeStatus API 응답에서 최신 구성 변경 세부 정보의 상태를 확인할 수 있습니다. 다음 값은 도메인의 구성 상태를 나타냅니다.

  • Pending: 구성 변경 요청이 제출되었습니다.

  • Initializing: 서비스가 구성 변경 요청을 초기화하고 있습니다.

  • Validating: 서비스가 요청된 변경 사항과 필요한 리소스를 검증하고 있습니다.

  • Awaiting user inputs: 운영자가 인스턴스 유형 변경과 같은 일부 구성 변경이 계속 진행될 것으로 예상할 때 적용됩니다. 구성 변경을 편집할 수 있습니다.

  • Applying changes: 서비스가 요청된 구성 변경을 적용하고 있습니다.

  • Cancelled: 구성 변경이 취소되었습니다. 검증 실패 상태가 표시되면 콘솔에서 취소를 클릭하거나 CancelDomainConfigChange API 작업을 호출할 수 있습니다. 이렇게 하면 적용된 모든 변경 사항이 롤백됩니다.

  • Completed: 요청된 구성 변경이 성공적으로 완료되었습니다.

  • Validation Failed: 요청된 변경 사항 검증에 실패했습니다. 구성 변경 사항이 적용되지 않습니다.

    참고

    도메인에 빨간색 인덱스가 있거나, 선택한 인스턴스 유형을 사용할 수 없거나, 디스크 공간이 부족하기 때문에 검증 실패가 발생할 수 있습니다. 유효성 검사 오류 목록은 을 참조하십시오. Troubleshooting validation errors(검증 오류 문제 해결 중) 유효성 검사 실패 이벤트 중에 구성 변경을 취소, 재시도 또는 편집할 수 있습니다.

API 요약:DescribeDomain,DescribeDomainChangeProgress, DescribeDomainConfig API 작업을 사용하여 자세한 구성 업데이트 상태를 확인할 수 있습니다. 또한 유효성 검사에 실패할 경우 업데이트를 CancelDomainConfigChange 취소하는 데 사용할 수 있습니다. 자세한 내용은 OpenSearch 서비스 API 설명서를 참조하십시오.

구성 변경이 완료되면 도메인 상태가 다시 로 변경됩니다Active.

클러스터 상태 및 Amazon CloudWatch 지표를 검토하여 도메인 업데이트가 발생하는 동안 클러스터의 노드 수가 일시적으로 증가하여 대개 두 배로 증가하는 것을 확인할 수 있습니다. 다음 그림에 구성 변경 중 노드 수가 11개에서 22개로 두 배가 되었다가 업데이트가 완료되면 11개로 돌아가는 과정이 나와 있습니다.

도메인 구성 변경 중 노드 수가 11개에서 22개로 두 배로 늘어납니다.

이렇게 일시적인 증가로 인해 갑자기 관리해야 할 노드가 늘어난 클러스터의 전용 프라이머리 노드는 부담을 받을 수 있습니다. 또한 OpenSearch 서비스가 기존 클러스터의 데이터를 새 클러스터로 복사하므로 검색 및 색인 생성 지연 시간이 늘어날 수 있습니다. 그러므로 블루/그린 배포에 따르는 오버헤드를 처리할 수 있을 만큼 클러스터에 충분한 용량을 유지해야 합니다.

중요

구성 변경 및 서비스 유지 관리 중 추가로 발생하는 비용은 없습니다. 클러스터에 대해 요청한 노드 개수에 대해서만 비용이 청구됩니다. 구체적인 내용은 구성 변경 비용 섹션을 참조하세요.

전용 마스터 노드의 과부하를 방지하기 위해 Amazon CloudWatch 지표로 사용량을 모니터링할 수 있습니다. 권장 최댓값은아마존 OpenSearch 서비스를 위한 권장 CloudWatch 알람 섹션을 참조하세요.

구성 변경 단계

구성 변경을 시작한 후 OpenSearch 서비스는 일련의 단계를 거쳐 도메인을 업데이트합니다. 콘솔의 구성 변경 상태에서 구성 변경 진행 상황을 확인할 수 있습니다. 업데이트가 수행되는 정확한 단계는 변경 유형에 따라 다릅니다. DescribeDomainChangeProgressAPI 작업을 사용하여 구성 변경을 모니터링할 수도 있습니다.

다음은 구성 변경 중에 업데이트가 진행될 수 있는 단계입니다.

단계 이름 설명

검증

도메인을 업데이트할 수 있는지 검증하고 필요한 경우 검증 문제를 표시합니다.

Creating a new environment(새 환경 생성 중)

블루/그린 배포를 시작하기 위해 필요한 필수 구성 요소를 완료하고 필요한 리소스를 생성합니다.

Provisioning new nodes(새 노드 프로비저닝 중)

새로운 환경에서 새 인스턴스 집합 생성

Traffic routing on new nodes(새 노드의 트래픽 라우팅)

새로 생성된 데이터 노드로 트래픽을 리디렉션합니다.

Traffic routing on old nodes(이전 노드의 트래픽 라우팅)

이전 데이터 노드에서 트래픽을 사용 중지합니다.

Preparing nodes for removal(제거할 노드 준비 중)

노드 제거를 준비합니다. 이 단계는 도메인을 다운스케일링하는 경우에만 발생합니다(예: 8개 노드에서 6개 노드로).

Copying shards to new nodes(샤드를 새 노드에 복사 중)

이전 노드에서 새 노드로 샤드를 이동합니다.

Terminating nodes(노드 종료 중)

샤드가 제거된 후 이전 노드를 종료하고 삭제합니다.

Deleting older resources(이전 리소스 삭제 중)

이전 환경과 연결된 리소스를 삭제합니다(예: 로드 밸런서).

Dynamic update(동적 업데이트)

업데이트에 블루/그린 배포가 필요하지 않고 동적으로 적용할 수 있는 경우에 표시됩니다.

전용 마스터 관련 변경 사항 적용

전용 마스터 인스턴스 유형 또는 개수가 변경될 때 표시됩니다.

볼륨 관련 변경 사항 적용

볼륨 크기, 유형, IOPS 및 처리량이 변경될 때 표시됩니다.

블루/그린 배포가 성능에 미치는 영향

블루/그린 배포 중에는 Amazon OpenSearch Service 클러스터를 수신되는 검색 및 색인 요청에 사용할 수 있습니다. 하지만 다음과 같은 성능 문제가 발생할 수 있습니다.

  • 클러스터에서 관리해야 할 노드가 늘어남에 따라 리더 노드의 사용량이 일시적으로 증가합니다.

  • OpenSearch 서비스가 기존 노드의 데이터를 새 노드로 복사하므로 검색 및 인덱싱 지연 시간이 늘어납니다.

  • 블루/그린 배포 중에 클러스터 부하가 증가함에 따라 들어오는 요청에 대한 거부가 증가했습니다.

  • 지연 문제 및 요청 거부를 방지하려면 클러스터가 정상이고 네트워크 트래픽이 적을 때 블루/그린 배포를 실행해야 합니다.

구성 변경 비용

도메인의 구성을 변경하면 OpenSearch Service는 에 설명된 대로 새 클러스터를 생성합니다. Amazon OpenSearch 서비스에서 구성 변경 새 클러스터로 이전 클러스터를 마이그레이션하는 중 다음 비용이 발생합니다.

  • 인스턴스 유형을 변경하면 처음에는 이전 및 새 클러스터 둘 다에 대한 비용이 청구됩니다. 그 이후에는 새 클러스터에 대한 비용만 청구됩니다. EBS 볼륨은 클러스터의 일부이므로 두 번 청구되지 않으며 인스턴스 결제에 따라 요금이 청구됩니다.

    예: m3.xlarge 인스턴스 세 개에서 m4.large 인스턴스 네 개로 구성을 변경합니다. 첫 1시간은 두 클러스터(3 * m3.xlarge + 4 * m4.large)에 대한 비용이 청구됩니다. 첫 1시간 이후부터는 새 클러스터(4 * m4.large)에 대한 비용만 청구됩니다.

  • 인스턴스 유형을 변경하지 않으면 첫 1시간은 가장 큰 클러스터에 대한 비용만 청구됩니다. 첫 1시간 이후부터는 새 클러스터에 대한 비용만 청구됩니다.

    예: m3.xlarge 인스턴스 여섯 개에서 m3.xlarge 인스턴스 세 개로 구성을 변경합니다. 첫 1시간은 가장 큰 클러스터(6 * m3.xlarge)에 대한 비용이 청구됩니다. 첫 1시간 이후부터는 새 클러스터(3 * m3.xlarge)에 대한 비용만 청구됩니다.

Troubleshooting validation errors(검증 오류 문제 해결 중)

구성 변경을 시작하거나 OpenSearch 또는 Elasticsearch 버전 업그레이드를 수행하면 OpenSearch 서비스는 먼저 일련의 검증 검사를 수행하여 도메인이 업데이트에 적합한지 확인합니다. 이러한 검사 중 하나라도 실패하면 도메인을 업데이트하기 전에 수정해야 하는 특정 문제가 포함된 알림을 콘솔에서 받게 됩니다. 다음 표에는 OpenSearch 서비스에서 발생할 수 있는 도메인 문제와 이를 해결하기 위한 단계가 나열되어 있습니다.

문제 오류 코드 문제 해결 단계
보안 그룹을 찾을 수 없음 SecurityGroupNotFound

OpenSearch 서비스 도메인과 관련된 보안 그룹이 존재하지 않습니다. 이 문제를 해결하려면 지정된 이름으로 보안 그룹을 생성합니다.

서브넷을 찾을 수 없음 SubnetNotFound

OpenSearch 서비스 도메인과 연결된 서브넷이 존재하지 않습니다. 이 문제를 해결하려면 VPC에서 서브넷을 생성합니다.

서비스 연결 역할이 구성되지 않음 SLRNotConfigured 서비스의 서비스 연결 역할은 구성되어 있지 OpenSearch 않습니다. 서비스 연결 역할은 Service에서 미리 정의하며 OpenSearch 서비스가 사용자를 대신하여 다른 AWS 서비스를 호출하는 데 필요한 모든 권한을 포함합니다. 역할이 없으면 수동으로 생성해야 할 수 있습니다.
IP 주소가 충분하지 않음 InsufficientFreeIPsForSubnets

하나 이상의 VPC 서브넷에 도메인을 업데이트하기에 충분한 IP 주소가 없습니다. 필요한 IP 주소 수를 계산하려면 VPC 서브넷에서 IP 주소 예약 섹션을 참조하세요.

Cognito 사용자 풀이 존재하지 않음 CognitoUserPoolNotFound

OpenSearch 서비스에서 Amazon Cognito 사용자 풀을 찾을 수 없습니다. 자격 증명 풀을 생성했고 ID가 올바른지 확인합니다. ID를 찾으려면 Amazon Cognito 콘솔을 이용하거나 다음 AWS CLI 명령을 이용합니다.

aws cognito-idp list-user-pools --max-results 60 --region us-east-1
Cognito ID 풀이 존재하지 않음 CognitoIdentityPoolNotFound

OpenSearch 서비스에서 Cognito 자격 증명 풀을 찾을 수 없습니다. 자격 증명 풀을 생성했고 ID가 올바른지 확인합니다. ID를 찾으려면 Amazon Cognito 콘솔을 이용하거나 다음 AWS CLI 명령을 이용합니다.

aws cognito-identity list-identity-pools --max-results 60 --region us-east-1
사용자 풀에 대한 Cognito 도메인을 찾을 수 없음 CognitoDomainNotFound

사용자 풀에 도메인 이름이 없습니다. Amazon Cognito 콘솔 또는 다음 AWS CLI 명령을 사용하여 구성할 수 있습니다.

aws cognito-idp create-user-pool-domain --domain my-domain --user-pool-id id
Cognito 역할이 구성되지 않음 CognitoRoleNotConfigured

Amazon Cognito 사용자 및 자격 증명 풀을 구성하고 이를 인증에 사용할 수 있는 권한을 OpenSearch 서비스에 부여하는 IAM 역할은 구성되지 않았습니다. 적절한 권한 세트와 신뢰 관계로 역할을 구성합니다. 기본 CognitoAccessForAmazonOpenSearch역할을 생성하는 콘솔을 사용하거나 또는 SDK를 사용하여 역할을 수동으로 구성할 수 있습니다. AWS CLI AWS

사용자 풀을 설명할 수 없음 UserPoolNotDescribable 지정된 Amazon Cognito 역할에 도메인과 연결된 사용자 풀을 설명할 권한이 없습니다. 역할 권한 정책이 cognito-identity:DescribeUserPool 작업을 허용하는지 확인합니다. 전체 권한 정책은 CognitoAccessForAmazonOpenSearch 역할 정보 섹션을 참조하세요.
ID 풀을 설명할 수 없음 IdentityPoolNotDescribable 지정된 Amazon Cognito 역할에 도메인과 연결된 ID 풀을 설명할 권한이 없습니다. 역할 권한 정책이 cognito-identity:DescribeIdentityPool 작업을 허용하는지 확인합니다. 전체 권한 정책은 CognitoAccessForAmazonOpenSearch 역할 정보 섹션을 참조하세요.
사용자 및 ID 풀을 설명할 수 없음 CognitoPoolsNotDescribable 지정된 Amazon Cognito 역할에 도메인과 연결된 사용자 및 ID 풀을 설명할 권한이 없습니다. 역할 권한 정책이 cognito-identity:DescribeIdentityPoolcognito-identity:DescribeUserPool 작업을 허용하는지 확인합니다. 전체 권한 정책은 CognitoAccessForAmazonOpenSearch 역할 정보 섹션을 참조하세요.
KMS 키가 활성화되지 않음 KMSKeyNotEnabled

도메인을 암호화하는 데 사용되는 AWS Key Management Service (AWS KMS) 키가 비활성화되었습니다. 즉시 키를 다시 활성화합니다.

사용자 지정 인증서가 ISSUED(발급됨) 상태가 아님 InvalidCertificate

도메인이 사용자 지정 엔드포인트를 사용하는 경우 ACM AWS Certificate Manager () 에서 SSL 인증서를 생성하거나 자체 인증서를 가져와서 보안을 유지합니다. 인증서가 Issued(발급됨) 상태여야 합니다. 이 오류가 발생하면 ACM 콘솔에서 인증서 상태를 확인합니다. 상태가 Expired(만료됨), Failed(실패), Inactive(비활성) 또는 Pending validation(검증 대기 중)인 경우 ACM 문제 해결 설명서를 참조하여 문제를 해결하세요.

선택한 인스턴스 유형을 시작하기에 용량이 충분하지 않음 InsufficientInstanceCapacity

요청한 인스턴스 유형 용량을 사용할 수 없습니다. 예를 들어, 5개 i3.16xlarge.search 노드를 요청했지만 OpenSearch 서비스에 사용 가능한 i3.16xlarge.search 호스트가 충분하지 않아 요청을 이행할 수 없는 경우가 있습니다. OpenSearch 서비스에서 지원되는 인스턴스 유형을 확인하고 다른 인스턴스 유형을 선택하세요.

클러스터의 빨간색 인덱스 RedCluster

클러스터에 있는 하나 이상의 인덱스가 빨간색 상태이므로 전체적으로 빨간색 클러스터 상태가 됩니다. 이 문제를 해결하고 수정하려면 빨간색 클러스터 상태 섹션을 참조하세요.

메모리 회로 차단기, 요청 너무 많음 TooManyRequests

도메인에 대한 검색 및 쓰기 요청이 너무 많아 OpenSearch 서비스가 구성을 업데이트할 수 없습니다. 요청 수를 줄이거나, 최대 64GiB RAM까지 인스턴스를 수직으로 확장하거나, 인스턴스를 추가하여 수평으로 확장할 수 있습니다.

새 구성에서 데이터를 보관할 수 없음(디스크 공간 부족) InsufficientStorageCapacity

구성된 스토리지 크기가 도메인의 모든 데이터를 보관할 수 없습니다. 이 문제를 해결하려면 더 큰 볼륨을 선택하거나, 사용하지 않는 인덱스를 삭제하거나, 클러스터의 노드 수를 늘려 즉시 디스크 공간을 확보합니다.

특정 노드에 고정된 샤드 ShardMovementBlocked

도메인에 있는 하나 이상의 인덱스가 특정 노드에 연결되어 있으며 재할당할 수 없습니다. 특정 인덱스의 샤드를 호스팅할 수 있는 노드를 지정할 수 있는 샤드 할당 필터링을 구성했기 때문일 수 있습니다.

이 문제를 해결하려면 영향을 받는 모든 인덱스에서 샤드 할당 필터를 제거합니다.

PUT my-index/_settings { "settings": { "index.routing.allocation.require._name": null } }
새 구성에서 모든 샤드를 보관할 수 없음(샤드 수) TooManyShards 도메인의 샤드 수가 너무 많아 OpenSearch 서비스가 샤드를 새 구성으로 옮길 수 없습니다. 이 문제를 해결하려면 현재 클러스터 노드와 동일한 구성 유형의 노드를 추가하여 도메인을 수평으로 확장합니다. 최대 EBS 볼륨 크기는 노드의 인스턴스 유형에 따라 다릅니다.

앞으로 이 문제를 방지하려면 샤드 수 선택 섹션을 참조하고 사용 사례에 적합한 샤딩 전략을 정의합니다.

도메인과 연결된 서브넷이 IPv4 주소를 지원하지 않습니다.

ResultCodeIPv4BlockNotExists

이 문제를 해결하려면 도메인의 구성된 IP 주소 유형에 맞게 VPC에서 서브넷을 생성하거나 기존 서브넷을 업데이트하십시오. 도메인에서 IPv4 전용 주소 유형을 사용하는 경우 IPv4 전용 서브넷을 사용하십시오. 도메인에서 듀얼 스택 모드를 사용하는 경우 듀얼 스택 서브넷을 사용하십시오.

도메인과 연결된 서브넷이 IPv6 주소를 지원하지 않습니다.

ResultCodeIPv6BlockNotExists

이 문제를 해결하려면 도메인의 구성된 IP 주소 유형에 맞게 VPC에서 서브넷을 생성하거나 기존 서브넷을 업데이트하십시오. 도메인에서 IPv4 전용 주소 유형을 사용하는 경우 IPv4 전용 서브넷을 사용하십시오. 도메인에서 듀얼 스택 모드를 사용하는 경우 듀얼 스택 서브넷을 사용하십시오.