elasticsearch 7.3 설치하기






elasticsearch 7.3 설치하기 





이 포스팅에는 주기적으로 elasticsearch 설치하기 포스팅이 올라온다. 

가끔씩 검색 엔진 사용할 일이 있는데 그때마자 버전이 몇 개씩이나 올라가 있어서 결국 새로 설치하기 때문이다;;


일단 7 버전의 주요 변화는 한국어 형태분석기가 내장되었다고 하면서 

기존에 썼던 은전 한잎 플러그인이 더이상 호환이 안된다고 한다. 



그럼 일단 다운로드 받아서 실행해보자. 


버전별로 다운로드 받기 

https://www.elastic.co/kr/downloads/past-releases


문서 : https://www.elastic.co/guide/en/elasticsearch/reference/7.3/targz.html






wget "https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.2-linux-x86_64.tar.gz"



tar zxvf elasticsearch-7.3.2-linux-x86_64.tar.gz






 wget "https://artifacts.elastic.co/downloads/kibana/kibana-7.3.2-linux-x86_64.tar.gz"


  tar zxvf kibana-7.3.2-linux-x86_64.tar.gz





jvm.options


#-Xms1g

#-Xmx1g


-Xms10g

-Xmx10g



./elasticsearch 를 실행시키자 아래와 같은 오류가 나온다. 

이번엔 설정 방법도 달라졌나보다;;



[2019-09-30T20:12:48,973][INFO ][o.e.b.BootstrapChecks    ] bound or publishing to a non-loopback address, enforcing bootstrap checks

ERROR: [1] bootstrap checks failed

[1]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured




discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes 셋 중에 하나는 세팅하라고 해서

가이드 문서를 따라 seed_hosts 를 아래와 같이 설정해봤다. 


discovery.seed_hosts: ["127.0.0.1", "[::1]"]



그렇지만 이제 warning 메세지가 ㅠㅠ



[2019-09-30T20:39:00,499][WARN ][o.e.c.c.ClusterFormationFailureHelper] [dd] master not discovered yet, this node has not previously joined a bootstrapped (v7+) cluster, and [cluster.initial_master_nodes] is empty on this node: have discovered [{dd}{FI-RklyNRN-xTlMDTDBgSA}{m592KpzdSTiLMt9RkycrdA}{ ... ; discovery will continue using [127.0.0.1:9300, [::1]:9300] from hosts providers and  .... {121.78.145.40}{121.78.145.40:9300}{dim}{ml.machine_memory=135097606144, xpack.installed=true, ml.max_open_jobs=20}] from last-known cluster state; node term 0, last-accepted version 0 in term 0


결국 검색해서 initial_master_nodes 까지 설정한 후에야 제대로 시작할 수 있었다. 


참고: https://linuxacademy.com/community/show/36639-elasticsearch-yml-changes-70/




node.name: master1

discovery.seed_hosts: ["127.0.0.1", "[::1]"]
#
# Bootstrap the cluster using an initial set of master-eligible nodes:
#
cluster.initial_master_nodes: ["서버ip"]


참고: https://linuxacademy.com/community/show/36639-elasticsearch-yml-changes-70/


# curl 'localhost:9200'

{

  "name" : "master1",

  "cluster_name" : "elasticsearch",

  "cluster_uuid" : "EgSc9q3mSC2URKZWBZC4FQ",

  "version" : {

    "number" : "7.3.2",

    "build_flavor" : "default",

    "build_type" : "tar",

    "build_hash" : "1c1faf1",

    "build_date" : "2019-09-06T14:40:30.409026Z",

    "build_snapshot" : false,

    "lucene_version" : "8.1.0",

    "minimum_wire_compatibility_version" : "6.8.0",

    "minimum_index_compatibility_version" : "6.0.0-beta1"

  },

  "tagline" : "You Know, for Search"

}





참고 : 

https://www.elastic.co/guide/en/elasticsearch/reference/7.3/discovery-settings.html


nori : 


https://www.elastic.co/guide/en/elasticsearch/plugins/6.4/analysis-nori-tokenizer.html#analysis-nori-tokenizer

https://www.elastic.co/guide/en/elasticsearch/plugins/6.4/analysis-nori.html