Elastic Search 02 node, cluster

junkyu lee·2022년 5월 12일
0

elastic_stack

목록 보기
2/7

https://esbook.kimjmin.net/03-cluster


1. 노드

  • 하나의 노드마다 4개의 역할을 수행할 옵션 설정 가능

  • 기본 True, False로 설정시 해당 역할은 수행 불가
    ex)

  • 모든 설정이 false인 경우

    코디네이트 온리 노드 (coordinate only node)
    : 클라이언트와 통신만 하는 역할

데이터 노드

  • 데이터 저장 노드

ingest 노드

  • 데이터 색인시 전처리 단계인 Ingest pipline 작업 수행

ml 노드(머신러닝)

  • 머신러닝 작업 수행

마스터 노드

  • 클러스터당 1개의 마스터 노드와 다수 개의 마스터 후보 노드

  • 클러스터를 관리하는 노드

  • 마스터 노드가 끊길 경우 후보들 중 선출

  • 마스터 노드는 후보를 포함하여 최소 3개 이상의 홀수개로 설정

    • 마스터 후보 노드 개수 : (전체 마스터 후보 노드)/2+1
    • Split Brain를 방지 : 짝수개의 마스터 후보가 있는 경우 네트워크 단절로 클러스터가 두개로 분리되는 현상
  • 후보들은 마스터의 정보를 공유받기 때문에 너무 많은 노드를 후보로 설정하는 것은 부담이 되어 몇개의 노드만 node.master: true 로 설정하자

2.클러스터

1. 클러스터 구성

  • 기본적인 클러스터 구성

    • http 포트(9200~9299) : 클라이언트와의 통신 포트
    • tcp 포트 (9300~9399) : 클러스터의 노드와의 통신 포트
  • 하나의 서버에 두개의 노드를 띄우는 경우


    - 기본 포트 9200, 9300이 이미 사용중인 경우 자동으로 다음 포트인 9201, 9301로 실행됨

2. 클러스터, 노드 설정

  • 설정 파일 :config/elasticsearch.yml

  • 클러스터, 노드 이름 설정

    cluster.name:
    node.name:

  • 같은 서버인 경우 클러스터 명이 같아야 하나의 클러스터로 인식

  • 다른 서버인 경우 디스커버리 (Discovery) 과정을 거침

    discovery.seed_hosts:

  • 설정에 있는 주소 순서대로 클러스터명이 같은 노드가 있는지 확인

profile
가끔 기록하는 velog

0개의 댓글