◉ Pulse
zhangye11235 avatar
#48 today

zhangye11235/multi_server_monitor

Python Tool

使用网页监控多台服务器的占用情况

Created Jul 25, 2026
Stars
8
Today
+8
Forks
0
Quality
75/100
Momentum
16

README

Fetched from GitHub on Oct 30, 2026, 11:02 PM UTC · README.md

View original on GitHub

Third-party content — Open Source Pulse is not the owner of this repository.

This README belongs to zhangye11235/multi_server_monitor and its contributors. We fetch it directly from the project’s public GitHub repository and display it for reference only. All text, code, images and trademarks remain the property of their respective authors. See the repository for its license terms. Copyright / takedown policy.

Multi Server Monitor

A small Slurm-oriented dashboard for monitoring multiple Linux servers through SSH.

中文说明见 README_zh.md.

It shows:

  • Slurm CPU allocation and running/pending jobs by user
  • Real CPU and memory usage from /proc
  • Disk I/O latency from iostat
  • D-state process counts by user
  • Recent 30-day core-hour usage from Slurm accounting, cached in the server process

Screenshot

Actual dashboard usage

Requirements

On the machine running the dashboard:

  • Python 3.8+
  • SSH access to the monitored servers

On monitored servers:

  • Slurm commands: squeue, sinfo
  • Optional Slurm accounting: sacct
  • Optional job memory command: sstat
  • Optional disk latency command: iostat

Configure Servers

Copy the example config:

cp config.example.json config.json

Edit config.json:

{
  "default_hosts": ["local", "server1"],
  "local_hosts": ["local", "localhost"],
  "hosts": {
    "server1": {
      "display_name": "server1",
      "hostname": "server1.example.edu",
      "port": 22,
      "user": "your_ssh_user",
      "reserved_idle_cores": 0,
      "cpu_divisor": 1,
      "disk_allowlist": [],
      "disk_status_util_only": false,
      "web_url": ""
    }
  }
}

Field meanings:

  • default_hosts: hosts shown in the dashboard input by default.
  • local_hosts: host names that should be checked locally instead of through SSH.
  • hostname, port, user: SSH connection settings.
  • display_name: optional display name in the dashboard.
  • reserved_idle_cores: mark the server full only when this many cores remain idle.
  • cpu_divisor: use 2 when Slurm reports hyperthreads but you want physical-core units.
  • disk_allowlist: only show these disks for that host, for example ["sda"].
  • disk_status_util_only: ignore latency thresholds and judge disk status only by %util.
  • web_url: optional URL shown below the host address.

You can also point to another config file:

MULTI_SERVER_MONITOR_CONFIG=/path/to/config.json python scripts/serve_squeue_usage_test.py

Run

python scripts/serve_squeue_usage_test.py --host 0.0.0.0 --port 7878

Then open:

http://SERVER_IP:7878/

Check From CLI

python scripts/check_squeue_usage_test.py --hosts local server1
python scripts/check_squeue_usage_test.py --json

Private Files

config.json, cache files, logs, backup files, and Python bytecode are ignored by Git.

Rendered by GitHub from the repository’s README. Scroll to read the full file.
First trending

Jul 25, 2026

first spotted on the list

Best rank

#48

highest position reached

Appearances

1

times on the trending list

Quality score

75

out of 100

Momentum

16

trend strength indicator

Star velocity

0.08

stars per day since creation

Activity — last 60 days

daily counts, collected every 6 hours
  • Stars
  • Forks
  • Merged PRs
  • Issues
  • Closed issues

Collecting activity data since launch — check back in a few days.

Star history

total stars per snapshot

Not enough snapshots yet — check back soon.

Rank history

position on trending · lower is better

Not enough snapshots yet — check back soon.

3D card for your website

Live HTML card with a glass surface and pointer tilt. Paste the iframe on any website.

<iframe src="https://www.notionpulse.cc/embed/zhangye11235/multi_server_monitor" width="420" height="240" style="border:0;max-width:100%;background:transparent" loading="lazy" title="zhangye11235/multi_server_monitor — trending on Open Source Pulse"></iframe>

Stars badge

Show current stars in your README or profile. Auto-updates every 6 hours.

zhangye11235/multi_server_monitor stars badge
Markdown
[![zhangye11235/multi_server_monitor](https://www.notionpulse.cc/api/badge/zhangye11235/multi_server_monitor.svg)](https://www.notionpulse.cc/repo/zhangye11235/multi_server_monitor)
HTML
<a href="https://www.notionpulse.cc/repo/zhangye11235/multi_server_monitor"><img src="https://www.notionpulse.cc/api/badge/zhangye11235/multi_server_monitor.svg" alt="zhangye11235/multi_server_monitor stars badge" /></a>

Repository of the Day

#48 Repository of the Day

Repository of the Week

#48 Repository of the Week

Repository of the Month

#48 Repository of the Month