본문 바로가기
Data/ELK

[2021.06.15] 인턴 +106 elasticsearch Preferences(elasticsearch.yml)

by injekim97 2021. 6. 15.
반응형

[2021.06.15] 인턴 +106  elasticsearch Preferences(elasticsearch.yml)

 

 

https://esbook.kimjmin.net/02-install/2.3-elasticsearch

 

2.3 elasticsearch 환경 설정

이 문서의 허가되지 않은 무단 복제나 배포 및 출판을 금지합니다. 본 문서의 내용 및 도표 등을 인용하고자 하는 경우 출처를 명시하고 김종민(kimjmin@gmail.com)에게 사용 내용을 알려주시기 바랍

esbook.kimjmin.net

-> elasticsearch 환경설정을 위한 guide-book

-> 해당 게시글은 위의 링크주소의 내용으로 작성하였음

 

 

 

* default 값을 확인하려면, elasticsearch를 실행 할 때 log에 찍힌다.

-> [node-1] heap size[920mb] == 1gb로 설정되어 있다.

 

 

 

* 데이터가 늘어나면 날 수록 변경해주면 된다. 단, 30gb 이상은 사용하지 말것

* Xms 값과 Xmx의 값은 똑같이 사용 해야 한다.

-Xms1g
-Xmx1g

 

<경로 : elasticsearch7.13.2/config/jvm.options>

 

 

<YAML 문법 설정시 주의해야 할 점>

* 맨 위의 사진인 밑줄친 부분 처럼 옵션을 설정할 때는 들여쓰기에 유의

* 위의 코드path후 뜰여쓰기한 data랑 아래의 path.data랑 동일함.

* 또한, data: 공백이 매우 중요 (즉, 세미콜론 뒤에 공백 매우 중요)

 

 

 

* cluster.name: "<클러스터명>"

-> 클러스터명을 설정할 수 있음

 

* node.name: "<노드명>"

-> 실행중인 각각의 elasticsearch 노드들을 구분할 수 있는 노드의 이름을 설정할 수 있음

 

node.attr.<key>: "<value>"

-> 노드별로 속성을 부여하기 위한 일종의 네임스페이스를 지정

-> 이 설정을 이용하면 hot / warm 아키텍쳐를 구성하거나 물리 장비 구성에 따라 샤드 배치를 임의적으로 조절하는 등의 설정이 가능

 

path.data:  ["<경로>"] 

-> 색인된 데이터를 저장하는 경로를 지정

-> 배열 형태로 여러개의 경로값의 입력이 가능하기 때문에 한 서버에서 디스크 여러개를 사용할 수 있습니다.

 

path.logs: "<경로>"

-> Elasticsearch 실행 로그를 저장하는 경로를 지정

 

 

bootstrap.memory_lock: true

-> Elasticsearch가 사용중인 힙메모리 영역을 다른 자바 프로그램이 간섭 못하도록 미리 점유하는 설정(항상 true 사용을 권장)

 

 

network.host: <ip 주소>

network.bind_host : 내부망

network.publish_host : 외부망

 

_local_ : 루프백 주소 127.0.0.1 , 디폴트로 설정됨

_site_ : 로컬 네트워크 주소로 설정, 실제로 클러스터링 구성 시 주로 설정하는 값 (내부 ip주소 - Google cloud 기준)

_global_ : 네트워크 외부에서 바라보는 주소로 설정 (외부 ip주소 - Google cloud 기준)

 

* 실제로 클러스터를 구성할 때 설정을 network.host: _site_ 로 해 놓으면 서버의 네트워크 주소가 바뀌어도 상관X

 

 

 

 

http.port: <포트 번호>

-> Elasticsearch가 클라이언트와 통신하기 위한 http 포트를 설정

-> 디폴트는 9200 이며, 포트가 이미 사용중인 경우 9200 ~ 9299 사이의 값을 사용할 것

 

transport.port: <포트 번호>

-> Elasticsearch 노드들 끼리 서로 통신하기 위한 tcp 포트를 설정

-> 디폴트는 9300 이며, 포트가 이미 사용중인 경우 9300 ~ 9399 사이의 값을 사용할 것

 

 

discovery.seed_hosts: [ "<호스트-1>", "<호스트-2>", ... ]

-> 클러스터 구성을 위해 바인딩 할 원격 노드의 IP 또는 도메인 주소를 배열 형태로 입력

-> 주소만 적는 경우 디폴트로 9300~9305 사이의 포트값을 검색, tcp 포트가 이 범위 밖에 설정 된 경우 포트번호 까지 같이 적어줘야 함.

- 추가된 기능

discovery.zen.ping.unicast.hosts: [ "<호스트-1>", "<호스트-2>", ... ]

 

 

cluster.initial_master_nodes: [ "<노드-1>", "<노드-2>" ]

-> 클러스터가 최초 실행 될 때 명시된 노드들을 대상으로 마스터 노드를 선출

 

- 추가된 기능

discovery.zen.minimum_master_nodes: 2

 

 

반응형

댓글