매우 혼란스럽고 Google이 실제로 도움을 주지 않습니다. 또한 저는 Linux 초보자입니다. 나는 몇 가지 과정을 수강했지만 모두 기본 Linux 설정에서 구성하는 방법에 관한 것이었습니다. 이제 실제 사용에 맞게 설정하는 방법을 배우려고 합니다. 직장에서는 Nagios/Thruk를 사용하므로 더 잘 배울 수 있도록 홈 네트워크에 설정하려고 합니다.
CentOS 6.6 시스템을 설정했습니다. Nagios를 설치했는데 잘 작동합니다. 이제 Thruk를 설정하려고 합니다. livestatus와 Thruk를 성공적으로 설치했지만 실제로 작동하게 하는 데 어려움을 겪었습니다. 문서에는 다음 두 줄을 파일에 추가해야 한다고 명시되어 있습니다 /usr/local/nagios/etc/nagios.cfg
.
broker_module=/usr/local/lib/mk-livestatus/livestatus.o /var/lib/nagios/rw/live
event_broker_options=-1
event_broker_options=-1 줄이 이미 존재하므로 그 위에 다른 줄을 추가했습니다. 일부 예에서는 다음과 같이 나타납니다.
broker_module=/usr/local/lib/mk-livestatus/livestatus.o /tmp/live.sock
event_broker_options=-1
두 가지를 모두 시도했지만 제대로 작동하지 않는 것 같습니다. 제가 생각할 수 있는 기본 사항은 모두 다 해봤습니다. 모든 구성 요소(nagios, livestatus, thruk)를 다시 설치하고 업데이트했으며 모든 관련 서비스를 수십억 번 다시 로드하고 다시 시작했습니다. 내가 추가한 라인이 거기에 있을 때 시작하라고 하면 Nagios가 시작되지만 즉시 중지됩니다. 해당 파일에 들어가면 /usr/local/nagios/var/nagios.log
Nagios를 시작하려고 시도했지만 실패할 때마다 다음 줄이 표시됩니다.
Error: Could not load module '/usr/local/lib/mk-livestatus/livestatus.o' -> /usr/local/lib/mk-livestatus/livestatus.o: undefined symbol: last_command_check
Error: Failde to load module '/usr/local/lib/mk-livestatus/livestatus.o' .
Error: Module loading failed. Aborting.
nagios.cfg
파일에 추가한 줄을 주석 처리하면 Nagios가 로드되어 제대로 작동하지만 Thruk는 여전히 작동하지 않습니다. Thruk 페이지를 로드하면 다음과 같은 결과가 나타납니다.
No Backend available
None of the configured Backends could be reached, please have a look at the logfile for detailed information and make sure the core is up and running.
Details:
home-net: ERROR: failed to open socket /tmp/live.sock: No such file or directory (/tmp/live.sock)
제가 보기에는 livestatus에 뭔가 문제가 있는 것 같습니다. 하지만 제가 직접 고칠 만큼 잘 이해하지 못하고, 어디에서나 답을 찾는(또는 아마도 이해하는) 데 어려움을 겪고 있습니다. 제가 이해한 바로는 해당 nagios.cfg
파일이 live.sock 파일을 구성해야 한다고 생각합니다 . 이게 맞지 않나요? 최선을 다하고 있지만 도움이 필요합니다.
답변1
Nagios 4.X를 사용하는 경우 Nagios 4.X와 호환되도록 하는 옵션을 사용하여 소스에서 livestatus를 설치해야 합니다 ->https://mathias-kettner.de/checkmk_livestatus.html 그렇지 않으면 Nagios가 시작 중에 소켓을 생성하지 못하고 충돌이 발생합니다. 나는 당신과 똑같은 구성을 사용하고 있지만 여전히 다음 단계, 즉 thruk가 소켓을 읽도록 하는 단계를 차단합니다. 관리할 수 있는 경우 세부정보를 제공해 주세요.