본문 바로가기
클라우드/AWS

ElasticSearch 클러스터 구성

by 빈스터디 2023. 3. 22.

1. ElasticSearch를 설치할 리눅스 가상머신 3대를 준비한다.

(CPU 2, Memory 4로 설정)

 

 

2. JDK를 설치한다.

yum -y install java-1.8.0-openjdk-devel.x86_64

 

 

3. 레포지토리를 추가한다.

아래 더보기의 내용을 한 줄 씩 입력한다.

더보기
cat > /etc/yum.repos.d/elasticsearch.repo <<EOF
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

 

 

4. ElasticSearch를 설치한다.

dnf -y install elasticsearch

 

 

5. vi /etc/elasticsearch/jvm.options 입력 후, JVM Heap Size를 설정한다.

주석 해제 후, 

-Xms2g

-Xms2g 

입력

 

 

6. ElasticSearch를 실행한다.

systemctl enable elasticsearch
systemctl restart elasticsearch

 

 

7. 아래의 명령어로 설치가 잘 되었는지 확인한다.

curl http://127.0.0.1:9200

 

 

8.vi /etc/elasticsearch/elasticsearch.yml 입력 후, 서버 바인딩 주소와 마스터를 누구로 할건지 설정을 한다.

주석 해제 후, 아래 더보기처럼 설정

더보기

network.host: 0.0.0.0

cluster.name: my-cluster
node.name: node-1 (각 가상머신에 따라 다르게 설정)
discovery.seed_hosts: ["가상머신1의 IP", "가상머신2의 IP", "가상머신3의 IP"]
cluster.initial_master_nodes: ["마스터 노드로 설정할 가상머신의 IP"]
node.master: true (마스터 가상머신에서는 true, 다른 가상머신에서는 false)
node.data: false (마스터 가상머신에서는 false, 다른 가상머신에서는 true)

 

 

9. 방화벽 해제하고, ElasticSearch 재시작하기

systemctl stop firewalld
systemctl restart elasticsearch

 

 

POSTMAN에서 데이터 생성 및 조회 & 클러스터 확인

변수로 설정하고 Environments 값 지정 및 적용

 

클러스터 상태를 확인해보면, green으로 shards 3개까지 잘 뜨는 것을 볼 수 있다.

(줄 안맞음 주의)

 

 

클러스터 확인