OpenSearch Service 클러스터의 블루/그린 배포란 무엇입니까?
Amazon OpenSearch Service 클러스터의 블루/그린 배포가 무엇인지 알고 싶습니다.
간략한 설명
OpenSearch Service 클러스터 구성을 변경하면 OpenSearch Service가 블루/그린 배포를 시작할 수 있습니다. 블루/그린 배포는 가동 중지 시간을 줄이고 버전 또는 구성 변경을 원활하게 전환합니다. 블루/그린 배포 중에는 OpenSearch Service가 새 환경을 생성함에 따라 클러스터 상태가 수정 중으로 변경됩니다.
새 환경 생성 프로세스 중에는 클러스터의 노드 수가 두 배로 늘어납니다. 총 노드 수는 이전 환경과 새 환경의 노드 수와 같습니다. OpenSearch Service가 새 노드를 프로비저닝한 후 클러스터 상태가 활성으로 돌아가고 OpenSearch Service가 데이터를 새 노드로 마이그레이션합니다. 데이터 마이그레이션이 완료되면 OpenSearch Service가 이전 노드를 종료합니다.
참고: OpenSearch Service 할당량은 OpenSearch Service가 블루/그린 배포 중에 생성하는 노드에 영향을 주지 않습니다. 예를 들어 클러스터에 70개의 노드가 있다면 할당량이 80개 노드인 경우에도 블루/그린 배포 시 140개 노드를 포함할 수 있습니다.
OpenSearch Service는 블루/그린 배포를 시작하기 전에 일련의 유효성 검사를 수행하여 도메인이 업데이트에 적합한지 확인합니다. 검사에 실패할 경우 구성 변경을 다시 시도하기 전에 문제를 해결해야 합니다.
해결 방법
참고: 도메인의 사용량이 적은 시간대에 블루/그린 배포를 예약하는 것이 좋습니다.
블루/그린 배포의 원인 파악
구성을 변경하기 전에 변경으로 인해 블루/그린 배포가 발생할 수 있는지 확인하십시오. 계획된 변경으로 인해 블루/그린 배포가 발생하는지 테스트하려면 AWS Management Console, API 또는 Python 스크립트를 사용하십시오.
변경으로 인해 블루/그린 배포가 발생하는 경우 OpenSearch Service는 사용 가능한 최신 소프트웨어로 도메인을 자동으로 업데이트합니다.
중요: 기존 블루/그린 배포가 진행 중인 경우에는 새 구성 변경을 적용할 수 없습니다. 여러 구성을 업데이트하려면 단일 요청에 모든 변경 사항을 포함하십시오. 변경 사항을 동시에 제출하면 ‘A change is already in progress’라는 오류 메시지가 표시됩니다.
블루/그린 배포가 성능에 미치는 영향 이해
블루/그린 배포 중에는 들어오는 검색 및 인덱싱 요청에 OpenSearch Service 클러스터를 사용할 수 있습니다.
그러나 다음과 같은 성능 문제가 발생할 수 있습니다.
- 클러스터에 관리할 노드가 많아짐에 따라 리더 노드의 사용량이 일시적으로 증가합니다.
- OpenSearch Service가 이전 노드의 데이터를 새 노드로 복사하므로 검색 및 인덱싱 지연 시간이 늘어납니다.
- 블루/그린 배포 중에 클러스터 로드가 증가함에 따라 들어오는 요청에 대한 거부 수가 증가합니다.
지연 시간 문제 및 요청 거부를 방지하려면 클러스터가 정상이고 네트워크 트래픽이 적을 때 블루/그린 배포를 실행하는 것이 좋습니다. 블루/그린 배포 중에 데이터 손실을 방지하려면 OpenSearch Service의 운영 모범 사례를 따르십시오.
블루/그린 배포 모니터링
AWS CloudTrail 이벤트 기록을 확인하여 블루/그린 배포의 일부로 OpenSearch Service가 수행하는 API 호출을 모니터링하십시오. OpenSearch Service 도메인에서 세분화된 액세스 제어를 사용하는 경우 감사 로그를 활성화하여 OpenSearch Service 클러스터에서 사용자 활동을 추적할 수 있습니다. OpenSearch Service는 감사 로그를 Amazon CloudWatch Logs에 게시합니다.
도메인의 성능 및 상태에 대한 정보는 OpenSearch Service 콘솔에서 알림을 확인하십시오. OpenSearch Service는 서비스 소프트웨어 업데이트, 자동 튜닝 개선 사항, 클러스터 상태 이벤트 및 도메인 오류에 대해 알려줍니다.
블루/그린 배포에 걸리는 시간은 정해져 있지 않습니다. 기간은 클러스터 크기, 워크로드, 샤드 크기, 샤드 수 등 여러 요소에 따라 달라집니다. 구성 변경 단계의 진행 상황을 확인하려면 OpenSearch Service 콘솔에서 도메인 상태를 확인하거나 DescribeDomainChangeProgress API를 사용하십시오.
cat recovery API를 사용하여 샤드 재배치 상태를 모니터링할 수 있습니다. 자세한 내용은 OpenSearch 웹 사이트의 CAT 복구 API를 참조하십시오.
OpenSearch Service에서 여전히 재할당해야 하는 샤드를 확인하려면 다음 명령을 실행합니다.
curl -X GET "https://end_point/_cat/recovery?v=true&pretty" | awk '/peer/ {print $1" "$2" "$3" "$4" "$18}' | grep -v 100\.0\%
참고: end_point를 도메인 엔드포인트로 바꾸십시오.
샤드 재배치를 바이트 백분율로 나열하려면 다음 명령을 실행합니다.
curl -X GET "https://end_point/_cat/recovery?v=true&pretty" | awk '/peer/ {print $1" "$2" "$3" "$4" "$18}' | tr -d "%" | sort -k 5 -n
참고: end_point를 도메인 엔드포인트로 바꾸십시오.
샤드 재배치가 거의 진행되지 않은 경우 클러스터가 중단될 수 있습니다.
중단된 블루/그린 배포 문제 해결
블루/그린 배포 프로세스는 다음과 같은 이유로 중단될 수 있습니다.
- 구성이 변경되기 전 클러스터 상태가 비정상입니다.
- Java 가상 머신(JVM) 메모리 압력이 지속적으로 높습니다.
- CPU 사용량이 지속적으로 높습니다.
- 클러스터에 적합한 샤드 수 또는 크기를 선택하지 않았습니다.
- 구성 설정이 유효하지 않거나 다른 구성이 이미 진행 중일 때 구성을 변경했습니다.
- 재배치 프로세스 또는 요청된 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스 유형의 디스크 공간이나 용량이 부족합니다.
- 가상 프라이빗 클라우드(VPC) 내 클러스터에 대해 요청된 서브넷의 사용 가능한 IP 주소가 충분하지 않습니다.
- EC2 인스턴스 유형에 비해 너무 큰 Amazon Elastic Block Store(Amazon EBS) 볼륨을 사용했습니다.
- 인덱스에 쓰기 블록이 있습니다. 이 문제를 해결하려면 인덱스 설정에서 index.routing.allocation.require._name, NODE_NAME 및 index.blocks.write: true를 제거하십시오.
문제를 추가로 해결하려면 OpenSearch Service 도메인이 ‘수정 중’ 상태에서 멈춘 이유는 무엇입니까?를 참조하십시오.
수정 중 상태로 멈춘 클러스터 또는 이전 리소스 삭제 중 상태로 24시간 이상 멈춘 도메인의 경우 AWS Support 사례를 만드십시오.
블루/그린 배포 취소
구성 변경을 취소하려면 블루/그린 배포가 완료될 때까지 기다리십시오. 그런 다음, 구성을 이전 설정으로 다시 변경합니다. 진행 중인 블루/그린 배포는 취소하거나 일시 중지할 수 없습니다.
관련 정보
- 언어
- 한국어

관련 콘텐츠
질문됨 3년 전