Opensearch 데이터/설정/인덱스 초기화 이슈

2026. 2. 26. 16:55·기타

벌써 세번째 초기화 이슈가 발생했다… 처음 겪었을때는 이게 해킹인가 싶어서 보안설정을 강화했고 두번째는 aws 계정팀에 문의해서 cognito를 통한 인증을 진행하라는 답변을 받았고 이제 세번째에서야(바보) 문제원인을 확신하게 되었다.

결론은 복제본없이 노드 하나만 사용하는 상황에서 소프트웨어 업데이트를 진행하면 기존 데이터를 보존하지 못한다. 아래 근거를 대기전에 디깅한 과정을 기록한다.

처음에는 대시보드 로그인부터 안되니깐 무슨 문제인지 몰라 aws support 분께 도움을 요청했고, 브라우저 har 로그 수집해서 업로드 하라는 답변이 왔습니다.

- 개발자도구 - 왼쪽상단에 clear network log 로 로그 싹 지운다움 preserve log 체크
- 새로운 창에서 열리므로 그대로 트래킹 해야함
- 오른쪽 상단 설정-preference-global-auto-open DevTool for popups 체크

처음에 ha 파일을 네트워크 로그를 기록하지 못한채 보내서(보낼때도 어디에 보내는지 몰라서 text 파일 전송...) 횡설수설하다가 연락이 끊겼다.
그러다가 callback url을 살펴보니 대시보드 주소가 아래처럼 바뀐걸로 깨닫고 콜백 URL을 새로운걸로 변경하니깐 대시보드 접근에 성공했다….

  elasticsearch:
#    uris: "search-gh-opensearch-e7rsx6oyqucfsztn7uwlrbz6sm.ap-northeast-2.es.amazonaws.com"
    uris: "search-gh-opensearch-e7rsx6oyqucfsztn7uwlrbz6sm.aos.ap-northeast-2.on.aws"

인 줄 알았으나, 권한이 없다는 에러와 함께 이내 팅겨져 나왔습니다. 이게 권한문제니깐

마스터 사용자를 내부 사용자 데이터베이스로 변경하면 접속은 가능할거라고 생각했습니다.

그리고 Security > Roles > all_access > Mapped users

backendRoles type에 cognito가 이용하고 있는 사용자 액세스, 인증된 역할 arn을 BackendRoles 에 추가해줬습니다.

이내 다시 cognito 인증 로그인이 가능해진 사실을 확인했습니다.(cognito 인증을 껐다켰다 할때마다 20~30분씩 클러스터 초기화 작업이 걸려 고생했습니다..)

원래 cognito 인증을 opensearch에서 사용하도록 설정하는 순간 필요한 역할등을 자동으로 설정,매핑해주는걸로 알고있고 그렇게 사용해왔습니다. 그렇다면 이러한 설정들이 아예 초기화가 되었다는점, 대시보드 도메인 주소가 ap-northeast-2.es.amazonaws.com 에서 aos.ap-northeast-2.on.aws 로 크게 바뀐점으로 미루어보아 어떤 업데이트가 발생했고 이게 초기화가 된 원인이 아닐까 의심이 들기 시작했습니다.

  • 참고로 os-admin은 어플리케이션에서 opensearch 접근을 위한 iam arn이라 User 타입으로 변경해야 동작합니다.

그래서 문서가 삭제된 순간이 언젠지 찾아봤고

처음 문의했던 1/23, 이번에 문제가 발생한 2/24일 모두 소프트 업데이트가 있었다는 알림이 존재했습니다.

이게 바로 원인을 못찾았던 이유가 당황해서 업데이트 버튼을 눌러 진행한 사실을 전/후 인지 판단을 못했고 처음 문제가 발생했을때는 업데이트를 누르지도 않았는데 발생했기 때문입니다.

https://docs.aws.amazon.com/ko_kr/opensearch-service/latest/developerguide/service-software.html

  • 물론 이후 문서를 찾아보니 필수업데이트는 여러 알림후에 강제로 진행된다는 사실…

그리고 레딧에서도…

https://www.reddit.com/r/aws/comments/1b0a9g3/update_opensearch_and_it_reset_the/?tl=ko

- 노드 하나만 설정해놓고 업데이트 해봤어? 나도 해봤는데 똑같은 문제 생기더라.
- 노드 하나만 돌려야 한다면 (AWS는 하지 말라고 하지만) 업데이트 하기 전에 두 번째 노드를 추가해야 해. 그래야 뭐 터질 확률이 줄어들거든. 업데이트 다 끝나면 두 번째 노드는 없애도 돼

s3에 스냅샷을 찍어두고 복구하는것도 하나의 방법일 것 같습니다. 저는 관리비용을 고려해서 서비스에 적용하는걸 그만두려고 합니다.

opensearch 를 적용해보려고 나름 시간을 많이 투자해서 아쉽긴합니다. 그러나, 이런 인프라 기술을 실서비스에 도입하려면 많은고민, 넉넉한 자본(하다 못해 넉넉한 좋은 사양의 ec2를 확보해서 직접 설치하던가)이 뒷받침되어야 한다는 사실을 깨달아갑니다.

'기타' 카테고리의 다른 글

AWS Cognito 로 OpenSearch 대시보드 접근하기  (0) 2026.02.12
ElasticSearch to OpenSearch(라이센스 체크우회)  (1) 2026.01.16
'기타' 카테고리의 다른 글
  • AWS Cognito 로 OpenSearch 대시보드 접근하기
  • ElasticSearch to OpenSearch(라이센스 체크우회)
gucoding
gucoding
gucoding 님의 블로그 입니다.
  • gucoding
    gucoding 님의 블로그
    gucoding
  • 전체
    오늘
    어제
    • 분류 전체보기 (14)
      • spring (1)
      • 회고 (1)
      • DB (3)
      • 개념잡기 (4)
      • Java (2)
      • 기타 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    opensearch
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
gucoding
Opensearch 데이터/설정/인덱스 초기화 이슈
상단으로

티스토리툴바