VMWare에서 Elasticsearch 설치하기

BaeBae·2023년 4월 27일
0

검색엔진

목록 보기
5/7
post-thumbnail

VMWare에서 Elasticsearch를 설치하고 간단한 MySQL 실습까지!

  • ubuntu22.04
  • ealsticsearch@7.12.1
  • logstash@1:7.12.1-1
  • openjdk@11.0.11
  • mysql-connector-java@8.0.23

1. Elasticsearch 설치

1-1. 설치

# Download and install the public signing key:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

# install apt-transport-https:
sudo apt-get install apt-transport-https

# Save the repository definition to /etc/apt/sources.list.d/elastic-7.x.list:
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list

# install elasticsearch
sudo apt-get update && sudo apt-get install elasticsearch

1-2. 실행

# 실행
sudo systemctl start elasticsearch.service

# 중단
sudo systemctl stop elasticsearch.service

# 실행확인방법
curl -X GET "localhost:9200/?pretty"

2. JDK 설치 & 환경 설정

# search
apt search openjdk-11

# install
sudo apt-get install openjdk-11-jdk

# 설치확인
java --version

# 설치된 자바 패키지 리스트 확인
update-java-alternatives -l 
#/usr/lib/jvm/java-1.11.0-openjdk-amd64 이 리스트업됨.

# 환경설정하기
export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
export PATH=$PATH:$JAVA_HOME/bin

# 환경설정확인
echo $PATH

3. Logstash 설치

3-1. 설치

#### 위에서 이미 했으면 반복할 필요 없음
# download and install the public signing key:
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

#### 위에서 이미 했으면 반복할 필요 없음
# install apt-transport-https:
sudo apt-get install apt-transport-https

#### 위에서 이미 했으면 반복할 필요 없음
# Save the repository definition to /etc/apt/sources.list.d/elastic-7.x.list:
echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

# install logstash
sudo apt-get update && sudo apt-get install logstash

# stashing first event
# `Pipelines running` 이라고 뜨면 아무 글이나 치고 `enter`를 치면 message가 뜸. 종료는 ctrl-d 
sudo bin/logstash -e 'input { stdin { } } output { stdout {} }'

만약 stashing first event 단계에서 문제가 생긴다면 sudo 모드에서 시작해 볼 것!

sudo su

cd /usr/share/logstash

/usr/share/logstash# ./bin/logstash -e 'input { stdin { } } output { stdout {} }'

해결 되지 않으면 logstash가 있는 곳으로 위치를 변경해서 해보는 방법도 있음!

# logstash 위치 확인
whereis logstash

# 위치 변경
# {}는 빼고 경로만 쓸 것!
# ex) cd /usr/share/logstash
cd {logstash의 위치}

3-2. 실행

# 실행
sudo systemctl start logstash.service

# 중단
sudo systemctl stop logstash.service

4. mysql과 연결

4-1. install mysql-connector-java 설치 설치

# 다운로드
wget dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java_8.0.23-1ubuntu18.04_all.deb

# 파일 풀기
sudo dpkg -i mysql-connector-java_8.0.23-1ubuntu18.04_all.deb

# 경로 설정
usr/share/java/mysql-connector-java-8.0.23.jar

4-2. *.conf 파일 만들기

  • /usr/share/logstash에 파일을 만들어서 아래 파일 내용을 복사하고 :wq로 나오면 끝!
# 현재 위치가 /usr/share/logstash 가 아니라면 이동!
cd /usr/share/logstash

# 파일 만들기
sudo vi {파일 이름}.conf

파일 내용

input {
    jdbc {
        clean_run => true
        jdbc_driver_library => "/usr/share/java/mysql-connector-java-8.0.23.jar"
        jdbc_driver_class => "com.mysql.jdbc.Driver"
        jdbc_connection_string => "jdbc:mysql://{db 주소}"
        jdbc_user => "{사용자 ID}"

  jdbc_password => "{사용자 비밀번호}"

  schedule => "* * * * *"
  statement => "select * from {뽑고 싶은 테이블명}"
    }
}

output {
	stdout {}
}

4-3. 실행

sudo bin/logstash -f {파일 이름}.conf 

우여곡절이 많았지만 결국 해냈따!!
주변 친구의 도움도 받고 여기저기 블로그 참고도 해보았다 ㅎㅎ
이 다음에는 mysql의 데이터가 변경되었을 때 실시간으로 logstash 담긴정보도 수정해보아야겠다! 🤍


참고 자료
profile
Data가 좋은 Web 개발자

0개의 댓글