Monitor servers and clusters
A collector sends the state of a server or a cluster to VibeMon every minute or sooner. It sends summaries only, not logs.
| Target | VibeMon shows |
|---|---|
| Linux server or DGX Spark | CPU, memory, GPU, and disk |
| Kubernetes cluster | Ready nodes, unhealthy pods, CPU, and memory |
Install one collector per host or cluster. Host collectors measure that host; a cluster collector summarizes the cluster. Installing a viewer on your laptop does not start collection on a remote server.
Linux server or DGX Spark
You need Linux with systemd and Python 3.10 or later. The server needs outbound HTTPS access to download the collector and send reports to vibemon.io. No inbound server port is needed. On Debian or Ubuntu, install python3-venv first: sudo apt install python3-venv.
On the server, run:
curl -fsSL https://vibemon.io/install/install.py | python3 - --collectorApprove the code that the installer shows. See Sign in.
Open Resources with the same VibeMon account. Allow about a minute, open the server card, and check that CPU, memory, and the report time update.
The installer enables root-disk measurements. These describe /, not every mounted disk. GPU values require a supported NVIDIA GPU and a working nvidia-smi; otherwise they show —. DGX Spark uses unified memory when detected.
- If you run the installer as root, the collector runs as a system service.
- If you run it as another user, the collector runs as your user service. To keep it running after you log out, run
sudo loginctl enable-linger $USER.
For the usual installation as your own user, check on the server:
systemctl --user status vibemon-collector --no-pager
journalctl --user -u vibemon-collector -n 30 --no-pager
For an installation performed as root, use sudo systemctl status vibemon-collector --no-pager and sudo journalctl -u vibemon-collector -n 30 --no-pager. active (running) confirms the process; the advancing report time on Web confirms delivery. If the user service cannot connect to a user bus, run the installer in a normal login session for that user or ask the server administrator to install a system service.
Kubernetes cluster
Run the installer on a computer with Python 3 and kubectl. Your Kubernetes identity must be allowed to create a namespace, service account, Secret, Deployment, ClusterRole, and ClusterRoleBinding. Ask the cluster administrator if you do not have those permissions. The installed collector itself only reads cluster information.
Before installing, confirm the target:
kubectl config current-context
kubectl get nodes
Use the intended cluster context. For CPU and memory, the cluster needs metrics-server. Without it, VibeMon shows only nodes and pods.
On a computer with
kubectl, run:curl -fsSL https://vibemon.io/install/install.py | python3 - --kubernetesApprove the code that the installer shows.
The installer creates the vibemon namespace and a collector with read-only cluster permissions. It waits up to 180 seconds for readiness, which requires an accepted Web report. The cluster must be able to pull the collector image and reach vibemon.io over HTTPS.
- Check the deployment, then open Resources and confirm the cluster name and advancing report time:
kubectl -n vibemon rollout status deployment/vibemon-collector --timeout=180s
kubectl -n vibemon get pods
kubectl -n vibemon logs deployment/vibemon-collector --tail=30
The default cluster installation does not collect disk measurements. Cluster disk collection needs additional kubelet access; an administrator can follow the collector reference.
Choose the name
VibeMon uses the host name or the kubectl context name. To use another name, add --name:
curl -fsSL https://vibemon.io/install/install.py | python3 - --collector --name "Build server"
Choose a different name for each host or cluster. Keep the same --name, operating-system user, and kubectl context when updating or signing in again: the installer derives the resource identity from the name. Changing it can create another card and leave the old one stale.
To update, rerun the original install command. It keeps the saved token unless you add --login. To change only the displayed name, edit it on the dashboard. See Edit a resource.
Remove a collector
Run the install command with --uninstall. For a host, use the same operating-system user and root/user mode as the installation. It stops the owned service before removing its files; if stopping fails, the files remain. For a cluster, confirm the same kubectl context first. It removes only installer-managed collector objects and keeps the vibemon namespace and unrelated resources.
curl -fsSL https://vibemon.io/install/install.py | python3 - --collector --uninstall
curl -fsSL https://vibemon.io/install/install.py | python3 - --kubernetes --uninstall
Then delete its token in Account & tokens. To remove the resource from the dashboard, see Remove a resource.
Monitor something else
To monitor a service, a device, or another resource, open Add resource and define its metrics. This page creates a request template; it does not install a collector, contact the service, or create a live card. A program that you write must send current measurements repeatedly. The card appears after the first accepted report. The program needs a write token from Account & tokens. Developers can find the format in Send your own data.