Conky가 내 PC를 모니터링할 수 있다는 것을 알고 있지만 내 네트워크의 다른 Linux 서버도 모니터링할 수 있나요? CPU 및 메모리 사용량과 각 서버에서 사용하는 일부 주요 프로세스에 대한 데이터를 보고 싶습니다. 예를 들어, 한 서버가 MySQL 서버이므로 이 서버의 CPU 및 메모리 사용량, mysqld 프로세스가 소비하는 리소스 수, 네트워크 소비량을 표시하고 싶습니다. 다른 서버의 경우 목적에 따라 일부 추가 정보가 표시되어야 합니다.
답변1
내부에서 직접 이 작업을 수행할 수 있는 방법이 있는지 잘 모르겠습니다 conky
. 이전에 비슷한 상황이 발생하여 SSH를 통해 해결했습니다. 기본적으로 비밀번호 없는 SSH 로그인을 사용하여 권한이 없는 사용자 계정을 설정한 후 다음을 수행합니다.
${execi 1 ssh dummy_user@server_name <monitoring_command>}
"1"은 출력이 매초 업데이트됨을 의미합니다. 이를 원하는 적절한 업데이트 간격과 사용하려는 모니터링 명령으로 바꿔야 합니다.
답변2
나는 이 목적을 위해 다음과 같은 프로그램을 작성했습니다.콘케. 웹 기반 conky의 약자입니다.
conky와 마찬가지로 이 프로그램은 시스템의 많은 중요한 정보는 물론 다양한 콘텐츠(주식, 날씨 등)를 모니터링할 수 있으며 모든 데이터가 포함된 REST API를 공개합니다. 또한 Windows 또는 MacOS 컴퓨터를 모니터링할 수도 있습니다.
모든 브라우저(아주 오래된 브라우저 포함)에서 콘텐츠를 표시할 수 있는 HTML UI도 있습니다. 우리의 목표는 우리가 가지고 있는 오래된 아이패드/태블릿의 용도를 찾는 것입니다. 화면 옆에 배치하고 거기에 표시기를 표시할 수 있습니다. 홈 화면에서 실제로 작업할 수 있는 더 많은 공간!
그러나 UI와 API 간의 네트워크 기반 통신을 사용하면 다른 컴퓨터를 모니터링하는 것이 매우 쉽습니다. 실제로 메시 네트워크를 구축하고 동일한 UI에서 다양한 시스템의 메트릭을 얻을 수 있습니다.
아직 개발중이지만 6개월 정도 꾸준히 사용하고 있어서 꽤 잘 작동하고 있습니다.
답변3
원격 컴퓨터의 성능 통계를 쿼리하는 전통적인 방법은 적절한 메시지를 보내는 것입니다.간단한 네트워크 관리 프로토콜묻다.
서버에 snmpd를 설정하면 모든 종류의 관리 데이터를 추출할 수 있습니다.
답변4
다음을 수행할 수 있습니다.
${execi1 sshpass -p <yourpasssword> ssh dummy_user@server_name <monitoring_command>}