Initial commit: LLM Automation Docs & Remediation Engine v2.0

Features:
- Automated datacenter documentation generation
- MCP integration for device connectivity
- Auto-remediation engine with safety checks
- Multi-factor reliability scoring (0-100%)
- Human feedback learning loop
- Pattern recognition and continuous improvement
- Agentic chat support with AI
- API for ticket resolution
- Frontend React with Material-UI
- CI/CD pipelines (GitLab + Gitea)
- Docker & Kubernetes deployment
- Complete documentation and guides

v2.0 Highlights:
- Auto-remediation with write operations (disabled by default)
- Reliability calculator with 4-factor scoring
- Human feedback system for continuous learning
- Pattern-based progressive automation
- Approval workflow for critical actions
- Full audit trail and rollback capability
This commit is contained in:
LLM Automation System
2025-10-17 23:47:28 +00:00
commit 1ba5ce851d
89 changed files with 20468 additions and 0 deletions

589
INDICE_COMPLETO.md Normal file
View File

@@ -0,0 +1,589 @@
# 📚 Indice Completo - Sistema Documentazione Datacenter
## 🎯 Panoramica Sistema
Questo pacchetto contiene un sistema completo per la **generazione automatica e gestione della documentazione del datacenter tramite LLM**. Il sistema è progettato per essere gestito, aggiornato e mantenuto da un Large Language Model attraverso automazioni.
---
## 📁 Struttura File
### 📄 README.md
Documento principale che spiega:
- Struttura del progetto
- Workflow di aggiornamento
- Versioning e limiti tecnici
### 📄 QUICK_START.md
Guida rapida per iniziare:
- Setup ambiente
- Configurazione credenziali
- Prima esecuzione
- Troubleshooting comune
- Checklist deployment
### 📄 requirements.txt
Dipendenze Python necessarie per il sistema
---
## 📂 templates/ - Template Documentazione (10 file)
### 01_infrastruttura_fisica.md (~3000 righe)
**Contenuto**: Layout datacenter, rack, elettrico (UPS, generatori, PDU), raffreddamento (CRAC/CRAH), sicurezza fisica, videosorveglianza, antincendio, cablaggio strutturato, connettività esterna, manutenzioni
**Sezioni Principali**:
- Informazioni generali e layout
- Rack organization (ID, posizione, occupazione)
- Sistema elettrico completo (UPS, generatori, PDU, power budget, PUE)
- Sistema raffreddamento (unità, parametri ambientali, sensori)
- Sicurezza fisica (accessi, videosorveglianza, antintrusione)
- Sistema antincendio (rilevazione, spegnimento)
- Cablaggio e connectivity
- Manutenzioni e contratti
- Compliance e certificazioni
- Contatti emergenza
**Utilizzo**: Base di riferimento per l'infrastruttura fisica
---
### 02_networking.md (~3000 righe)
**Contenuto**: Architettura rete, switch core/distribution/access, VLAN, routing, firewall, VPN, load balancing, DNS/DHCP, wireless, monitoring rete
**Sezioni Principali**:
- Topologia generale e architettura
- Inventario switch (core, distribution, access)
- Piano VLAN e subnetting
- Routing (protocolli, route statiche)
- Firewall e security (regole, NAT, IPS/IDS)
- VPN (site-to-site, remote access)
- Load balancing
- DNS e DHCP
- Wireless (controller, AP, SSID)
- Network monitoring e NetFlow
- QoS policies
- NAC (Network Access Control)
- Utilizzo banda e traffico
- Backup configurazioni
- Change management
**Utilizzo**: Riferimento completo networking
---
### 03_server_virtualizzazione.md (~2500 righe)
**Contenuto**: Hypervisor, cluster, host fisici, VM, storage virtuale, networking virtuale, HA/DRS, backup VM, licensing, container
**Sezioni Principali**:
- Piattaforma virtualizzazione (VMware/Hyper-V/Proxmox/KVM)
- Cluster configuration e HA
- Inventario host fisici
- Inventario macchine virtuali
- Template VM e snapshot
- Storage virtuale (datastore, policy)
- Networking virtuale (vSwitch, port groups)
- High Availability e DRS
- Backup e recovery VM (RPO/RTO)
- Server bare metal
- Container platform (Kubernetes)
- Licensing e compliance
- Patch management
- Monitoring performance
- Provisioning e automation
- Disaster Recovery
- Security posture
- Capacity management
- SLA e KPI
- Cost management
**Utilizzo**: Gestione completa infrastruttura virtuale
---
### 04_storage.md (~2000 righe)
**Contenuto**: SAN, NAS, object storage, fabric FC, performance, tiering, snapshot, replica, backup storage
**Sezioni Principali**:
- Architettura storage generale
- SAN (array, RAID, performance)
- Fabric SAN (FC switch, zoning, WWN)
- NAS (filer, export/share, performance)
- Object storage (bucket, policies)
- Tiering e data management
- Deduplication e compression
- Snapshot e cloning
- Replica e DR storage
- Backup storage (disk/tape/cloud)
- Monitoring e alert
- Disk management
- Multipathing
- Storage virtualization
- File services (shares, quota)
- DR storage systems
- Cloud storage integration
- Security ed encryption
- Capacity planning
- Compliance e retention
- Cost analysis
**Utilizzo**: Gestione completa storage
---
### 05_sicurezza.md (~1500 righe)
**Contenuto**: IAM, authentication, PAM, network security, endpoint security, vulnerability management, patch management, encryption, SIEM, incident response
**Sezioni Principali**:
- Security overview e posture
- Identity and Access Management
- Authentication e MFA
- Privileged Access Management
- Network security (perimeter, segmentation, IDS/IPS)
- Endpoint security (antivirus/EDR)
- Vulnerability management
- Patch management status
- Encryption (at rest, in transit)
- Security monitoring (SIEM)
- Backup security
- Incident response
- Security awareness training
- Compliance status
**Utilizzo**: Postura sicurezza complessiva
---
### 06_backup_disaster_recovery.md (~800 righe)
**Contenuto**: Infrastruttura backup, job configuration, RPO/RTO, DR site, restore testing, cloud backup
**Sezioni Principali**:
- Backup infrastructure e software
- Backup repository (disk/tape/cloud)
- Backup jobs configuration
- RPO/RTO matrix per tier
- DR site e readiness
- Restore testing results
- Cloud backup configuration
**Utilizzo**: Strategia backup e DR
---
### 07_monitoring_alerting.md (~600 righe)
**Contenuto**: Piattaforma monitoring, sistemi monitorati, alerting, dashboards, metriche performance
**Sezioni Principali**:
- Monitoring platform (Zabbix/Prometheus/Nagios)
- System status overview
- Alert configuration e statistics
- Performance dashboards
- Metriche e KPI
**Utilizzo**: Stato monitoring infrastruttura
---
### 08_database_middleware.md (~700 righe)
**Contenuto**: DBMS, database instances, high availability, performance, middleware, application servers
**Sezioni Principali**:
- Inventario database servers
- Database list e sizing
- High availability configuration
- Performance monitoring
- Middleware e application servers
**Utilizzo**: Gestione database e middleware
---
### 09_procedure_operative.md (~600 righe)
**Contenuto**: Procedure standard, runbook, maintenance windows, escalation matrix, change management
**Sezioni Principali**:
- Elenco procedure standard
- Runbook operativi
- Schedule maintenance windows
- Escalation path e contatti
- Change management process
**Utilizzo**: Procedure operative quotidiane
---
### 10_miglioramenti.md (~1000 righe)
**Contenuto**: Analisi opportunità miglioramento basata su tutte le altre sezioni
**Sezioni Principali**:
- Quick wins (0-3 mesi)
- Progetti medio termine (3-12 mesi)
- Ottimizzazione costi
- Modernizzazione (technology refresh)
- Automazione
- Security improvements
- Capacity planning investments
- Observability gaps
- DR improvements
- Skills e training needs
- Documentation gaps
- Compliance roadmap
**Utilizzo**: Roadmap miglioramenti
---
## 📂 system-prompts/ - Prompt LLM (10 file)
Ogni file corrisponde a una sezione e contiene:
- **Ruolo**: Definizione expertise LLM
- **Obiettivi**: Cosa deve fare
- **Fonti Dati**: Da dove raccogliere informazioni
- **Comandi**: Esempi specifici (SSH, API, SNMP, SQL)
- **Istruzioni**: Come compilare il template
- **Validazione**: Cosa verificare
- **Output**: Formato atteso
### 01_infrastruttura_fisica_prompt.md
Focus su: UPS, PDU, cooling, sensori, rack layout, sicurezza fisica
### 02_networking_prompt.md
Focus su: Switch config, routing, firewall, VLAN, performance
### 03_server_virtualizzazione_prompt.md
Focus su: VMware/hypervisor API, VM inventory, capacity planning
### 04_storage_prompt.md
Focus su: Array storage, SAN fabric, NAS, performance, capacity
### 05_sicurezza_prompt.md
Focus su: SIEM, vulnerability scanners, compliance, access control
### 06_backup_disaster_recovery_prompt.md
Focus su: Backup software API, job status, RPO/RTO compliance
### 07_monitoring_alerting_prompt.md
Focus su: Monitoring platform API, alert stats, dashboards
### 08_database_middleware_prompt.md
Focus su: Database queries, sizing, performance, HA status
### 09_procedure_operative_prompt.md
Focus su: Documentazione SOP, runbook validation, escalation
### 10_miglioramenti_prompt.md
Focus su: Analisi cross-section, gap analysis, prioritization
---
## 📂 requirements/ - Requisiti Tecnici (3 file)
### llm_requirements.md (~800 righe)
**Contenuto Completo**:
1. **Capacità Richieste al LLM**
- Network access (SSH, HTTPS, SNMP)
- API interaction
- Code execution (Python, Bash, PowerShell)
- File operations
- Database access
2. **Librerie Python** (completo pip install)
- paramiko, pysnmp, netmiko (networking)
- pyvmomi, proxmoxer (virtualizzazione)
- mysql-connector, psycopg2 (database)
- boto3, azure-mgmt (cloud)
- 20+ librerie specificate
3. **CLI Tools Required**
- snmp, nmap, netcat
- open-vm-tools
- mysql-client, postgresql-client
- nfs-common, multipath-tools
4. **Accessi e Credenziali**
- Formato credentials.yaml encrypted
- Esempio configurazione per ogni sistema
- Permessi minimi richiesti (read-only)
5. **Connettività di Rete**
- VLAN e subnet requirements
- Porte necessarie (SSH, HTTPS, SNMP, DB)
- Firewall rules
6. **Rate Limiting e Best Practices**
- Limits per vendor
- Retry logic con exponential backoff
- Concurrent operations limits
7. **Error Handling e Logging**
- Logging configuration
- Error handling strategy
- Custom exceptions
8. **Caching e Performance**
- Redis setup
- Cache TTL strategy
- Performance optimization
9. **Schedule di Esecuzione**
- Cron schedule raccomandato
- Script wrapper esempio
10. **Output e Validazione**
- Post-generation checks
- Placeholder validation
- Notification system
11. **Security Considerations**
- Secrets management
- Audit trail
- Compliance
12. **Troubleshooting Guide**
- Common issues e soluzioni
- Debug mode
13. **Testing**
- Unit tests examples
- Integration tests
14. **Checklist Pre-Deployment** (completa)
---
### data_collection_scripts.md (~600 righe)
**Contenuto**:
1. **Main Orchestrator** (main.py)
- Class completa DatacenterDocGenerator
- Argparse configuration
- Error handling
- Logging setup
2. **Collector Modules**:
- **InfrastructureCollector**: UPS via SNMP, rack da DB, sensori ambientali
- **NetworkCollector**: Switch via Netmiko, config backup
- **VirtualizationCollector**: VMware via pyVmomi, VM/host inventory
3. **Helper Functions**:
- SNMP utilities (get/walk)
- Token counter
- Data validation
4. **Configuration File** (config.yaml esempio completo)
5. **Deployment Script** (deploy.sh)
- Setup directories
- Virtual environment
- Dependencies install
- Cron setup
6. **Testing Framework**
- Unit tests examples
- Test collectors
---
### api_endpoints.md (~800 righe)
**Contenuto Completo**:
1. **VMware vSphere API**
- REST API endpoints
- PowerCLI commands
- Esempi query VM/host/datastore
2. **Proxmox VE API**
- REST API authentication
- VM/container queries
- CLI commands
3. **Network Devices**
- Cisco IOS commands (completi)
- HP/Aruba commands
- SNMP examples
4. **Firewall APIs**
- pfSense/OPNsense API
- Fortinet FortiGate API
- Esempi rules, VPN, interfaces
5. **Storage Arrays**
- Pure Storage API
- NetApp ONTAP API
- Generic SAN commands
6. **Monitoring Systems**
- Zabbix API (authentication, hosts, problems)
- Prometheus API (queries, targets, alerts)
- Nagios/Icinga API
7. **Backup Systems**
- Veeam PowerShell commands
- CommVault API
8. **Database Queries**
- Asset management DB (racks, servers, contracts)
- Database sizing queries (MySQL, PostgreSQL, SQL Server)
9. **Cloud Provider APIs**
- AWS Boto3 examples
- Azure SDK examples
10. **SNMP OIDs Reference**
- Common system OIDs
- UPS OIDs (RFC 1628) completo
- Network interface OIDs
11. **Example Collection Script**
- Bash orchestrator completo
12. **Rate Limiting Reference**
- Vendor limits table
- Retry strategy code
---
## 🔧 Come Usare il Sistema
### 1⃣ Setup Iniziale
```bash
# Leggi QUICK_START.md per guida dettagliata
cd /opt/datacenter-docs
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
```
### 2⃣ Configurazione
- Edita `config.yaml` con i tuoi endpoint
- Configura credenziali in vault
- Verifica connectivity con `--dry-run`
### 3⃣ Utilizzo LLM
Per ogni sezione che deve aggiornare:
1. LLM legge il **template** corrispondente
2. LLM legge il **system prompt** per istruzioni
3. LLM consulta **requirements/** per comandi/API
4. LLM raccoglie dati dai sistemi
5. LLM compila il template
6. LLM valida output (< 50k token)
7. LLM salva documentazione aggiornata
### 4⃣ Automazione
- Cron job per aggiornamenti periodici
- Monitoring dei job
- Notification su completion/errori
---
## 📊 Statistiche Progetto
- **Template totali**: 10 sezioni
- **System prompts**: 10 file
- **Documenti requirements**: 3 file dettagliati
- **Righe di codice**: ~2000+ (Python examples)
- **Comandi/API documentati**: 200+
- **Librerie Python specificate**: 25+
- **Vendor supportati**: 15+ (VMware, Cisco, NetApp, Pure, ecc.)
---
## ✅ Checklist Utilizzo
### Per l'Amministratore Sistema
- [ ] Letto README.md e QUICK_START.md
- [ ] Setup ambiente Python completato
- [ ] Credenziali configurate
- [ ] Test connectivity eseguiti
- [ ] Prima generazione test completata
- [ ] Cron job configurato
- [ ] Monitoring setup
- [ ] Team informato
### Per il LLM
- [ ] Accesso a tutti i sistemi verificato
- [ ] Librerie Python disponibili
- [ ] Template caricati
- [ ] System prompt compresi
- [ ] Requirements studiati
- [ ] Test dry-run superato
- [ ] Validazione funzionante
- [ ] Token limit rispettato
---
## 🎓 Benefici del Sistema
### ✅ Automazione Completa
- Nessun intervento manuale necessario
- Aggiornamenti programmati
- Dati sempre aggiornati
### ✅ Consistenza
- Template standardizzati
- Formato uniforme
- Nessun dato mancante
### ✅ Accuratezza
- Dati letti direttamente dai sistemi
- No errori di trascrizione
- Validazione automatica
### ✅ Efficienza
- Riduzione 90% tempo documentazione
- Copertura completa
- Sempre disponibile
### ✅ Compliance
- Audit trail completo
- Version control
- Retention automatica
---
## 🚀 Prossimi Passi
1. **Fase 1 - Setup** (1-2 giorni)
- Installazione ambiente
- Configurazione accessi
- Test connectivity
2. **Fase 2 - Pilot** (3-5 giorni)
- Generazione singole sezioni
- Validazione output
- Tuning configurazione
3. **Fase 3 - Production** (1 settimana)
- Automazione completa
- Monitoring operativo
- Training team
4. **Fase 4 - Optimization** (ongoing)
- Miglioramenti continui
- Nuove fonti dati
- Expansion coverage
---
## 📞 Supporto
Per domande o supporto:
- **Email**: automation-team@company.com
- **Documentation**: README.md, QUICK_START.md
- **Troubleshooting**: QUICK_START.md sezione Troubleshooting
---
**Sistema creato per la gestione automatizzata della documentazione datacenter**
**Versione**: 1.0
**Data**: 2025-01-XX
**Maintainer**: Automation Team
---
## 🎯 Obiettivo Finale
**Zero intervento manuale nella documentazione datacenter**
**Documentazione sempre aggiornata, accurata e completa**
**Compliance automatica e audit-ready**