forked from JulieChv/Analyse_Reseaux
131 lines
4.5 KiB
Markdown
131 lines
4.5 KiB
Markdown
# Switch Log Parser & Excel Uplink Report & Uplink Diagram
|
|
|
|
## Description
|
|
|
|
Cet outil permet de **récupérer les données des logs de différents types de switches** (HPE uniquement actuellement) et de **convertir ces informations en un format JSON normalisé basé sur des modèles OpenConfig en YANG**.
|
|
|
|
- Il fournit également la possibilité de générer un **rapport des liens inter-switches format Excel** pour visualiser les liens entre les switches existants.
|
|
- Il fournit également la possibilité de générer un **rapport des interfaces format Excel** pour visualiser la liste des counters pour chaque interface.
|
|
- Il fournit également la possibilité de générer un **rapport des stack format Excel** pour visualiser les stack de chaque switch.
|
|
- Il founit également la possibilité de générer un **schéma de l'infrastructure** pour visualiser les liens entres les switches dans l'infrastructure.
|
|
|
|
## Fonctionnalités principales
|
|
|
|
1. **Analyse multi-switches**
|
|
- Développement de scripts Python dédiés à chaque type de switch :
|
|
- HPE
|
|
- Extraction automatique des informations pertinentes à partir des fichiers de log respectifs.
|
|
- display mac-address
|
|
- display arp all
|
|
- display ip routing-table
|
|
- display fib
|
|
- display version
|
|
- display device manuinfo
|
|
- display power
|
|
- display fan
|
|
- display environment
|
|
- boot-loader infomation
|
|
- display irf
|
|
- display irf topology
|
|
- display irf configuration
|
|
- display process cpu slot [master]
|
|
- display process slot [master]
|
|
- display memory
|
|
- display transceiver diagnosis interface
|
|
- display transceiver interface
|
|
- display logbuffer
|
|
- display stp
|
|
- display interface
|
|
- display link-aggregation verbose
|
|
- display current-configuration
|
|
- display saved-configuration
|
|
|
|
2. **Conversion en JSON normalisé**
|
|
- Export des configurations dans un format JSON structuré selon les modèles OpenConfig :
|
|
- `openconfig-system`
|
|
- `openconfig-lldp`
|
|
- `openconfig-relay-agent`
|
|
- `ietf-snmp`
|
|
- `openconfig-vlan`
|
|
- `openconfig-acl`
|
|
- `openconfig-network-instance`
|
|
- `openconfig-interfaces`
|
|
- `openconfig-platform`
|
|
- `openconfig-spanning-tree`
|
|
|
|
3. **Génération de rapport de liens inter-switches**
|
|
- Script Python qui utilise le JSON normalisé pour générer automatiquement une matrice Excel détaillant :
|
|
- les liens entre les switches
|
|
|
|
4. **Génération de rapport des stack**
|
|
- Script Python qui utilise le JSON normalisé pour générer automatiquement une matrice Excel détaillant :
|
|
- les stacks
|
|
|
|
5. **Génération de rapport des interfaces**
|
|
- Script Python qui utilise le JSON normalisé pour générer automatiquement une matrice Excel détaillant :
|
|
- les counters de chaque interface
|
|
|
|
6. **Génération de schéma de l'infrastructure**
|
|
- Script Python qui utilise le JSON normalisé pour générer automatiquement un schéma accessible sur un navigateur détaillant :
|
|
- les liens entre les switches
|
|
|
|
## Utilisation
|
|
|
|
### Pré-requis
|
|
```bash
|
|
cd ..\..\
|
|
python -m venv .venv
|
|
.\.venv\Scripts\activate
|
|
|
|
pip install -r .\src\requirements.txt
|
|
```
|
|
|
|
#### Commandes principales
|
|
```bash
|
|
python3 .\src\main.py hpe .\src\input\backup\ -d -u -i -s
|
|
```
|
|
#### Options
|
|
|
|
| Option | Description |
|
|
|--------|-------------|
|
|
| -o [nom_fichier] | Spécifie le nom du fichier JSON de sortie (optionnel)
|
|
| -u | Génère un rapport Excel des liens inter-switches (optionnel)
|
|
| -s | Génére un rapport Excel des stack (optionnel)
|
|
| -i | Génére un rapport Excel des counters des interfaces (optionnel)
|
|
| -d | Génère un schéma de l'infrastructure des liens inter-switches (optionnel)
|
|
---
|
|
|
|
## Arborescence du projet
|
|
|
|
```bash
|
|
C:.
|
|
├───src
|
|
│ ├───icons # Fichiers de logo pour export_schema_infra
|
|
│ ├───input # Fichiers de logs
|
|
│ ├───modèles # Modèles YANG
|
|
│ ├───output # Fichiers JSON normalisés/Excel matrice de flux
|
|
│ └───scripts # Fichiers python
|
|
│ └───objets
|
|
```
|
|
|
|
## Structure du JSON généré
|
|
|
|
```bash
|
|
.json
|
|
├── switch-device # type de switch (hpe)
|
|
├── openconfig-system
|
|
├── openconfig-lldp
|
|
├── openconfig-relay-agent
|
|
├── ietf-snmp
|
|
├── openconfig-vlan
|
|
├── openconfig-acl
|
|
├── openconfig-network-instance
|
|
├── openconfig-interfaces
|
|
├── openconfig-platform
|
|
└── openconfig-spanning-tree
|
|
```
|
|
|
|
## Auteurs
|
|
|
|
Projet développé par :
|
|
- Julie Chevallier | Computacenter |