ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [14장] 운영 클러스터 구축
    책/엘라스틱_스택_개발부터_운영까지 2022. 5. 7. 20:12
    • 복수의 노드로 클러스터를 구성하고 충분한 하드웨어를 할당할 필요가 있음

    운영 클러스터 고려사항

    • 충분한 하드웨어 확보
    • 클러스터링과 분산, 병령 처리 개념을 이해해 노드를 구성할 필요
    • 최소 3개의 마스터 노드 구성 => 스플릿 브레인 없이 서비스가 지속되게 하기 위한 최소한의 구성
    • 데이터 노드를 최소 두 대 이상 확보
    • 메모리: 가장 이상적인 메모리 64GB
    • CPU: 단일 코의 성능 높은 CPU 보단 더 많은 코어 수를 권장
    • 디스크: SSD 권장(하드 디스크를 사용할 경우 RPM이 빠른 제품 선택) => 네트워크 저장소 피하고, 최대한 빠른 디스크 성능 선택
    • 하드웨어 통일: 성능을 통일하는 것이 중요
    • 스냅샷 처리: 모든 노드에서 접근 가능하도록 네트워크 공유 드라이브 구성이 필요
    • 노드 elasticsearch.yml 파일에서 클러스터 구성을 위한 설정을 해준다
    • 힙 메모리 설정시 주의사항
      • Xms, Xmx 수치를 동일하게 할당한다.
        • 동일하지 않으면 메모리 할당량을 확장하는 과정에서 노드가 일시적으로 멈출 수 있음. 기본 1G
      • 힙 크기는 최대 시스템 물리 메모리의 절반으로 한다.
      • 힙 크기는 최대 30~31GB 수준을 넘지 않는다.
        • 자바에서는 힙 메모리를 효율적으로 사용할 수 있는 기술인 Compressed Ordinary Object Pointers 기술이 적용되어 있음. 이것이 힙 메모리가 최대 32GB를 넘기면 비활성화 됨.보안기능 설정
    • 보안 설정 적용 시 전송 계층 보안을 적용하는 과정에서 반드시 한 번 전체 클러스터 재시작이 필요.(따라서 초기에 구축하는 것이 좋음)
    • 인증서 생성
      • CA 인증서 생성. CA 인증서는 노드별로 작업하지 않고 한 번만 생성함
      • CA 인증서로부터 노드별 인증서를 발급하여야 함
    • 노드간 통신에 암호화를 설정
      • TLS 설정. 생성한 인증서를 사용해 클러스터 내 노드 간에 전송되는 데이터를 인증서 기반으로 암호화
    • http 클라이언트 통신 암호화
      • https 설정.
    • 비밀번호를 분실했을 때?
      • data 폴더의 내용 삭제 또는 파일 렐름(realm) 활용
    • 키바나와 엘라스틱서치 간 통신 암호화
    • 키바나와 브라우저 간 통신 암호화

    정리

    • 운영 모드에서 최소 3대의 마스터 노드를 포함하여 적절한 노드 확보
    • 스냅샷 저장소 필수적으로 구성
    • 주기적인 스냅샷을 받아 놓을 것
    • 보안설정
    • 운영환경에 가장 중요한 것: 1. 보안, 2. 장애에 대한 유연성

    실제로 환경을 구축하는 경우는 지금 필요하지 않기에 구축할 경우 어떤 내용들을 고려해야하는지 파악하는 정도로 해당 챕터를 읽었다. 어떤 내용들을 확인해야하는지 키워드 위주로 정리해 보았다.

    댓글

Designed by Tistory.