솔솔

[ELK] Logstash구동 시 자바 버전 에러 본문

나의보물들/ELK

[ELK] Logstash구동 시 자바 버전 에러

솔솔하네 2024. 7. 23. 09:23
반응형
[설치환경OS]
Window 10 (64비트 운영 체제)

[설치환경SW]
openjdk-17
Logstash 7.11.1

 

 


 

🔴 트러블 슈팅

Logstash를 설치 후 구동을 하니 자바 버전 에러가 났다.
현재 자바 버전 17을 사용 중인데 Logstash에서는 자바 11버전을 사용해야 됐다.

 


 

먼저💨 Logstash에서 사용중인 자바 버전 확인하기

   - 아래 루트로 들어가서 relase파일 오픈하기

~\logstash\jdk\relase파일

 

    - 파일을 오픈해서 보면 JAVA-VERSION이 11이라는걸 확인 가능

 

 


 

그렇다면❔ Logstash를 구동하기위해 자바11로는 어떻게 변환하면 좋을까

 

🔹 방법1. 배치 파일로 Java 버전 스위칭

 - Logstash를 실행하기 전에 필요한 자바버전을 스위칭해서 실행하는 방법이다

https://solsolhane.tistory.com/87

 

[Java] 설치한 여러 자바 버전 자유롭게 전환하기

1. [Java]폴더에 버전 여러개 설치 해둔다.(저는 자바11, 17을 설치했습니다.) 2. [Java]폴더안에 [scripts]폴더를 만든다. 3. 메모장을 열고 아래 코드를 복사 하고 붙여넣은 후 본인 컴퓨터에 JDK가 있는

solsolhane.tistory.com

 

🔹  방법2. Logstash 실행 시 Java 경로 설정 (CMD 창에서 set 명령어 사용)

 - Logstash를 실행할 때만 Java 11을 사용하도록 설정

  1. CMD 창을 열고, 로그스태시 설치 경로로 이동

~ \logstash

 

  2. 아래 명령어를 실행

setx JAVA_HOME "{로그스태시 jdk 경로}"
setx PATH "%PATH%;%JAVA_HOME%\bin"

 


🤷‍♀️ 나의 띵킹

Logstash 외에 다른 프로그램에서도 자바 버전 문제를 겪을 수 있을 듯한데

이러한 상황에서 방법1과 방법2 중 어느 것이 더 좋은지 고민해 보았습니다.

 

자바 17을 먼저 사용하고 있는 경우 방법 1을 사용하면 자바 11로 다운그레이드해야 합니다.

그러나 방법 2를 사용하면 시스템 전체의 자바 버전을 변경하지 않고

특정 프로그램만 자바 11 버전을 사용하도록 설정할 수 있습니다.

 

따라서 굳이 다운그레이드할 필요 없이 프로그램 자체가 필요한 자바 버전을 사용할 수 있도록 하는 방법 2가 더 좋을듯합니다.