해결된 질문
작성
·
218
0
카프카 설치 과정에서 뭔가 오류가 발생한거 같은데 해결이 어려워 글 남겨봅니다.
2025-02-05 20:04:47 ===> User
2025-02-05 20:04:47 uid=1000(appuser) gid=1000(appuser) groups=1000(appuser)
2025-02-05 20:04:47 ===> Setting default values of environment variables if not already set.
2025-02-05 20:04:47 CLUSTER_ID not set. Setting it to default value: "5L6g3nShT-eMCtK--X86sw"
2025-02-05 20:04:47 ===> Configuring ...
2025-02-05 20:04:47 ===> Launching ...
2025-02-05 20:04:47 ===> Using provided cluster id 5L6g3nShT-eMCtK--X86sw ...
2025-02-05 20:04:47 # # A fatal error has been detected by the Java Runtime Environment: # # SIGILL (0x4) at pc=0x0000ffff9513fc5c, pid=13, tid=390 # # JRE version: (21.0.4+7) (build ) # Java VM: OpenJDK 64-Bit Server VM (21.0.4+7-LTS, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-aarch64) # Problematic frame: # j java.lang.System.registerNatives()V+0 java.base # # No core dump will be written. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again # # An error report file with more information is saved as: # /tmp/hs_err_pid13.log [0.016s][warning][os] Loading hsdis library failed # # The crash happened outside the Java Virtual Machine in native code. # See problematic frame for where to report the bug. #
오류 로그는 이렇구요.
대강.. 자바 버전? 제 로컬환경과 뭔가 문제가 있는거 같은데..
맥미니 M4 이구,
java -version
openjdk version "21.0.5" 2024-10-15
OpenJDK Runtime Environment Homebrew (build 21.0.5)
OpenJDK 64-Bit Server VM Homebrew (build 21.0.5, mixed mode, sharing)
검색해보니 M4에서만 일어나는 문제인거 같기도 하고..
sve 라는 옵션을 꺼보래서
docker run -d --name kuke-board-kafka -p 9092:9092 -e FAFKA_JVM_PERFORMANCE_OPTS="-XX:UseSVE=0" apache/kafka:3.8.0
이런식으로 설치 해봤는데 마찬가지네요.
뭘 시도해봐야할지 도움 좀 부탁드립니다.
답변 3
0
theplayer1003님, 안녕하세요!
FAFKA 오타 -> KAFKA 변경해도 안되실까요?
아니면, 도커 이미지를 3.8.1이나 3.9.0 버전으로 변경 해보시겠어요?
장비 환경 문제일지 싶은데, 해당 장비가 없어서 해결 방법 찾기에 어려움이 있네요.. ㅠㅠ
카프카 브로커 띄우고 토픽 생성 및 연결할 수만 있다면, 꼭 강의와 동일한 방식으로 세팅할 필요는 없습니다!
"-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -XX:MaxInlineLevel=15 -Djava.awt.headless=true -XX:UseSVE=0"
컨테이너 실행할 때, 환경변수 KAFKA_JVM_PERFORMANCE_OPTS 위 값으로 실행해보시겠어요?
전체 명령어
docker run -d --name kuke-board-kafka -p 9092:9092 -e KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -XX:MaxInlineLevel=15 -Djava.awt.headless=true -XX:UseSVE=0" apache/kafka:3.8.0
아래 명령어로도 해보시겠어요?
docker run -d --name kuke-board-kafka -p 9092:9092 -e KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -XX:MaxInlineLevel=15 -Djava.awt.headless=true -XX:-UseHSDis" apache/kafka:3.8.0
둘 다 안되네요.
첫번째는 PrintGCDateStamps 문제가 반복되고
두번째는 UseHSDis 옵션에 대해 에러가 나옵니다.
UseHSDis 옵션을 지워봤더니 다시 최초 질문 오류의
# j java.lang.System.registerNatives()V+0 java.base 로 돌아왔네요.
오류 로그 파일을 열어보긴 했는데, JVM 관련 온갖 것들이 쏟아져나오는데.. 텍스트가 길어서 올리기도 뭐하고..
지식이 없는 상태에서 증상이랑 명령어만 쫓아다니면서 해결하려니 쉽지가 않네요
docker run -d --name kuke-board-kafka -p 9092:9092 -e KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -XX:MaxInlineLevel=15 -Djava.awt.headless=true -XX:UseSVE=0" apache/kafka:3.8.0
2025-02-06 07:16:05 ===> User
2025-02-06 07:16:05 uid=1000(appuser) gid=1000(appuser) groups=1000(appuser)
2025-02-06 07:16:05 ===> Setting default values of environment variables if not already set.
2025-02-06 07:16:05 CLUSTER_ID not set. Setting it to default value: "5L6g3nShT-eMCtK--X86sw"
2025-02-06 07:16:05 ===> Configuring ...
2025-02-06 07:16:05 ===> Launching ...
2025-02-06 07:16:05 ===> Using provided cluster id 5L6g3nShT-eMCtK--X86sw ...
2025-02-06 07:16:06 Log directory /tmp/kraft-combined-logs is already formatted. Use --ignore-formatted to ignore this directory and format the others.
2025-02-06 07:16:06 [0.000s][warning][gc] -Xloggc is deprecated. Will use -Xlog:gc:/opt/kafka/bin/../logs/kafkaServer-gc.log instead.
2025-02-06 07:16:01 Unrecognized VM option 'PrintGCDateStamps'
2025-02-06 07:16:01 Error: Could not create the Java Virtual Machine.
2025-02-06 07:16:01 Error: A fatal exception has occurred. Program will exit.
2025-02-06 07:16:06 Unrecognized VM option 'PrintGCDateStamps'
2025-02-06 07:16:06 Error: Could not create the Java Virtual Machine.
2025-02-06 07:16:06 Error: A fatal exception has occurred. Program will exit.
docker run -d --name kuke-board-kafka -p 9092:9092 -e KAFKA_JVM_PERFORMANCE_OPTS="-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+ExplicitGCInvokesConcurrent -XX:MaxInlineLevel=15 -Djava.awt.headless=true -XX:-UseHSDis" apache/kafka:3.8.0
2025-02-06 07:17:35 ===> User
2025-02-06 07:17:35 uid=1000(appuser) gid=1000(appuser) groups=1000(appuser)
2025-02-06 07:17:35 ===> Setting default values of environment variables if not already set.
2025-02-06 07:17:35 CLUSTER_ID not set. Setting it to default value: "5L6g3nShT-eMCtK--X86sw"
2025-02-06 07:17:35 ===> Configuring ...
2025-02-06 07:17:35 ===> Launching ...
2025-02-06 07:17:35 ===> Using provided cluster id 5L6g3nShT-eMCtK--X86sw ...
2025-02-06 07:17:35 Unrecognized VM option 'UseHSDis' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.
2025-02-06 07:17:39 ===> User
2025-02-06 07:17:39 uid=1000(appuser) gid=1000(appuser) groups=1000(appuser)
2025-02-06 07:17:39 ===> Setting default values of environment variables if not already set.
2025-02-06 07:17:39 CLUSTER_ID not set. Setting it to default value: "5L6g3nShT-eMCtK--X86sw"
2025-02-06 07:17:39 ===> Configuring ...
2025-02-06 07:17:39 ===> Launching ...
2025-02-06 07:17:39 ===> Using provided cluster id 5L6g3nShT-eMCtK--X86sw ...
2025-02-06 07:17:39 Unrecognized VM option 'UseHSDis' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit.
앗.. 저것도 안되는군요..!
제가 이것저것 시도해볼 수도 없어서 환경에 대한 문제는 해결해드리기가 어렵네요 ㅠㅠ
꼭 동일한 카프카 이미지를 사용할 필요는 없어서, 다른 이미지(apache kafka 이미지 말고)를 활용하셔서 설치해보시겠어요?
검색해보시면 다른 이미지 설치 방법도 많이 나옵니다!
아니면 로컬에 직접 설치해보셔도 됩니다!
설치하고 토픽 만들어서 브로커 띄울 수만 있으면 애플리케이션에서 연동 방식은 동일합니다.
0
아, 증상은 kafka 설치 후 컨테이너 실행시 바로 다운되어버리는 증상입니다.
>Docker 설정 확인:
Docker 명령어에서 환경 변수를 설정할 때 오류가 있을 수 있습니다. -e
옵션을 사용하여 환경 변수를 전달할 때 오타나 잘못된 옵션 사용 여부를 확인해 보세요.
FAFKA_JVM_PERFORMANCE_OPTS
대신 올바른 환경 변수 명령어를 확인해 보세요. 보통 JVM 옵션을 설정할 때는 KAFKA_OPTS
를 사용합니다.
이걸로는 해결이 안되네요.
0
안녕하세요, 인프런 AI 인턴입니다. theplayer1003님.
Mac Mini M4 환경에서 Apache Kafka 설치 중 발생한 오류로 인해 불편을 겪고 계신 것 같습니다. 주어진 로그를 기반으로 몇 가지 해결 방안을 제시해 드리겠습니다.
Java 버전 호환성:
Docker 설정 확인:
-e
옵션을 사용하여 환경 변수를 전달할 때 오타나 잘못된 옵션 사용 여부를 확인해 보세요.FAFKA_JVM_PERFORMANCE_OPTS
대신 올바른 환경 변수 명령어를 확인해 보세요. 보통 JVM 옵션을 설정할 때는 KAFKA_OPTS
를 사용합니다. docker run -d --name kuke-board-kafka -p 9092:9092 -e KAFKA_OPTS="-XX:UseSVE=0" apache/kafka:3.8.0
호환성 옵션 사용:
M4 칩셋 관련 논의 및 패치 확인:
동일한 이슈에 대한 유용한 정보를 찾기 위해 인프런 커뮤니티에서 관련 글을 찾아보는 것도 권장드립니다. 예를 들어, Kafka 설치 시 ARM 아키텍처에서의 문제 해결 (게시글 제목) 과 같은 글이 도움이 될 수 있습니다.
만약 위 방법으로 해결되지 않을 경우, 가장 확실한 방법은 추가 로그나 오류 메시지를 분석하는 것입니다. 오류 로그의 끝부분이나 ‘hs_err_pid13.log’ 파일에 기록된 내용을 추가로 제공해 주신다면, 더 구체적인 진단이 가능할 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
일단 옵션을 꺼보면(오타 문제, 환경변수 명령어 문제는 아닌거 같습니다.) JVM에서 옵션이 인식이 안된다고 실행이 안되버리는거 같네요..
다른 버전도 질문의 오류가 반복됩니다. (3.7.0 3.8.1 3.9.0)
이런 것들을 처음 접해봐서 아예 해결의 실마리를 모르겠네요.. 뭘 시도해봐야하는건지..
hs_err_pid13.log 이 로그 파일을 열어보는 방법이 뭔지 알 수 있을까요..?