Elasticsearch를 시작할 때, 기본적으로 설정해두면 좋은 설정들이 있다. (Configuration)
Ubuntu를 기준으로 설명합니다. (Window도 실행부분 제외하고는 거의 비슷할거같아요)
0. 설치 및 실행
www.elastic.co/kr/downloads/elasticsearch
1. Download and unzip Elasticsearch.
2. Run bin/elasticsearch (or bin\elasticsearch.bat on Windows)
3. Run curl http://localhost:9200/ or Invoke-RestMethod http://localhost:9200 with PowerShell
1. System Configuration
1-1. /etc/security/limits.conf
username soft nproc 16384
username hard nproc 16384
username soft nofile 65536
username hard nofile 65536
username soft memlock unlimited
username hard memlock unlimited
1-2. /etc/sysctl.conf
vm.max_map_count=262144
- mmap 사용 가능한 map count 확장
- 아래 에러를 해결하기 위해 추가한다. ERROR: [1] bootstrap checks failed [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
2. Elasticsearch Configuration
2-1. {elasticsearch_home}/config/jvm.options
-Xms32g
-Xmx32g
- ES JVM Heap 사이즈를 32gb로 확장(각자의 상황에 따라 변경)
2-2. [elasticsearch_home}/connfig/elasticsearch.yml
bootstrap.memory_lock: true
network.host: 0.0.0.0 // 인스턴스에 부여된 IP 혹은 0.0.0.0 (anyopen)
node.master: true // Master eligible node 여부 체크
node.data: true
discovery.zen.ping.unincast.hosts: ["1.1.1.1.", "2.2.2.2", "3.3.3.3"]
discovery.zen.minimum_master_nodes: 2
scrpit.max_compilationns_rate: 1000/1m
script.cache.max_size: 1000
thread_pool:
write:
size: 6
queue_size: 500
- ES의 Swap out 방지를 위하여 bootstrap.memory_lock: true로 설정
- discovery.zen.ping.unnicast.hosts 클러스터의 모든 master Elligible Node의 IP를 명시해야한다.
- 클러스터 운영에 필요한 최소 Master Eligible 노드 수를 2로 Set 하여 split brain 현상을 방지
- Index/Bulk Request 처리를 위한 write thread를 6으로 설정
Elasticsearch 관련 글)
https://jw92.tistory.com/5 설치 및 configuration (기본적인 설정)
https://jw92.tistory.com/6 vm.max_map_count 버그 해결
https://jw92.tistory.com/25 Indexing Process
https://jw92.tistory.com/26 Search Process
https://jw92.tistory.com/27 Indexing 방식 - Inverted Index
https://jw92.tistory.com/34 Indexing 파일 - Segment
'Elasticsearch (엘라스틱서치)' 카테고리의 다른 글
Elasticsearch (엘라스틱서치)의 Indexing 파일 - Segment (0) | 2022.09.13 |
---|---|
Elasticsearch (엘라스틱서치)의 Indexing 방식 - Inverted Index (0) | 2022.09.02 |
Elasticsearch (엘라스틱서치)의 Search Process (0) | 2022.09.02 |
Elasticsearch (엘라스틱서치)의 Indexing Process (0) | 2022.09.02 |
Elasticsearch (엘라스틱서치) vm.max_map_count 버그 해결 (0) | 2021.04.10 |