서버는 EC2(Ubuntu 20.04) 우분투 위에 올림을 가정한다.
Elastic Search 버전 및 설치
https://www.elastic.co/kr/support/matrix
해당 사이트에서 현재 OS와 맞는 버전을 선택하자. 본인은 7.11.x를 사용할 것이다.
- JDK 설치(7.x 버전 이상은 설치하지 않아도 괜찮다.)버전 확인
sudo apt update
sudo apt install openjdk-11-jdk
java -version
- Elasticsearch 7.11.x 설치
- HTTPS를 위한 패키지 설치:
sqlCopy code sudo apt-get update sudo apt-get install apt-transport-https ca-certificates wget
- Elasticsearch 공개 키 추가:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
- APT 리포지토리 설정:
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 설치:
sudo apt-get update sudo apt-get install elasticsearch
- Elasticsearch 서비스 시작:
sudo systemctl start elasticsearch
- Elasticsearch 서비스 자동 시작 설정 (선택사항):
sudo systemctl enable elasticsearch
- 설치 확인:이 명령어를 실행하면 Elasticsearch가 정상적으로 작동하는지 확인할 수 있다.
curl -X GET "localhost:9200/"
위 명령어를 차례대로 실행하면 Elasticsearch가 설치되고 실행될 것이다.
https://www.elastic.co/guide/en/elasticsearch/reference/7.11/deb.html#deb-repo
공식 레퍼런스를 활용할 것
서비스 시작 및 자동 설정
- 서비스 시작:
sudo systemctl start elasticsearch
- 서비스 상태 확인:
sudo systemctl status elasticsearch
- 서비스 자동 시작 설정:
sudo systemctl enable elasticsearch
ufw
Elasticsearch는 기본적으로 9200번 포트를 HTTP 통신용으로 사용하고, 9300번 포트는 노드 간 통신용으로 사용한다.
- HTTP 클라이언트와의 통신: 9200번
- Elasticsearch 클러스터 내 노드 간 통신: 9300번
따라서 ufw
(Uncomplicated Firewall) 설정에서 이 포트들을 열어주면 Elasticsearch가 외부와 통신할 수 있다.
- 9200번 포트를 열려면:
sudo ufw allow 9200/tcp
- 9300번 포트를 열려면:
sudo ufw allow 9300/tcp
Kibana
reference :
Kibana를 EC2(Ubuntu)에 설치하고 웹 화면에 띄우려면 다음과 같은 단계를 따라하면 된다.
- .tar.gz 아카이브 다운로드
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.11.2-linux-x86_64.tar.gz
- Kibana 아카이브 압축 해제
tar -xzf kibana-7.11.2-linux-x86_64.tar.gz
- 폴더명 변경
- Kibana 파일명을 쉽게 변경해보자
mv kibana-7.11.2-linux-x86_64 kibana
- Kibana 서비스 시작:
cd /kibana/bin //실행 권한 추가 chmod +x kibana //실행 ./kibana //실행 종료 Ctrl + C를 누르면 된다.
- 세팅
- Kibana 설정 변경:
kibana.yml
파일을 수정하여 Kibana가 모든 네트워크 인터페이스에서 들어오는 연결을 수락하도록 설정해야 한다.kibana.yml
에서server.host
설정을 찾는다.- 나의 경우는 .tar.gz를 받았기에, kibana 폴더의 config 아래에 존재했다. 일반적으로는
/etc/kibana/
아래에 존재한다고 한다. server.host
의 값을"0.0.0.0"
으로 변경한다.
- 방화벽 설정 확인:서버의 방화벽에서 5601 포트가 외부로 열려 있는지 확인한다. Ubuntu에서
ufw
를 사용한다면, 아래의 명령어로 5601 포트를 열 수 있다:
sudo ufw allow 5601/tcp
- 방화벽 설정: Kibana는 기본적으로 5601 포트를 사용한다.
- Kibana 재시작: 설정을 변경한 후 Kibana를 재시작한다.
- 외부 장치에서
http://{url}:5601
주소로 접속을 시도한다. (https 추가 예정)
- Kibana 설정 변경:
- 웹 브라우저에서 확인: 웹 브라우저에서 EC2 인스턴스의 IP 주소 + 5601 포트로 접속하면 Kibana 웹 화면을 볼 수 있다.
http://{당신의 URL}:5601
이렇게 하면 EC2(Ubuntu) 위에 Kibana를 설치하고 웹 화면에 띄울 수 있다.
'프로젝트 > 여행지 오픈 API' 카테고리의 다른 글
[ElasticSearch] 4. 필드와 멀티 필드, 인덱스 템플릿 (0) | 2023.10.24 |
---|---|
[ElasticSearch] 3. 벌크 데이터와 매핑, 데이터 타입과 문자열 처리 (0) | 2023.10.24 |
[ElasticSearch] 2. 다이나믹 매핑, 도큐먼트 CRUD (0) | 2023.10.24 |
[개발]셀레니움을 사용한 스크래핑 구현 (0) | 2023.10.24 |
[ElasticSearch] 1. 도큐먼트와 인덱스 (1) | 2023.10.24 |