align for IA agents + grafana
This commit is contained in:
parent
9e29f69d9d
commit
3711626b2b
155
IA_agents/CHANGELOG-2025-01-22.md
Normal file
155
IA_agents/CHANGELOG-2025-01-22.md
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
# Changelog - LeCoffre Node Scripts Avancés
|
||||||
|
**Date : 22 Janvier 2025**
|
||||||
|
|
||||||
|
## 🚀 Nouvelles Fonctionnalités
|
||||||
|
|
||||||
|
### Scripts Principaux
|
||||||
|
- ✅ **`start.sh`** - Démarrage séquentiel intelligent avec progression détaillée
|
||||||
|
- ✅ **`validate-deployment.sh`** - Validation complète du déploiement
|
||||||
|
- ✅ **`maintenance.sh`** - Menu interactif de maintenance
|
||||||
|
|
||||||
|
### Protection des Données
|
||||||
|
- ✅ **`backup-data.sh`** - Sauvegarde automatique des volumes Docker
|
||||||
|
- ✅ **`restore-data.sh`** - Restauration depuis sauvegarde
|
||||||
|
- ✅ **`update-images.sh`** - Mise à jour sécurisée avec sauvegarde
|
||||||
|
|
||||||
|
### Monitoring et Logs
|
||||||
|
- ✅ **`collect-logs.sh`** - Collecte organisée des logs
|
||||||
|
- ✅ **`test-monitoring.sh`** - Tests des services de monitoring
|
||||||
|
- ✅ **`test-dashboards.sh`** - Validation des dashboards Grafana
|
||||||
|
|
||||||
|
## 🔧 Améliorations
|
||||||
|
|
||||||
|
### Scripts Existants
|
||||||
|
- ✅ **`deploy-master.sh`** - Intégration du nouveau système de démarrage
|
||||||
|
- ✅ **`collect-logs.sh`** - Liste complète des services avec mapping correct
|
||||||
|
- ✅ **`build-project.sh`** - Documentation des projets supportés
|
||||||
|
|
||||||
|
### Docker Compose
|
||||||
|
- ✅ **Volumes persistants** - Ajout des volumes pour SDK Signer et SDK Storage
|
||||||
|
- ✅ **Healthchecks améliorés** - Scripts de progression intégrés
|
||||||
|
- ✅ **Dockerfile.master** - Ajout des outils nécessaires (procps, ncurses)
|
||||||
|
|
||||||
|
## 📊 Fonctionnalités de Progression
|
||||||
|
|
||||||
|
### Affichage en Temps Réel
|
||||||
|
- ✅ **Tor Bootstrap** - Progression 0-100% avec étapes
|
||||||
|
- ✅ **Bitcoin IBD** - Blocs synchronisés et pourcentage de vérification
|
||||||
|
- ✅ **BlindBit Oracle** - Scan des blocs et tweaks détectés
|
||||||
|
- ✅ **SDK Relay** - Synchronisation et connexions WebSocket
|
||||||
|
- ✅ **SDK Signer** - État de connexion et clés disponibles
|
||||||
|
- ✅ **URLs publiques** - Accessibilité HTTPS/WebSocket
|
||||||
|
|
||||||
|
### Validation Complète
|
||||||
|
- ✅ **Volumes Docker** - Vérification de la persistance des données
|
||||||
|
- ✅ **Services** - Statut et healthchecks
|
||||||
|
- ✅ **URLs publiques** - Tests de connectivité
|
||||||
|
- ✅ **WebSockets** - Tests de connexion
|
||||||
|
- ✅ **Scripts** - Disponibilité et permissions
|
||||||
|
|
||||||
|
## 🛡️ Sécurité et Fiabilité
|
||||||
|
|
||||||
|
### Sauvegarde Automatique
|
||||||
|
- ✅ **Volumes critiques** - Bitcoin, BlindBit, SDK Storage, SDK Signer
|
||||||
|
- ✅ **Archives compressées** - Avec timestamps et gestion des permissions
|
||||||
|
- ✅ **Mise à jour sécurisée** - Sauvegarde automatique avant mise à jour
|
||||||
|
|
||||||
|
### Gestion des Erreurs
|
||||||
|
- ✅ **Timeouts adaptatifs** - Pour les processus longs (Tor, Bitcoin)
|
||||||
|
- ✅ **Gestion des permissions** - Copie et archivage sécurisés
|
||||||
|
- ✅ **Validation préalable** - Vérifications avant opérations critiques
|
||||||
|
|
||||||
|
## 📁 Structure des Volumes
|
||||||
|
|
||||||
|
### Volumes Persistants
|
||||||
|
- ✅ **`4nk_node_bitcoin_data`** - Données Bitcoin Signet
|
||||||
|
- ✅ **`4nk_node_blindbit_data`** - Données BlindBit Oracle
|
||||||
|
- ✅ **`4nk_node_sdk_data`** - Données SDK Relay
|
||||||
|
- ✅ **`4nk_node_sdk_signer_data`** - Données SDK Signer
|
||||||
|
- ✅ **`4nk_node_sdk_storage_data`** - Données SDK Storage
|
||||||
|
- ✅ **`4nk_node_grafana_data`** - Données Grafana
|
||||||
|
- ✅ **`4nk_node_loki_data`** - Données Loki
|
||||||
|
|
||||||
|
## 🔄 Workflows Optimisés
|
||||||
|
|
||||||
|
### Déploiement Initial
|
||||||
|
```bash
|
||||||
|
./scripts/start.sh # Démarrage avec progression
|
||||||
|
./scripts/validate-deployment.sh # Validation complète
|
||||||
|
./scripts/test-monitoring.sh # Tests de monitoring
|
||||||
|
```
|
||||||
|
|
||||||
|
### Maintenance Régulière
|
||||||
|
```bash
|
||||||
|
./scripts/maintenance.sh # Menu interactif
|
||||||
|
./scripts/backup-data.sh # Sauvegarde manuelle
|
||||||
|
./scripts/collect-logs.sh # Collecte des logs
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mise à Jour
|
||||||
|
```bash
|
||||||
|
./scripts/update-images.sh # Mise à jour sécurisée
|
||||||
|
./scripts/validate-deployment.sh # Validation post-mise à jour
|
||||||
|
```
|
||||||
|
|
||||||
|
### Récupération d'Urgence
|
||||||
|
```bash
|
||||||
|
docker compose down # Arrêt des services
|
||||||
|
./scripts/restore-data.sh <backup> # Restauration
|
||||||
|
./scripts/start.sh # Redémarrage
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📚 Documentation
|
||||||
|
|
||||||
|
### Nouveaux Documents
|
||||||
|
- ✅ **`scripts/README.md`** - Documentation complète des scripts
|
||||||
|
- ✅ **`scripts-advanced.md`** - Guide détaillé des scripts avancés
|
||||||
|
- ✅ **`CHANGELOG-2025-01-22.md`** - Ce changelog
|
||||||
|
|
||||||
|
### Documents Mis à Jour
|
||||||
|
- ✅ **`deploy.md`** - Nouvelles procédures et scripts
|
||||||
|
- ✅ **`context.md`** - Scripts de gestion avancés
|
||||||
|
- ✅ **`flux.md`** - Tableau des scripts de gestion
|
||||||
|
- ✅ **`README.md`** - Obligations et interdictions mises à jour
|
||||||
|
|
||||||
|
## 🎯 Objectifs Atteints
|
||||||
|
|
||||||
|
### Progression Visible
|
||||||
|
- ✅ **Affichage en temps réel** - Progression détaillée de tous les services
|
||||||
|
- ✅ **Timeouts adaptatifs** - Gestion des processus longs (Tor 15min, Bitcoin 2h)
|
||||||
|
- ✅ **Healthchecks intégrés** - Messages de progression dans les healthchecks
|
||||||
|
|
||||||
|
### Protection des Données
|
||||||
|
- ✅ **Persistance garantie** - Volumes Docker pour tous les services critiques
|
||||||
|
- ✅ **Sauvegarde automatique** - Avant toute mise à jour ou modification
|
||||||
|
- ✅ **Restauration simple** - Processus de récupération documenté
|
||||||
|
|
||||||
|
### Maintenance Simplifiée
|
||||||
|
- ✅ **Menu interactif** - Toutes les tâches de maintenance centralisées
|
||||||
|
- ✅ **Validation complète** - Vérification de tous les aspects du déploiement
|
||||||
|
- ✅ **Documentation exhaustive** - Guides complets pour tous les scripts
|
||||||
|
|
||||||
|
## 🔮 Prochaines Étapes
|
||||||
|
|
||||||
|
### Tests et Validation
|
||||||
|
- [ ] Tests complets du système de sauvegarde/restauration
|
||||||
|
- [ ] Validation des workflows de mise à jour
|
||||||
|
- [ ] Tests de récupération d'urgence
|
||||||
|
|
||||||
|
### Optimisations
|
||||||
|
- [ ] Amélioration des timeouts basée sur les retours d'expérience
|
||||||
|
- [ ] Optimisation des scripts de collecte de logs
|
||||||
|
- [ ] Amélioration des messages de progression
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
- [ ] Mise à jour des guides utilisateur
|
||||||
|
- [ ] Documentation des cas d'usage avancés
|
||||||
|
- [ ] Formation des équipes sur les nouveaux scripts
|
||||||
|
|
||||||
|
## 📞 Support
|
||||||
|
|
||||||
|
Pour toute question ou problème avec les nouveaux scripts :
|
||||||
|
1. Consulter la documentation dans `scripts/README.md`
|
||||||
|
2. Utiliser `./scripts/validate-deployment.sh` pour diagnostiquer
|
||||||
|
3. Utiliser `./scripts/maintenance.sh` pour les tâches de maintenance
|
||||||
|
4. Consulter les logs avec `./scripts/collect-logs.sh`
|
@ -16,10 +16,11 @@ Ce répertoire contient toute la documentation nécessaire pour les agents IA tr
|
|||||||
- [`monitoring-progress.md`](monitoring-progress.md) - Système de monitoring et progression
|
- [`monitoring-progress.md`](monitoring-progress.md) - Système de monitoring et progression
|
||||||
- [`quick-reference-monitoring.md`](quick-reference-monitoring.md) - Guide de référence rapide
|
- [`quick-reference-monitoring.md`](quick-reference-monitoring.md) - Guide de référence rapide
|
||||||
|
|
||||||
### **3. Documents d'Architecture (NOUVEAU)**
|
### **3. Documents d'Architecture**
|
||||||
- [`deployment-architecture.md`](deployment-architecture.md) - Architecture de déploiement par phases
|
- [`deployment-architecture.md`](deployment-architecture.md) - Architecture de déploiement par phases
|
||||||
- [`best-practices-deployment.md`](best-practices-deployment.md) - Bonnes pratiques et interdictions
|
- [`best-practices-deployment.md`](best-practices-deployment.md) - Bonnes pratiques et interdictions
|
||||||
- [`loki-configuration-guide.md`](loki-configuration-guide.md) - Configuration Loki obligatoire
|
- [`loki-configuration-guide.md`](loki-configuration-guide.md) - Configuration Loki obligatoire
|
||||||
|
- [`scripts-advanced.md`](scripts-advanced.md) - **NOUVEAU** - Documentation complète des scripts avancés
|
||||||
|
|
||||||
### **4. Documents de Déploiement**
|
### **4. Documents de Déploiement**
|
||||||
- [`prompts/prompt-deploy.md`](prompts/prompt-deploy.md) - Prompt de déploiement complet
|
- [`prompts/prompt-deploy.md`](prompts/prompt-deploy.md) - Prompt de déploiement complet
|
||||||
@ -36,10 +37,12 @@ docker compose start
|
|||||||
|
|
||||||
### **✅ OBLIGATIONS ABSOLUES**
|
### **✅ OBLIGATIONS ABSOLUES**
|
||||||
```bash
|
```bash
|
||||||
# ✅ Utiliser UNIQUEMENT ces scripts
|
# ✅ Utiliser UNIQUEMENT ces scripts (NOUVEAU)
|
||||||
./scripts/start-with-progress.sh # Services applicatifs
|
./scripts/start.sh # Démarrage séquentiel avec progression
|
||||||
./scripts/start-monitoring.sh # Services de monitoring
|
./scripts/validate-deployment.sh # Validation complète
|
||||||
./scripts/monitor-progress.sh # Surveillance
|
./scripts/maintenance.sh # Menu de maintenance interactif
|
||||||
|
./scripts/backup-data.sh # Sauvegarde des données
|
||||||
|
./scripts/update-images.sh # Mise à jour sécurisée
|
||||||
```
|
```
|
||||||
|
|
||||||
## 🏗️ Architecture de Déploiement
|
## 🏗️ Architecture de Déploiement
|
||||||
|
@ -38,6 +38,23 @@ A déployer par **`lecoffre_node/`** (d'autres projets externes sont ne dépenda
|
|||||||
- ✅ **Sécurité renforcée** : Variables centralisées et protégées
|
- ✅ **Sécurité renforcée** : Variables centralisées et protégées
|
||||||
- ✅ **Déploiement simplifié** : `docker compose --env-file .env.master up`
|
- ✅ **Déploiement simplifié** : `docker compose --env-file .env.master up`
|
||||||
|
|
||||||
|
### 🆕 Scripts de Gestion Avancés (2025-01-22)
|
||||||
|
|
||||||
|
**Scripts principaux** :
|
||||||
|
- ✅ **`start.sh`** : Démarrage séquentiel avec progression détaillée en temps réel
|
||||||
|
- ✅ **`validate-deployment.sh`** : Validation complète du déploiement (volumes, services, URLs)
|
||||||
|
- ✅ **`maintenance.sh`** : Menu interactif de maintenance et monitoring
|
||||||
|
|
||||||
|
**Protection des données** :
|
||||||
|
- ✅ **`backup-data.sh`** : Sauvegarde automatique des volumes Docker critiques
|
||||||
|
- ✅ **`restore-data.sh`** : Restauration depuis une sauvegarde
|
||||||
|
- ✅ **`update-images.sh`** : Mise à jour sécurisée avec sauvegarde automatique
|
||||||
|
|
||||||
|
**Monitoring et logs** :
|
||||||
|
- ✅ **`collect-logs.sh`** : Collecte organisée des logs de tous les services
|
||||||
|
- ✅ **`test-monitoring.sh`** : Tests des services de monitoring
|
||||||
|
- ✅ **`test-dashboards.sh`** : Validation des dashboards Grafana
|
||||||
|
|
||||||
### Services optimisés (2024-12-19)
|
### Services optimisés (2024-12-19)
|
||||||
- **`sdk_relay/`** (relai des transations et messages et oracle) - Debian + Rust
|
- **`sdk_relay/`** (relai des transations et messages et oracle) - Debian + Rust
|
||||||
- **`sdk_signer/`** (signature des processus métier et des identités/profils) - Debian + Node.js 20
|
- **`sdk_signer/`** (signature des processus métier et des identités/profils) - Debian + Node.js 20
|
||||||
|
@ -38,13 +38,39 @@ Via les scripts, lance tous les services de `lecoffre_node/docker-compose.yml`.
|
|||||||
|
|
||||||
## Procédure générale
|
## Procédure générale
|
||||||
|
|
||||||
|
### 🚀 Démarrage Rapide (Nouveau)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Démarrage complet des services avec progression détaillée
|
||||||
|
./scripts/start.sh
|
||||||
|
|
||||||
|
# Validation complète du déploiement
|
||||||
|
./scripts/validate-deployment.sh
|
||||||
|
|
||||||
|
# Maintenance interactive
|
||||||
|
./scripts/maintenance.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### 🛡️ Protection des Données
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Sauvegarde automatique avant toute opération
|
||||||
|
./scripts/backup-data.sh
|
||||||
|
|
||||||
|
# Mise à jour sécurisée des images
|
||||||
|
./scripts/update-images.sh
|
||||||
|
|
||||||
|
# Restauration en cas de problème
|
||||||
|
./scripts/restore-data.sh <backup_file>
|
||||||
|
```
|
||||||
|
|
||||||
### Vérifications initiales par projet
|
### Vérifications initiales par projet
|
||||||
|
|
||||||
1. Vérifier que le dépôt distant est **public** (si possible).
|
1. Vérifier que le dépôt distant est **public** (si possible).
|
||||||
2. Vérifier l’utilisation des **clés SSH** pour le déploiement Git (idéalement ~/.ssh/id_ed25519)
|
2. Vérifier l'utilisation des **clés SSH** pour le déploiement Git (idéalement ~/.ssh/id_ed25519)
|
||||||
3. Vérifier que la branche courante est bien **`ext`**.
|
3. Vérifier que la branche courante est bien **`ext`**.
|
||||||
4. Mettre à jour les dépendances et les langages
|
4. Mettre à jour les dépendances et les langages
|
||||||
5. Vérifier les **variables d’environnement**.
|
5. Vérifier les **variables d'environnement**.
|
||||||
|
|
||||||
### Mise à jour et construction par projet
|
### Mise à jour et construction par projet
|
||||||
|
|
||||||
@ -206,6 +232,44 @@ Après le push sur la branche Git `ext` :
|
|||||||
2. Pousser l'image sur le **tag Docker `ext`** via la CI
|
2. Pousser l'image sur le **tag Docker `ext`** via la CI
|
||||||
3. Vérifier le succès du build CI
|
3. Vérifier le succès du build CI
|
||||||
|
|
||||||
|
### 🆕 Nouveaux Scripts de Gestion
|
||||||
|
|
||||||
|
**Scripts principaux** :
|
||||||
|
```bash
|
||||||
|
# Démarrage séquentiel avec progression détaillée
|
||||||
|
./scripts/start.sh
|
||||||
|
|
||||||
|
# Validation complète du déploiement
|
||||||
|
./scripts/validate-deployment.sh
|
||||||
|
|
||||||
|
# Menu de maintenance interactif
|
||||||
|
./scripts/maintenance.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Scripts de protection des données** :
|
||||||
|
```bash
|
||||||
|
# Sauvegarde automatique des volumes Docker
|
||||||
|
./scripts/backup-data.sh
|
||||||
|
|
||||||
|
# Mise à jour sécurisée avec sauvegarde
|
||||||
|
./scripts/update-images.sh
|
||||||
|
|
||||||
|
# Restauration depuis une sauvegarde
|
||||||
|
./scripts/restore-data.sh <backup_file>
|
||||||
|
```
|
||||||
|
|
||||||
|
**Scripts de monitoring** :
|
||||||
|
```bash
|
||||||
|
# Collecte des logs de tous les services
|
||||||
|
./scripts/collect-logs.sh
|
||||||
|
|
||||||
|
# Tests des services de monitoring
|
||||||
|
./scripts/test-monitoring.sh
|
||||||
|
|
||||||
|
# Tests des dashboards Grafana
|
||||||
|
./scripts/test-dashboards.sh
|
||||||
|
```
|
||||||
|
|
||||||
### Déploiement avec variables centralisées
|
### Déploiement avec variables centralisées
|
||||||
|
|
||||||
**Utilisation du .env.master** :
|
**Utilisation du .env.master** :
|
||||||
|
@ -4,6 +4,17 @@
|
|||||||
|
|
||||||
## Tableau des Services - IP/Domaines et Ports
|
## Tableau des Services - IP/Domaines et Ports
|
||||||
|
|
||||||
|
### 🚀 **Scripts de Gestion (Nouveau)**
|
||||||
|
|
||||||
|
| Script | Fonction | Utilisation |
|
||||||
|
|--------|----------|-------------|
|
||||||
|
| **`start.sh`** | Démarrage séquentiel avec progression | `./scripts/start.sh` |
|
||||||
|
| **`validate-deployment.sh`** | Validation complète du déploiement | `./scripts/validate-deployment.sh` |
|
||||||
|
| **`maintenance.sh`** | Menu interactif de maintenance | `./scripts/maintenance.sh` |
|
||||||
|
| **`backup-data.sh`** | Sauvegarde des volumes Docker | `./scripts/backup-data.sh` |
|
||||||
|
| **`restore-data.sh`** | Restauration depuis sauvegarde | `./scripts/restore-data.sh <backup>` |
|
||||||
|
| **`update-images.sh`** | Mise à jour sécurisée | `./scripts/update-images.sh` |
|
||||||
|
|
||||||
### 🏠 **Services Locaux (Docker Compose)**
|
### 🏠 **Services Locaux (Docker Compose)**
|
||||||
|
|
||||||
| Service | Container | Port Local | Port Interne | Protocole | URL d'accès |
|
| Service | Container | Port Local | Port Interne | Protocole | URL d'accès |
|
||||||
|
@ -34,7 +34,7 @@ A mettre dans ta TODO (vérifie que tout est fait à la fin):
|
|||||||
- [ ] Vérifier les variables d'environnement centralisées dans `.env.master`
|
- [ ] Vérifier les variables d'environnement centralisées dans `.env.master`
|
||||||
|
|
||||||
### Phase 2: Construction et optimisation
|
### Phase 2: Construction et optimisation
|
||||||
- [ ] Supprimer les caches et optimiser le build de chaque projet
|
- [ ] si il y a eu des changements, Supprimer les caches et optimiser le build de chaque projet
|
||||||
- [ ] Mettre à jour la documentation
|
- [ ] Mettre à jour la documentation
|
||||||
- [ ] Mettre à jour les tests
|
- [ ] Mettre à jour les tests
|
||||||
- [ ] Mettre à jour les scripts
|
- [ ] Mettre à jour les scripts
|
||||||
|
304
IA_agents/scripts-advanced.md
Normal file
304
IA_agents/scripts-advanced.md
Normal file
@ -0,0 +1,304 @@
|
|||||||
|
# Scripts Avancés LeCoffre Node
|
||||||
|
|
||||||
|
## 🚀 Vue d'ensemble
|
||||||
|
|
||||||
|
LeCoffre Node dispose maintenant d'un ensemble complet de scripts pour la gestion, le monitoring et la maintenance de l'architecture complète.
|
||||||
|
|
||||||
|
## 📋 Scripts Principaux
|
||||||
|
|
||||||
|
### `start.sh` - Démarrage Séquentiel Intelligent
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Démarrage des services dans l'ordre logique optimal
|
||||||
|
- Affichage de la progression détaillée en temps réel
|
||||||
|
- Compatibilité complète avec Bitcoin Signet
|
||||||
|
- Gestion des timeouts adaptatifs
|
||||||
|
- Monitoring des healthchecks intégrés
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
./scripts/start.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Progression affichée** :
|
||||||
|
- Tor Bootstrap (0-100%)
|
||||||
|
- Bitcoin IBD (blocs synchronisés, pourcentage de vérification)
|
||||||
|
- BlindBit Oracle (scan des blocs, tweaks détectés)
|
||||||
|
- SDK Relay (synchronisation, connexions WebSocket)
|
||||||
|
- SDK Signer (état de connexion, clés disponibles)
|
||||||
|
- URLs publiques (accessibilité HTTPS/WebSocket)
|
||||||
|
|
||||||
|
### `validate-deployment.sh` - Validation Complète
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Vérification des volumes Docker (persistance des données)
|
||||||
|
- Validation des services et healthchecks
|
||||||
|
- Tests des URLs publiques et WebSockets
|
||||||
|
- Vérification des scripts et permissions
|
||||||
|
- Rapport détaillé avec compteurs
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
./scripts/validate-deployment.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Vérifications effectuées** :
|
||||||
|
- ✅ Volumes Docker (Bitcoin, BlindBit, SDK Storage, SDK Signer, Grafana, Loki)
|
||||||
|
- ✅ Services (Tor, Bitcoin, BlindBit, SDK Relay, SDK Signer, LeCoffre, IHM, Grafana)
|
||||||
|
- ✅ URLs publiques (Status, Grafana, Main Site, LeCoffre App)
|
||||||
|
- ✅ WebSockets (Bootstrap Relay, Signer Service)
|
||||||
|
- ✅ Scripts (disponibilité et permissions)
|
||||||
|
|
||||||
|
### `maintenance.sh` - Menu Interactif
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Menu interactif pour toutes les tâches de maintenance
|
||||||
|
- Validation complète du déploiement
|
||||||
|
- Sauvegarde et restauration des données
|
||||||
|
- Nettoyage des logs et images Docker
|
||||||
|
- Vérification de l'espace disque
|
||||||
|
- Redémarrage et mise à jour des services
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
./scripts/maintenance.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Options disponibles** :
|
||||||
|
1. Validation complète du déploiement
|
||||||
|
2. Sauvegarde des données
|
||||||
|
3. Nettoyage des logs anciens
|
||||||
|
4. Nettoyage des images Docker inutilisées
|
||||||
|
5. Vérification de l'espace disque
|
||||||
|
6. Redémarrage des services
|
||||||
|
7. Mise à jour des images
|
||||||
|
8. Collecte des logs
|
||||||
|
9. Vérification de la santé des services
|
||||||
|
|
||||||
|
## 🛡️ Protection des Données
|
||||||
|
|
||||||
|
### `backup-data.sh` - Sauvegarde Automatique
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Sauvegarde de tous les volumes Docker critiques
|
||||||
|
- Création d'archives compressées avec timestamps
|
||||||
|
- Gestion des permissions et erreurs
|
||||||
|
- Support des volumes Bitcoin, BlindBit, SDK Storage, SDK Signer
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
./scripts/backup-data.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
**Volumes sauvegardés** :
|
||||||
|
- `4nk_node_bitcoin_data` : Données Bitcoin Signet
|
||||||
|
- `4nk_node_blindbit_data` : Données BlindBit Oracle
|
||||||
|
- `4nk_node_sdk_data` : Données SDK Relay
|
||||||
|
- `4nk_node_sdk_signer_data` : Données SDK Signer
|
||||||
|
- `4nk_node_sdk_storage_data` : Données SDK Storage
|
||||||
|
- `4nk_node_grafana_data` : Données Grafana
|
||||||
|
- `4nk_node_loki_data` : Données Loki
|
||||||
|
|
||||||
|
### `restore-data.sh` - Restauration
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Restauration depuis une sauvegarde spécifiée
|
||||||
|
- Arrêt sécurisé des services avant restauration
|
||||||
|
- Remplacement complet des données existantes
|
||||||
|
- Gestion des permissions et erreurs
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
./scripts/restore-data.sh <backup_file.tar.gz>
|
||||||
|
```
|
||||||
|
|
||||||
|
### `update-images.sh` - Mise à Jour Sécurisée
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Sauvegarde automatique avant mise à jour
|
||||||
|
- Téléchargement des nouvelles images Docker
|
||||||
|
- Redémarrage des services avec les nouvelles images
|
||||||
|
- Protection complète des données
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
./scripts/update-images.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## 📊 Monitoring et Logs
|
||||||
|
|
||||||
|
### `collect-logs.sh` - Collecte des Logs
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Collecte automatique ou par service spécifique
|
||||||
|
- Organisation par répertoires avec timestamps
|
||||||
|
- Support de tous les services LeCoffre Node
|
||||||
|
|
||||||
|
**Utilisation** :
|
||||||
|
```bash
|
||||||
|
# Tous les services
|
||||||
|
./scripts/collect-logs.sh
|
||||||
|
|
||||||
|
# Service spécifique
|
||||||
|
./scripts/collect-logs.sh bitcoin-signet
|
||||||
|
```
|
||||||
|
|
||||||
|
**Services supportés** :
|
||||||
|
- Tor Proxy, Bitcoin Signet, BlindBit Oracle
|
||||||
|
- SDK Relay, SDK Signer, SDK Storage
|
||||||
|
- LeCoffre Backend, LeCoffre Frontend, IHM Client
|
||||||
|
- Grafana, Loki, Promtail, Status API, Signet Miner
|
||||||
|
|
||||||
|
### `test-monitoring.sh` - Tests de Monitoring
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Vérification des services Grafana, Loki, Promtail
|
||||||
|
- Tests de connectivité et API
|
||||||
|
- Validation des dashboards
|
||||||
|
|
||||||
|
### `test-dashboards.sh` - Tests des Dashboards
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Vérification des dashboards Grafana
|
||||||
|
- Tests des sources de données
|
||||||
|
- Validation des métriques
|
||||||
|
|
||||||
|
## 🔧 Scripts de Configuration
|
||||||
|
|
||||||
|
### `sync-configs.sh` - Synchronisation
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Copie des configurations vers les conteneurs
|
||||||
|
- Mise à jour des paramètres
|
||||||
|
- Redémarrage des services
|
||||||
|
|
||||||
|
### `sync-monitoring-config.sh` - Configuration Monitoring
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Configuration Grafana
|
||||||
|
- Configuration Loki/Promtail
|
||||||
|
- Déploiement des dashboards
|
||||||
|
|
||||||
|
### `setup-logs.sh` - Configuration des Logs
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Création des répertoires de logs
|
||||||
|
- Configuration des permissions
|
||||||
|
- Setup des rotations
|
||||||
|
|
||||||
|
## 🛠️ Scripts de Maintenance
|
||||||
|
|
||||||
|
### `fix_relay_funds.sh` - Correction des Fonds
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Vérification des fonds du relay
|
||||||
|
- Correction des problèmes
|
||||||
|
- Tests de connectivité
|
||||||
|
|
||||||
|
### `optimize-relay-startup.sh` - Optimisation Relay
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Optimisation des paramètres
|
||||||
|
- Amélioration des performances
|
||||||
|
- Tests de stabilité
|
||||||
|
|
||||||
|
### `verify_mining_fix.sh` - Vérification Minage
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Tests du minage Signet
|
||||||
|
- Vérification des blocs
|
||||||
|
- Validation des transactions
|
||||||
|
|
||||||
|
## 🔒 Scripts de Sécurité
|
||||||
|
|
||||||
|
### `generate-ssl-certs.sh` - Certificats SSL
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Création des certificats
|
||||||
|
- Configuration HTTPS
|
||||||
|
- Sécurisation des communications
|
||||||
|
|
||||||
|
### `uninstall-host-nginx.sh` - Désinstallation Nginx
|
||||||
|
|
||||||
|
**Fonctionnalités** :
|
||||||
|
- Nettoyage de Nginx
|
||||||
|
- Suppression des configurations
|
||||||
|
- Libération des ports
|
||||||
|
|
||||||
|
## 📁 Structure des Volumes
|
||||||
|
|
||||||
|
Les données sont persistées dans les volumes Docker suivants :
|
||||||
|
|
||||||
|
| Volume | Service | Description |
|
||||||
|
|--------|---------|-------------|
|
||||||
|
| `4nk_node_bitcoin_data` | Bitcoin Signet | Blockchain, wallet, configuration |
|
||||||
|
| `4nk_node_blindbit_data` | BlindBit Oracle | Cache des scans, tweaks détectés |
|
||||||
|
| `4nk_node_sdk_data` | SDK Relay | Messages, transactions, cache |
|
||||||
|
| `4nk_node_sdk_signer_data` | SDK Signer | Clés privées, signatures, profils |
|
||||||
|
| `4nk_node_sdk_storage_data` | SDK Storage | Données temporaires, cache |
|
||||||
|
| `4nk_node_grafana_data` | Grafana | Dashboards, configurations, utilisateurs |
|
||||||
|
| `4nk_node_loki_data` | Loki | Logs centralisés, index |
|
||||||
|
|
||||||
|
## 🔄 Workflows Recommandés
|
||||||
|
|
||||||
|
### Déploiement Initial
|
||||||
|
```bash
|
||||||
|
# 1. Démarrage complet
|
||||||
|
./scripts/start.sh
|
||||||
|
|
||||||
|
# 2. Validation
|
||||||
|
./scripts/validate-deployment.sh
|
||||||
|
|
||||||
|
# 3. Tests de monitoring
|
||||||
|
./scripts/test-monitoring.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Maintenance Régulière
|
||||||
|
```bash
|
||||||
|
# 1. Menu de maintenance
|
||||||
|
./scripts/maintenance.sh
|
||||||
|
|
||||||
|
# 2. Sauvegarde manuelle si nécessaire
|
||||||
|
./scripts/backup-data.sh
|
||||||
|
|
||||||
|
# 3. Collecte des logs
|
||||||
|
./scripts/collect-logs.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mise à Jour
|
||||||
|
```bash
|
||||||
|
# 1. Mise à jour sécurisée (sauvegarde automatique)
|
||||||
|
./scripts/update-images.sh
|
||||||
|
|
||||||
|
# 2. Validation post-mise à jour
|
||||||
|
./scripts/validate-deployment.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
### Récupération d'Urgence
|
||||||
|
```bash
|
||||||
|
# 1. Arrêt des services
|
||||||
|
docker compose down
|
||||||
|
|
||||||
|
# 2. Restauration
|
||||||
|
./scripts/restore-data.sh <backup_file>
|
||||||
|
|
||||||
|
# 3. Redémarrage
|
||||||
|
./scripts/start.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## ⚠️ Notes Importantes
|
||||||
|
|
||||||
|
- **Persistance des données** : Tous les scripts préservent les données importantes
|
||||||
|
- **Sauvegardes automatiques** : Les mises à jour incluent une sauvegarde automatique
|
||||||
|
- **Bitcoin Signet** : Tous les scripts sont compatibles avec le réseau de test
|
||||||
|
- **Volumes Docker** : Garantissent la persistance des données entre redémarrages
|
||||||
|
- **Monitoring intégré** : Healthchecks et progression en temps réel
|
||||||
|
- **Sécurité** : Aucune clé privée ou secret n'est exposé dans les scripts
|
||||||
|
|
||||||
|
## 📝 Logs et Debugging
|
||||||
|
|
||||||
|
- **Logs des services** : `./logs/<service>/`
|
||||||
|
- **Collecte des logs** : `./scripts/collect-logs.sh`
|
||||||
|
- **Monitoring** : Grafana sur port 3005
|
||||||
|
- **Status API** : Port 3006
|
||||||
|
- **Validation** : `./scripts/validate-deployment.sh`
|
Loading…
x
Reference in New Issue
Block a user