Skip to main content

Nvitop-based GPU monitoring agent for multi-server environments

Project description

Nvitop Multi-Server Monitor

다중 서버의 GPU 상태를 nvitop으로 모니터링하는 웹 기반 시스템입니다.

기능

  • 각 서버에서 nvitop 데이터 실시간 수집
  • 중앙 서버로 데이터 전송
  • 웹 대시보드에서 모든 서버의 GPU 상태 확인
  • 통계 및 사용자 정보 표시
  • 관리자 페이지에서 사용자 이름 수동 지정
  • WebSocket을 통한 실시간 업데이트

설치

cd nvitop-monitor
pip install -r requirements.txt

사용법

1. 중앙 서버 실행

# 백그라운드로 실행 (nohup 사용)
./start_server.sh

# 로그 확인
tail -f server.log

# 서버 중지
./stop_server.sh

기본적으로 http://localhost:5000에서 실행됩니다.

같은 네트워크의 다른 기기에서 접속: 서버 시작 시 표시되는 네트워크 IP 주소를 사용하세요. 예: http://141.223.24.72:5000

자세한 내용은 NETWORK_ACCESS.md를 참조하세요.

2. 각 서버에서 에이전트 실행

각 모니터링할 서버에서 다음 명령을 실행하세요:

# 백그라운드로 실행 (nohup 사용)
./start_agent.sh 서버이름 http://중앙서버주소:5000
# 예제:
./start_agent.sh server1 http://141.223.24.72:5000

# 로그 확인
tail -f agent_server1.log

# 에이전트 중지
./stop_agent.sh server1

자세한 에이전트 설정 방법은 AGENT_SETUP.md를 참조하세요.

3. 관리자 페이지에서 사용자 이름 지정

  1. http://localhost:5000/admin 접속
  2. 각 서버에 대해 사용자 이름 입력
  3. 저장 버튼 클릭

데이터 수집 방식

에이전트는 다음 순서로 GPU 데이터를 수집합니다:

  1. nvitop Python API (우선)
  2. pynvml (fallback)
  3. nvidia-smi (최종 fallback)

프로젝트 구조

nvitop-monitor/
├── agent/           # 에이전트 (각 서버에서 실행)
│   └── agent.py
├── server/          # 중앙 서버
│   ├── app.py       # Flask 서버
│   └── models.py    # 데이터베이스 모델
├── web/             # 웹 인터페이스
│   ├── templates/   # HTML 템플릿
│   └── static/      # CSS, JS
├── config/          # 설정 파일
└── data/            # 데이터베이스 (자동 생성)

요구사항

  • Python 3.7+
  • nvitop 또는 nvidia-smi
  • 각 서버에서 중앙 서버로 네트워크 접근 가능

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wcml_agent-1.0.0.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wcml_agent-1.0.0-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file wcml_agent-1.0.0.tar.gz.

File metadata

  • Download URL: wcml_agent-1.0.0.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for wcml_agent-1.0.0.tar.gz
Algorithm Hash digest
SHA256 82d517db1c2117da367f0c2f88bff3a3caecead2058c6cc0859c35ef83505595
MD5 b548d37143da14df7a2e9d202c23221e
BLAKE2b-256 1d7032327a020812b7e5b08323650a364efd88ac815b02317a032c4462df78eb

See more details on using hashes here.

File details

Details for the file wcml_agent-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: wcml_agent-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for wcml_agent-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0362211a895672a9a4567ec8bd72f0acaea9c95a046676f4a59c64a9dd40272b
MD5 4f6ec4cd910d29fa19ef0be7141b1cb3
BLAKE2b-256 cf3e227283c82740e1b720b270d5dfda7d266b5c825b5f88571d3dd589ef246d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page