Elastic/Elastic Search 서버 설치

5) ElasticSearch 추가 node 설치하기

seongduck 2022. 7. 15. 23:31

<HOSTNAME 변경>

  • hostnamectl set-hostname 명령어를 통해 HOSTNAME을 변경해준다.

elastic@elastic:~$ sudo hostnamectl set-hostname elastic-2

 

elastic@elastic-2:~$ echo ${HOSTNAME}
  • HOSTNAME이 ‘elastic’에서 ‘elastic-2’로 변경된 것을 확인할 수 있다.

<포트포워딩>

elastic@elastic-2:/etc/netplan$ sudo vi 00-installer-config.yaml
  • 이전에 [Preferences..]에서 설정해준 Port Forwarding Rules를 ‘elastic-2’에 적용하기 위해 00-installer-config.yaml파일을 수정한다

 

  • ‘elastic-2’의 host IP인 10.0.2.9와 host Port인 24를 addresses에 입력해준다.

<Elasticsearch-8.2.0 압축 해제>

  • ‘tar xfz’명령어를 통해 elasticsearch-8.2.0-linux-x86_64.tar.gz 압축 해제해준다
elastic@elastic-2:~$ tar xzf elasticsearch-8.2.0-linux-x86_64.tar.gz

Elasticsearch-common 및 하위 폴더 생성

  • elasticsearch 원본 폴더 내 파일을 잘못 수정하는 불상사를 방지하기 위해 사전에 ‘elasticsearch-common’ 폴더를 생성하여 작업을 진행한다.

elastic@elastic-2: ~$ mkdir elasticsearch-common
elastic@elastic-2: ~$ cd elasticsearch-common/
  • ‘mkdir’명령어를 통해 폴더를 생성한다.

 

elastic@elastic-2: ~/elasticsearch-common$ mkdir data
elastic@elastic-2: ~/elasticsearch-common$ mkdir logs
  • 하위 폴더인 ‘data’와 ‘logs’를 생성한다.

 

elastic@elastic-2: ~/elasticsearch-common$ cp -r ./config/
../elasticsearch-common
  • 원본 elasticsearch 폴더의 하위 폴더인 config를 ‘elasticsearch-common’폴더로 복사한다.
  • ls 명령어를 통해 ‘elasticsearch-common’에 ‘config’, ’data’, ’logs’폴더가 있음을 확인할 수 있다.

<Elasticsearch.yml 파일 수정>

elastic@elastic-2: ~/elasticsearch-common/configs $ vi
elasticsearch.yml

 

cluster.name: es-cluster 로 변경
node.name: ${HOSTNAME} 으로 변경
path.data: /home/elasticsearch-1/elasticsearch-common/data
path.logs: /home/elasticsearch-1/elasticsearch-common/logs
elastic.name: 자신이 생성할 cluster의 이름
path.data: elasticsearch에 저장된 데이터를 어디에 저장할지에 대한 경로
path.logs: elasticsearch log를 어디에 저장할지에 대한 경로
elasticsearch-1@elasticsearch-1:~/elasticsearch-common/config$
echo ${HOSTNAME} 명령어를 통해 HOSTNAME을 알 수 있다.

<ntoken.txt 파일 복사>

  • ‘elastic-1’에서 만든 ntoken.txt 파일을 ‘elastic-2’로 보내는 작업이다.

elastic@elastic:~/elasticsearch-8.1.0$ scp ntoken.txt elastic@10.0.2.9:~/elasticsearch-8.2.0

 

환경변수 추가

lastic@elastic-2:~/elasticsearch-common/config$ sudo vi ~/.bashrc

 

ES_PATH_CONF=~/elasticsearch-common/config
ES_HOME=~/elasticsearch-8.2.0
  • bashrc 파일 마지막 줄에 해당 명령어를 작성해준다.
  • 해당 작업은 환경변수에 ES_HOME, ES_PATH_CONF를 추가해주는 것이다.

 

elastic@elastic-2:~/elasticsearch-common/config$ source ~/.bashrc
elastic@elastic-2:~/elasticsearch-8.2.0$ echo $ES_PATH_CONF
  • source 명령어를 통해 변경사항을 적용해주고, 정상적으로 바뀌었는지 echo 명령어를 통해 확인한다.

<VM의 max_map_count 변경>

elastic@elastic-2:~/elasticsearch-8.2.0$ sudo sysctl -w
vm.max_map_count=262144

 

elastic@elastic-2:~/elasticsearch-8.2.0$ sudo vi /etc/sysctl.conf

 

  • 맨 마지막줄에 vm.max_map_count=262144 입력한 후, 저장한다.

<Elasticsearch 실행>

elastic@elastic-2:~/elasticsearch-8.2.0$ ES_PATH_CONF=$ES_PATH_CONF ./bin/elasticsearch
  • 해당 명령어를 통해 elasticsearch를 실행한다.
  • ‘elastic-2’ node의 환경설정이 모두 완료되었다.
  • ‘elastic-3’ node에도 이와 동일하게 작업을 해주면 된다