안녕하세요 😉
유유자적한 개발자 유로띠 입니다 😀
이전 포스팅인
ELK 설치
에 이어서
오늘은
ELK
의 L에 해당하는
Logstash에 대해 포스팅해보도록 하겠습니다
👏👏👏👏
What is Logstash ❓
실시간 파이프라인 기능을 가진 오픈소스 데이터 수집 엔진입니다
서로 다른 소스의 데이터를 탄력적으로 통합하고 사용자가 선택한 목적지로
데이터를 정규화할 수 있게 해 줍니다
이번 포스팅에서는
✅ Logstash 다운로드
✅ Logstash conf파일 설정
✅ Logstash 기동 및 테스트
✅ Logstash DB 연동
에 대해서 알아봅시다 🔎
🎉 Logstash 설치하기 & DB 연동하기
📢DownLoad Logstash
Logstash 다운로드 경로입니다
https://www.elastic.co/kr/downloads/logstash
다양한 Downloads 방식을 보시면 windows, linux, rpm, deb 등
다양한 다운로드를 제공하고 있습니다
보통
CentOS 계열은 rpm
ubuntu 계열은 deb
설치 패키지를 사용합니다
📍 DEB install
DEB 버튼을 선택하면 logstash-7.6.2.deb 파일을 받을 수 있습니다
설치 서버에 파일을 옮긴 후 설치를 진행합니다
$sudo dpkg -i logstash-7.6.2.deb
간단히 설치는 완료하였습니다 👏
📢Config Logstash
logstash를 기동 하기 전에 conf파일을 만들어야 합니다 😄
원하는 경로에 conf파일을 생성합니다
✅ test.conf 파일 생성
logstash를 테스트하기 위해 기본적인 정보인 input, output만 설정하여 테스트를 진행해 보겠습니다
input {
stdin {}
}
output {
stdout {}
}
📍 Start Logstash
원하는 경로(저는 /opt/elk/logstash에 생성하였습니다)에 있는 conf파일을 아래의 명령어로 Logstash를 실행하여줍니다
$sudo /usr/share/logstash/bin/logstash -f /opt/elk/logstash/test.conf
그다음 🟩커서에 hello를 입력하고 Enter를 입력하여줍니다 😃
input 설정인 stdin에 hello를 입력하였기 때문에 output인 stdout출력 값이 보입니다 👌
📍 Stop Logstash
Ctrl + c를 동시에 눌러서 Logstash를 종료할 수 있습니다
📢Logstash와 DB 연동
Logstash를 이용하여
mysql Database와 연동해보도록 하겠습니다
📍 mysql-connector-java 다운로드
mysql-connector-java는 mavenRepository사이트에서 다운을 받을 수 있습니다
다운로드한 mysql-connector-java-5.1.38.jar 파일을 /usr/share/logstash/tools 경로로 넣어줍니다
✅ db.conf 파일 생성
mysql db를 연결하기 위한 conf파일을 생성합니다
input {
jdbc {
jdbc_validate_connection => true
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_driver_library => "/usr/share/logstash/tools/mysql-connector-java-5.1.38.jar"
jdbc_connection_string => "jdbc:mysql://test-database-1.rds.amazonaws.com:3306/<DataBase>"
jdbc_user => "username"
jdbc_password => "password"
statement => "SELECT idx, adtidx, msg, adtstat, setdt, evtcd FROM INSPECTOR"
}
}
output {
stdout {}
}
📍 Start Logstash
conf파일을 아래의 명령어로 Logstash를 실행하여 줍니다
$sudo /usr/share/logstash/bin/logstash -f /opt/elk/logstash/db.conf
💡 만약 jdbc_driver_library 경로를 못 찾는다는 에러가 발생되는 경우
✅ jdbc_driver_library를 conf파일에서 삭제을 합니다
input {
stdin {}
jdbc {
jdbc_validate_connection => true
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://test-database-1.rds.amazonaws.com:3306/<DataBase>"
jdbc_user => "username"
jdbc_password => "password"
statement => "SELECT idx, adtidx, msg, adtstat, setdt, evtcd FROM INSPECTOR"
}
}
output {
stdout {}
}
✅ /usr/share/logstash/logstash-core/lib/jars 경로에 mysql-connector-java-5.1.38.jar을 직접 넣어줍니다
해당 이슈는 아래의 elastic사이트에서 참조하였습니다 🧐
https://discuss.elastic.co/t/logstash-7-3-0-failed-to-load-mssql-jdbc-7-4-1-jre11-jar/196319/2
📢마무리
이상
Logstash 설치하기 & DB 연동에 대해서
알아보았습니다
👏👏👏👏
'Programming > ELK' 카테고리의 다른 글
[ELK] Kibana 보안 연결을 위한 SSL를 적용 해보자 #6 (2) | 2020.04.30 |
---|---|
[ELK] KIBANA를 이용하여 데이터를 👁🗨시각화 해보자 #5 (2) | 2020.04.23 |
[ELK] Logstash 사용하기 📌시각화를 위한 설정 📌JDBC 상세 설정 #4 (3) | 2020.04.21 |
[ELK] KIBANA 설치하기 #2 (0) | 2020.04.16 |
Elasticsearch 설치 및 외부 허용 설정하기 #1 (2) | 2020.04.14 |