fix(beszel): Mise à jour chemins d'installation
- Synology NAS: /volume1/docker/beszel - EffiServer: ~/effi/beszel - FolzoCorp: chemin projet Effi (inchangé)
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
# Beszel Agent - EffiServer (192.168.1.27)
|
||||
# Agent pour monitoring EffiServer (Intel J5040)
|
||||
# Emplacement: ~/effi/beszel sur Fedora
|
||||
|
||||
services:
|
||||
beszel-agent:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# Beszel Hub - Synology NAS
|
||||
# Monitoring central pour FolzoCorp et EffiServer
|
||||
# Emplacement: /volume1/docker/beszel
|
||||
|
||||
services:
|
||||
beszel:
|
||||
|
||||
+149
-116
@@ -9,6 +9,7 @@ Beszel est un système de monitoring léger pour serveurs avec historique, stats
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ NAS Synology (192.168.1.25) │
|
||||
│ Emplacement: /volume1/docker/beszel │
|
||||
│ Beszel Hub │
|
||||
│ Port: 8090 │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
@@ -17,6 +18,7 @@ Beszel est un système de monitoring léger pour serveurs avec historique, stats
|
||||
▼ ▼
|
||||
┌─────────────────────────────┐ ┌─────────────────────────────┐
|
||||
│ FolzoCorp (192.168.1.11) │ │ EffiServer (192.168.1.27) │
|
||||
│ (dans projet Effi) │ │ Emplacement: ~/effi/beszel │
|
||||
│ Agent Beszel │ │ Agent Beszel │
|
||||
│ GPU: AMD RX 7800 XT │ │ CPU: Intel J5040 │
|
||||
│ RAM: 32GB │ │ RAM: 8GB │
|
||||
@@ -27,11 +29,12 @@ Beszel est un système de monitoring léger pour serveurs avec historique, stats
|
||||
|
||||
## 1. Installation Hub - NAS Synology (192.168.1.25)
|
||||
|
||||
### Étape 1: Copier les fichiers
|
||||
### Étape 1: Créer le répertoire et copier les fichiers
|
||||
|
||||
```bash
|
||||
# Sur le NAS Synology (via SSH)
|
||||
mkdir -p ~/beszel && cd ~/beszel
|
||||
mkdir -p /volume1/docker/beszel
|
||||
cd /volume1/docker/beszel
|
||||
|
||||
# Copier le fichier docker-compose depuis FolzoCorp
|
||||
scp folzo@192.168.1.11:~/Documents/OpenCode/Projets/Effi/beszel/docker-compose-hub.yml ./
|
||||
@@ -40,7 +43,7 @@ scp folzo@192.168.1.11:~/Documents/OpenCode/Projets/Effi/beszel/docker-compose-h
|
||||
### Étape 2: Démarrer le Hub
|
||||
|
||||
```bash
|
||||
cd ~/beszel
|
||||
cd /volume1/docker/beszel
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
@@ -54,22 +57,59 @@ docker compose up -d
|
||||
|
||||
## 2. Installation Agent - FolzoCorp (192.168.1.11)
|
||||
|
||||
### Étape 1: Préparer le répertoire
|
||||
L'agent Beszel pour FolzoCorp est déjà inclus dans le projet Effi.
|
||||
|
||||
```bash
|
||||
mkdir -p ~/beszel-agent && cd ~/beszel-agent
|
||||
### Emplacement
|
||||
|
||||
```
|
||||
/home/folzo/Documents/OpenCode/Projets/Effi/beszel/
|
||||
```
|
||||
|
||||
### Étape 2: Copier la configuration
|
||||
### Étape 1: Démarrer l'agent
|
||||
|
||||
Le fichier `docker-compose-agent-folzocorp.yml` est dans le projet Effi:
|
||||
```bash
|
||||
cp ~/Documents/OpenCode/Projets/Effi/beszel/docker-compose-agent-folzocorp.yml ./
|
||||
cd /home/folzo/Documents/OpenCode/Projets/Effi/beszel
|
||||
cp docker-compose-agent-folzocorp.yml docker-compose.yml
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Étape 3: Démarrer l'agent
|
||||
### Étape 2: Récupérer TOKEN et KEY
|
||||
|
||||
Après le premier démarrage, l'agent génère un TOKEN et KEY uniques.
|
||||
|
||||
```bash
|
||||
# Voir les logs pour récupérer les identifiants
|
||||
docker logs beszel-agent
|
||||
```
|
||||
|
||||
Chercher les lignes типа:
|
||||
```
|
||||
agent listening on /var/run/beszel-agent/beszel.sock
|
||||
hub: http://192.168.1.25:8090
|
||||
token: <TOKEN_AFFICHE>
|
||||
key: <KEY_AFFICHE>
|
||||
```
|
||||
|
||||
### Étape 3: Mettre à jour docker-compose avec TOKEN et KEY
|
||||
|
||||
```bash
|
||||
# Arrêter l'agent
|
||||
docker compose down
|
||||
|
||||
# Éditer docker-compose.yml et remplacer TOKEN et KEY
|
||||
nano docker-compose.yml
|
||||
```
|
||||
|
||||
Modifier:
|
||||
```yaml
|
||||
environment:
|
||||
HUB_URL: http://192.168.1.25:8090
|
||||
TOKEN: <TOKEN>
|
||||
KEY: "<KEY>"
|
||||
```
|
||||
|
||||
```bash
|
||||
# Redémarrer
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
@@ -79,66 +119,92 @@ docker compose up -d
|
||||
2. Cliquer **Add System**
|
||||
3. Choisir **Socket** comme type
|
||||
4. Utiliser le chemin: `/var/run/beszel-agent/beszel.sock`
|
||||
5. Récupérer le TOKEN et KEY affichés
|
||||
|
||||
### Étape 5: Configurer TOKEN et KEY
|
||||
|
||||
```bash
|
||||
# Arrêter l'agent
|
||||
docker compose down
|
||||
|
||||
# Éditer docker-compose.yml et ajouter TOKEN et KEY
|
||||
nano docker-compose.yml
|
||||
|
||||
# Redémarrer
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Vérification GPU
|
||||
|
||||
```bash
|
||||
# Vérifier que le monitoring GPU fonctionne
|
||||
docker exec beszel-agent beszel-agent status
|
||||
|
||||
# Ou vérifier les logs
|
||||
docker logs beszel-agent | grep -i gpu
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. Installation Agent - EffiServer (192.168.1.27)
|
||||
|
||||
### Emplacement
|
||||
|
||||
```
|
||||
/home/effi/effi/beszel/
|
||||
```
|
||||
|
||||
### Étape 1: Se connecter en SSH
|
||||
|
||||
```bash
|
||||
ssh effi@192.168.1.27
|
||||
```
|
||||
|
||||
### Étape 2: Préparer le répertoire
|
||||
|
||||
```bash
|
||||
mkdir -p ~/beszel-agent && cd ~/beszel-agent
|
||||
```
|
||||
|
||||
### Étape 3: Copier la configuration
|
||||
### Étape 2: Créer le répertoire et copier la configuration
|
||||
|
||||
```bash
|
||||
mkdir -p ~/effi/beszel && cd ~/effi/beszel
|
||||
scp folzo@192.168.1.11:~/Documents/OpenCode/Projets/Effi/beszel/docker-compose-agent-effiserver.yml ./
|
||||
mv docker-compose-agent-effiserver.yml docker-compose.yml
|
||||
```
|
||||
|
||||
### Étape 4: Démarrer l'agent
|
||||
### Étape 3: Démarrer l'agent
|
||||
|
||||
```bash
|
||||
cd ~/effi/beszel
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Étape 5: Ajouter dans Beszel UI
|
||||
### Étape 4: Récupérer TOKEN et KEY
|
||||
|
||||
Même procédure que FolzoCorp, mais utiliser `/var/run/beszel-agent/beszel.sock`
|
||||
```bash
|
||||
docker logs beszel-agent
|
||||
```
|
||||
|
||||
### Étape 5: Configurer TOKEN et KEY
|
||||
|
||||
```bash
|
||||
docker compose down
|
||||
nano docker-compose.yml
|
||||
# Ajouter TOKEN et KEY
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
### Étape 6: Ajouter dans Beszel UI
|
||||
|
||||
Même procédure que FolzoCorp, utiliser `/var/run/beszel-agent/beszel.sock`
|
||||
|
||||
---
|
||||
|
||||
## 4. Endpoints API Beszel
|
||||
## 4. Commandes rapides
|
||||
|
||||
### FolzoCorp
|
||||
|
||||
```bash
|
||||
# Démarrer
|
||||
cd /home/folzo/Documents/OpenCode/Projets/Effi/beszel
|
||||
docker compose up -d
|
||||
|
||||
# Voir les logs
|
||||
docker logs -f beszel-agent
|
||||
|
||||
# Arrêter
|
||||
docker compose down
|
||||
```
|
||||
|
||||
### EffiServer
|
||||
|
||||
```bash
|
||||
# Démarrer
|
||||
cd ~/effi/beszel
|
||||
docker compose up -d
|
||||
|
||||
# Voir les logs
|
||||
docker logs -f beszel-agent
|
||||
|
||||
# Arrêter
|
||||
docker compose down
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. Endpoints API Beszel
|
||||
|
||||
Beszel expose une API REST pour qu'Effi puisse récupérer les métriques.
|
||||
|
||||
@@ -159,7 +225,7 @@ curl http://192.168.1.25:8090/api/systems \
|
||||
-H "Authorization: Bearer <token>"
|
||||
|
||||
# Stats détaillées d'un système
|
||||
curl http://192.168.1.25:8090/api/systems/<system_id>/stats \
|
||||
curl http://192.168.168.1.25:8090/api/systems/<system_id>/stats \
|
||||
-H "Authorization: Bearer <token>"
|
||||
```
|
||||
|
||||
@@ -194,65 +260,58 @@ curl http://192.168.1.25:8090/api/systems/<system_id>/stats \
|
||||
|
||||
---
|
||||
|
||||
## 5. Scripts Effi pour interroger Beszel
|
||||
## 6. Script Effi pour interroger Beszel
|
||||
|
||||
### Script Python pour récupérer les stats
|
||||
Le script `scripts/beszel_client.py` permet à Effi de récupérer les métriques.
|
||||
|
||||
```python
|
||||
import requests
|
||||
import os
|
||||
### Utilisation
|
||||
|
||||
BESZEL_URL = "http://192.168.1.25:8090"
|
||||
USERNAME = os.getenv("BESZEL_USER", "admin")
|
||||
PASSWORD = os.getenv("BESZEL_PASSWORD", "")
|
||||
```bash
|
||||
# Lister les systèmes
|
||||
python3 scripts/beszel_client.py --list-systems
|
||||
|
||||
def get_beszel_token():
|
||||
response = requests.post(f"{BESZEL_URL}/api/auth/login", json={
|
||||
"identity": USERNAME,
|
||||
"password": PASSWORD
|
||||
})
|
||||
return response.json().get("token")
|
||||
# Stats d'un système
|
||||
python3 scripts/beszel_client.py --system folzocorp --check stats
|
||||
|
||||
def get_system_stats(system_id, token):
|
||||
headers = {"Authorization": f"Bearer {token}"}
|
||||
response = requests.get(f"{BESZEL_URL}/api/systems/{system_id}/stats", headers=headers)
|
||||
return response.json()
|
||||
# Vérifier les alertes
|
||||
python3 scripts/beszel_client.py --system folzocorp --check alerts
|
||||
|
||||
def check_resource_usage():
|
||||
token = get_beszel_token()
|
||||
# Output JSON
|
||||
python3 scripts/beszel_client.py --system folzocorp --check stats --json
|
||||
```
|
||||
|
||||
# FolzoCorp
|
||||
folzo_stats = get_system_stats("folzocorp", token)
|
||||
if folzo_stats["memory"]["used_percent"] > 90:
|
||||
print("⚠️ FolzoCorp RAM > 90%")
|
||||
### Variables d'environnement
|
||||
|
||||
# EffiServer
|
||||
effi_stats = get_system_stats("effiserver", token)
|
||||
if effi_stats["cpu"] > 80:
|
||||
print("⚠️ EffiServer CPU > 80%")
|
||||
```bash
|
||||
export BESZEL_URL=http://192.168.1.25:8090
|
||||
export BESZEL_USER=admin
|
||||
export BESZEL_PASSWORD=votre_password
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. Alertes
|
||||
## 7. Alertes recommandées
|
||||
|
||||
### Configurer des alertes dans Beszel UI
|
||||
### FolzoCorp
|
||||
|
||||
1. Ouvrir http://192.168.1.25:8090
|
||||
2. Cliquer sur un système → **Edit**
|
||||
3. Aller dans **Alerts** tab
|
||||
4. Configurer les alertes souhaitées:
|
||||
| Métrique | Warning | Critical |
|
||||
|----------|---------|----------|
|
||||
| CPU | 70% | 90% |
|
||||
| RAM | 80% | 95% |
|
||||
| VRAM | 75% | 90% |
|
||||
| GPU Utilization | 80% | 95% |
|
||||
|
||||
| Métrique | Seuil Warning | Seuil Critical |
|
||||
|----------|---------------|----------------|
|
||||
### EffiServer
|
||||
|
||||
| Métrique | Warning | Critical |
|
||||
|----------|---------|----------|
|
||||
| CPU | 70% | 90% |
|
||||
| RAM | 80% | 95% |
|
||||
| VRAM | 80% | 95% |
|
||||
| Disk | 80% | 90% |
|
||||
|
||||
---
|
||||
|
||||
## 7. Dépannage
|
||||
## Dépannage
|
||||
|
||||
### Agent ne démarre pas
|
||||
|
||||
@@ -264,17 +323,6 @@ docker logs beszel-agent
|
||||
curl http://192.168.1.25:8090/health
|
||||
```
|
||||
|
||||
### GPU non détecté sur FolzoCorp
|
||||
|
||||
```bash
|
||||
# Vérifier les permissions GPU
|
||||
ls -la /dev/kfd
|
||||
ls -la /dev/dri/
|
||||
|
||||
# Tester rocm-smi manuellement
|
||||
rocm-smi --showmeminfo vram
|
||||
```
|
||||
|
||||
### Socket non accessible
|
||||
|
||||
```bash
|
||||
@@ -287,28 +335,13 @@ docker restart beszel-agent
|
||||
|
||||
---
|
||||
|
||||
## Fichiers de configuration
|
||||
## Résumé emplacements
|
||||
|
||||
| Fichier | Emplacement | Description |
|
||||
|---------|-------------|-------------|
|
||||
| `docker-compose-hub.yml` | Synology NAS | Configuration Hub |
|
||||
| `docker-compose-agent-folzocorp.yml` | FolzoCorp | Agent FolzoCorp avec GPU AMD |
|
||||
| `docker-compose-agent-effiserver.yml` | EffiServer | Agent EffiServer (CPU only) |
|
||||
|
||||
---
|
||||
|
||||
## Monitoring GPU
|
||||
|
||||
### FolzoCorp (AMD RX 7800 XT)
|
||||
|
||||
- Utilise `amd_sysfs` collector (recommandé)
|
||||
- Métriques: VRAM, utilisation GPU, power draw
|
||||
- Pas besoin de `rocm-smi` (amd_sysfs plus efficace)
|
||||
|
||||
### EffiServer (Intel J5040)
|
||||
|
||||
- GPU monitoring désactivé (`SKIP_GPU=true`)
|
||||
- J5040 n'a pas de GPU dédié
|
||||
| Système | Emplacement | Configuration |
|
||||
|---------|-------------|---------------|
|
||||
| Synology NAS | `/volume1/docker/beszel` | docker-compose-hub.yml |
|
||||
| FolzoCorp | `/home/folzo/Documents/OpenCode/Projets/Effi/beszel` | docker-compose-agent-folzocorp.yml |
|
||||
| EffiServer | `/home/effi/effi/beszel` | docker-compose-agent-effiserver.yml |
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user