Elasticsearch (엘라스틱서치)

Elasticsearch (엘라스틱서치) 시작하기 1. 설치 및 configuration (기본적인 설정)

jw92 2021. 4. 7. 09:34

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