들어가기
ubuntu 18.04가 설치된 virtual box에 elasticsearch7을 설치해보자.
아직 공부가 부족해서, 자세한 내용을 모른체 연습용 elasticsearch를 설치하는 내용이다.
클러스터, 샤드등 설정에 대한 내용은 포함하고 있지 않다.
실습
jdk 설치
먼저 elasticsearch를 설치하기 위해서는 jdk 설치를 해야 한다.
1 | javac -version |
먼저 jdk가 설치 되어있는지 확인해보자. 난 위처럼 설치가 안되어 있다.
1 | sudo apt install openjdk-11-jdk |
난 위처럼 open jdk 11로 설치를 진행했다.
아래처럼 jdk 가 설치 되었다.
Elasticsearch를 설치하자
https://iruwl.github.io/catetan/install-elasticsearch-7.0.0-on-ubuntu-18.04/
위 자료를 참고하여 실습을 진행했다.
Elasticsearch리파지토리 GPG 공개키를 import 한다.
1 | wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - |
아래처럼 OK 가 나온다면 정상적으로 키를 import 한 것이다.
Elasticsearch 라파지토리를 등록한다. 아래처럼 현재 최신 버전인 7 버전 리파지토리를 등록했다.
1 | sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list' |
다음 명령어로 elasticsearch를 설치하자.
1 | sudo apt update |
위 처럼 설치가 정상적으로 진행 되었다.
엘라스틱서치를 동작시키기전에 간단한 설정파일을 집고 넘어가자.
- /etc/elasticsearch/elasticsearch.yml
- /etc/elasticsearch/jvm.options
elasticsearch.yml 파일에는 엘라스틱 서치의 전반적인 환경설정이 들어간다.
일단 아래처럼 클러스트명을 지정한다.
그리고 network 영역에서 network.host에서 해당 host의 ip를 등록한다.
network.host를 지정하지 않을경우, elasticsearch가 설치된 host pc에서 localhost로 접속이 가능하지만, 외부에서 elasticsearch에 접속 할 수 없다.
아래처럼 network.host에 명시적으로 host pc의 ip를 지정할경우 해당 ip를 사용해서 외부에서 elasticsearch에 접속 할 수 있다.
http.port 에서 포트를 지정한다.
discovery.seed_hosts를 아래 이미지 처럼 지정한다.(클러스트 노드 관련 설정인거 같다.)
jvm.options 파일은 elasticsearch의 jvm heap 메모리 설정을 할 수 있다.
아래 이미지를 보면 기본으로 jvm heap이 1g 로 설정되어 있는 것을 확인 할 수 있다.
자신의 환경에 맞게 설정해주자.(초기 heap과 max heap의 사이즈를 동일하게 설정하는 것이 좋다고 한다.)
기초적인 elasticsearch설정이 끝났다면, 서비스를 등록하고 실행해보자.
1 | sudo systemctl enable elasticsearch.service |
1 | sudo systemctl status elasticsearch.service |
아래처럼 서비스가 정상 동작하는 것을 확인 할 수 있다.
ubuntu의 포트 여는 것은 생략한다.
아래 명령어로 elasticsearch에 GET 요청을 날려보자.
1 | curl -X GET '10.0.2.15:9200' |
정상적으로 elasticsearch가 응답하는 것을 확인 할 수 있다.
참고자료
https://iruwl.github.io/catetan/install-elasticsearch-7.0.0-on-ubuntu-18.04/
[https://kifarunix.com/install-elasticsearch-7-x-on-ubuntu-18-04-debian-9-8/](