forgium-website/Idées/01_INFRASTRUCTURE_SYSTEME/architecture_systeme.md

76 lines
4.2 KiB
Markdown

# 01 - INFRASTRUCTURE SYSTÈME & DIMENSIONNEMENT TECHNIQUE
## 1. Cartographie Détaillée des Composants
### Processeur (CPU)
- **Modèle** : AMD Ryzen 7 3700X
- **Cœurs / Threads** : 8 cœurs physiques / 16 threads logiques
- **Fréquences** : Base 3.6 GHz / Boost 4.4 GHz
- **Cache L3** : 32 Mo (excellent pour la réactivité de multiples petits processus)
- **Politique de surallocation (vCPU)** :
- Ratio conservateur recommandé au lancement : `1:2` (jusqu'à 32 vCPU distribués).
- Chaque bot Discord léger consomme en moyenne entre `0.1` et `0.5 vCPU`.
- Capacité théorique initiale : ~30 à 50 bots Discord simultanés sans saturation.
### Mémoire Vive (RAM) — 20 Go Asymétrique
- **Composition physique** : `2 x 8 Go` + `1 x 4 Go`
- **Topologie des Slots Carte Mère** :
- Slot A2 (Canal A) : Barrette 8 Go
- Slot B2 (Canal B) : Barrette 8 Go
- Slot A1 ou B1 : Barrette 4 Go
- *Fonctionnement Flex Dual-Channel* : Les 16 premiers Go fonctionnent à 100% de la bande passante mémoire (Dual-Channel 128-bit). Les 4 Go restants fonctionnent en Single-Channel (64-bit).
- **Budget d'Allocation Mémoire (20 Go)** :
- **Proxmox VE (OS hôte)** : 2 Go réservés.
- **Reverse Proxy + Sécurité (LXC)** : 512 Mo à 1 Go.
- **Base de données commune & Redis (LXC)** : 1.5 Go.
- **Pterodactyl Panel + Paymenter (LXC)** : 1 Go.
- **Wings (Allocation dynamique pour les clients)** : ~14 Go disponibles.
- *Exemple de capacité bots* : À 512 Mo par bot, cela permet d'héberger **28 bots Discord en parallèle** avec confort absolu !
---
## 2. Organisation du Stockage & I/O
### SSD 1 To (Le Cœur Réactif)
- **Système de fichiers recommandé** : `ext4` avec LVM-Thin OU `ZFS single-disk` (si l'on veut les snapshots instantanés natifs, avec cache ARC plafonné à 2 Go de RAM).
- **Découpage logique** :
- `/` (OS Proxmox) : 60 Go
- `data-pool` (Stockage LXC/VMs, conteneurs Pterodactyl Wings, volumes MySQL) : ~900 Go
### Disques durs magnétiques internes
- **HDD 500 Go interne** :
- Montage sur Proxmox sous `/mnt/hdd-storage`
- Utilisation : Stockage persistant lourd, Nextcloud data (photos, fichiers clients), images ISO Proxmox.
- **HDD 80 Go interne** :
- Montage sous `/mnt/scratch`
- Utilisation : Dépôt temporaire de décompression, dumps SQL journaliers avant envoi sur backup externe, logs bruts.
### Disque dur externe & Clé USB
- **HDD 500 Go Externe USB** :
- Formaté en `ext4` et dédié exclusivement aux sauvegardes Proxmox (`vzdump` ou Proxmox Backup Server local).
- Tâche cron de sauvegarde planifiée chaque nuit à 03h30.
- **Clé USB 28 Go** :
- Partition 1 : Clé d'installation Proxmox VE 8 prête à l'emploi.
- Partition 2 (ou 2e clé) : Archive chiffrée hors-ligne contenant le fichier de configuration réseau (`/etc/network/interfaces`), clés SSH privées, mot de passe root et tokens d'API.
---
## 3. Gestion Électrique & Onduleur (UPS)
- **Onduleur connecté** : Modèle compact permettant ~15 minutes d'autonomie.
- **Protocole d'arrêt propre (Graceful Shutdown)** :
- Relier l'onduleur au serveur via son câble USB de communication.
- Installer et configurer le paquet `apcupsd` ou `nut` sur Proxmox.
- Définir le seuil d'arrêt : Si l'alimentation secteur est coupée pendant plus de **7 minutes**, ou si la batterie chute sous **30%**, Proxmox ordonne l'arrêt propre de toutes les VMs/LXC puis s'éteint.
- **Paramètre BIOS** :
- Option `AC Back / Restore on AC Power Loss` réglée sur **Always On**. Dès que le secteur revient dans le garage, le serveur redémarre sans que tu aies besoin de descendre appuyer sur le bouton.
---
## 4. Checklist Technique d'Installation (Proxmox VE 8)
- [ ] Mettre à jour le BIOS de la carte mère vers la dernière version stable.
- [ ] Désactiver le Secure Boot si nécessaire pour la compatibilité PVE.
- [ ] Activer `SVM Mode` (Virtualisation AMD) dans le BIOS.
- [ ] Configurer la carte réseau intégrée avec l'IP statique `192.168.1.200/24`, passerelle `192.168.1.1` (Bbox), DNS `1.1.1.1, 8.8.8.8`.
- [ ] Désactiver le dépôt "Enterprise" payant de Proxmox et activer le dépôt `pve-no-subscription` pour recevoir les mises à jour gratuites.
- [ ] Installer les outils indispensables : `curl`, `htop`, `iotop`, `smartmontools`, `git`, `nut` / `apcupsd`.