Feature[Translation] : Updating documentation to English
This commit is contained in:
93
README.md
93
README.md
@@ -1,94 +1,93 @@
|
|||||||
# Projet d'Automatisation VXLAN EVPN
|
# VXLAN EVPN Automation Project
|
||||||
|
|
||||||
Ce projet vise à automatiser la création et la gestion d'un laboratoire de test VXLAN EVPN en utilisant ContainerLab, Arista cEOS, Cisco N9Kv, et Netbox. L'automatisation est réalisée principalement grâce à Ansible et des scripts Python.
|
This project aims to automate the creation and management of a VXLAN EVPN test lab using ContainerLab, Arista cEOS, Cisco N9Kv, and Netbox. The automation is primarily achieved through Ansible and Python scripts.
|
||||||
|
|
||||||
🖋️ **_NOTE_**: L'environnement utilisé est un Debian 12 :
|
🖋️ **_NOTE_**: The environment used is Debian 12:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
No LSB modules are available.
|
|
||||||
Distributor ID: Debian
|
Distributor ID: Debian
|
||||||
Description: Debian GNU/Linux 12 (bookworm)
|
Description: Debian GNU/Linux 12 (bookworm)
|
||||||
Release: 12
|
Release: 12
|
||||||
Codename: bookworm
|
Codename: bookworm
|
||||||
```
|
```
|
||||||
|
|
||||||
## Table des matières
|
## Table of Contents
|
||||||
|
|
||||||
1. [Pré-requis](#pré-requis)
|
1. [Prerequisites](#prerequisites)
|
||||||
2. [Installation](#installation)
|
2. [Installation](#installation)
|
||||||
3. [Usage](#usage)
|
3. [Usage](#usage)
|
||||||
4. [Structure du projet](#structure-du-projet)
|
4. [Project Structure](#project-structure)
|
||||||
5. [Contributions](#contributions)
|
5. [Contributions](#contributions)
|
||||||
6. [Licence](#licence)
|
6. [License](#license)
|
||||||
7. [Sources](#sources)
|
7. [Sources](#sources)
|
||||||
|
|
||||||
## Pré-requis
|
## Prerequisites
|
||||||
|
|
||||||
- Docker, ContainerLab et Ansible installés.
|
- Docker, ContainerLab, and Ansible installed.
|
||||||
- Images pour Arista cEOS, Cisco N9Kv et Linux Alpine téléchargées.
|
- Images for Arista cEOS, Cisco N9Kv, and Linux Alpine downloaded.
|
||||||
- Python 3.11 avec les bibliothèques nécessaires (voir `requirements.txt`).
|
- Python 3.11 with the necessary libraries installed (see `requirements.txt`).
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
1. **Clonez le dépôt** :
|
1. **Clone the Repository**:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/MasqAs/projet-vxlan-automation.git
|
git clone https://github.com/MasqAs/vxlan-evpn-automation-project.git
|
||||||
cd projet-vxlan-automation
|
cd vxlan-evpn-automation-project
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Installez les dépendances Python** :
|
2. **Install Python Dependencies**:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install -r requirements.txt
|
pip install -r requirements.txt
|
||||||
```
|
```
|
||||||
|
|
||||||
3. **(Optionnel) Configurez les variables** :
|
3. **Install Depedencies**:
|
||||||
|
|
||||||
Adaptez les variables dans `ansible/vars/main.yml` selon vos besoins.
|
The instructions are described here : [Installation Documentation](./documentation/INSTALLATION.md)
|
||||||
|
|
||||||
4. **Lancez l'automatisation** :
|
4. **Start the Automation**:
|
||||||
|
|
||||||
Suivez les étapes dans [Usage](#usage) pour démarrer votre lab.
|
Follow the steps in [Usage](#usage) to start your lab.
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
1. **Mise en place du lab** :
|
1. **Set Up the Lab**:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo containerlab deploy --topo containerlab/lab_definition.yml
|
sudo containerlab deploy --topo containerlab/lab_definition.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
2. **Configurer Netbox** :
|
2. **Configure Netbox**:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
ansible-playbook ansible/playbooks/deploy_netbox.yml
|
ansible-playbook ansible/playbooks/deploy_netbox.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
3. **(Autres étapes)** :
|
3. **(Additional Steps)**:
|
||||||
|
|
||||||
Suivez les instructions supplémentaires dans `documentation/USAGE.md`.
|
Follow the additional instructions in `documentation/USAGE.md`.
|
||||||
|
|
||||||
## Structure du projet
|
## Project Structure
|
||||||
|
|
||||||
- `/ansible/` - Contient tous les playbooks, rôles, variables, et inventaires d'Ansible.
|
- `/ansible/` - Contains all Ansible playbooks, roles, variables, and inventories.
|
||||||
- `/python-scripts/` - Scripts Python pour diverses tâches.
|
- `/python-scripts/` - Python scripts for various tasks.
|
||||||
- `/containerlab/` - Définitions et configurations pour ContainerLab.
|
- `/containerlab/` - Definitions and configurations for ContainerLab.
|
||||||
- `/configs/` - Configurations initiales pour les équipements réseau.
|
- `/configs/` - Initial configurations for network equipment.
|
||||||
- `/documentation/` - Documentation détaillée du projet.
|
- `/documentation/` - Detailed project documentation.
|
||||||
- `/suzieq/` - Fichiers spécifiques à SuzieQ.
|
- `/suzieq/` - Files specific to SuzieQ.
|
||||||
|
|
||||||
Pour plus de détails, veuillez consulter `documentation/STRUCTURE.md`.
|
For more details, please refer to `documentation/STRUCTURE.md`.
|
||||||
|
|
||||||
## Contributions
|
## Contributions
|
||||||
|
|
||||||
Les contributions sont les bienvenues ! Veuillez soumettre des pull requests ou ouvrir des issues pour toute suggestion ou correction.
|
Contributions are welcome! Please submit pull requests or open issues for any suggestions or corrections.
|
||||||
|
|
||||||
## Licence
|
## License
|
||||||
|
|
||||||
Ce projet est sous licence APACHE. Voir le fichier [LICENSE](LICENSE) pour plus d'informations.
|
This project is licensed under the APACHE license. See the [LICENSE](LICENSE) file for more information.
|
||||||
|
|
||||||
## Sources
|
## Sources
|
||||||
|
|
||||||
- [ContainerLab](https://containerlab.dev/manual/kinds/ext-container/)
|
- [ContainerLab](https://containerlab.dev/manual/kinds/ext-container/)
|
||||||
- [The ACSII Construct](https://www.theasciiconstruct.com/post/multivendor-evpn-vxlan-l2-overlay/)
|
- [The ASCII Construct](https://www.theasciiconstruct.com/post/multivendor-evpn-vxlan-l2-overlay/)
|
||||||
@@ -1,66 +1,65 @@
|
|||||||
## Table des matières
|
## Table of Contents
|
||||||
|
|
||||||
1. [Installation de ContainerLab](#installation-de-containerlab)
|
1. [Installing ContainerLab](#installing-containerlab)
|
||||||
2. [Installation de vrnetlab](#installation-de-vrnetlab)
|
2. [Installing vrnetlab](#installing-vrnetlab)
|
||||||
3. [Installation de Docker](#installation-de-docker)
|
3. [Installing Docker](#installing-docker)
|
||||||
|
|
||||||
## Installation de ContainerLab
|
## Installing ContainerLab
|
||||||
|
|
||||||
Containerlab peut être installé à l'aide du script d'installation qui détecte le type de système d'exploitation et installe le paquetage approprié :
|
ContainerLab can be installed using the installation script that detects the operating system type and installs the appropriate package:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# télécharger et installer la dernière version (peut nécessiter sudo)
|
# download and install the latest version (may require sudo)
|
||||||
bash -c "$(curl -sL https://get.containerlab.dev)"
|
bash -c "$(curl -sL https://get.containerlab.dev)"
|
||||||
|
|
||||||
# avec wget
|
# with wget
|
||||||
bash -c "$(wget -qO - https://get.containerlab.dev)"
|
bash -c "$(wget -qO - https://get.containerlab.dev)"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Installation de vrnetlab
|
## Installing vrnetlab
|
||||||
|
|
||||||
Vrnetlab place une VM normale dans un conteneur et la rend exécutable comme s'il s'agissait d'une image de conteneur.
|
Vrnetlab places a VM inside a container and makes it executable as if it were a container image.
|
||||||
Pour ce faire, vrnetlab fournit un ensemble de scripts qui construisent l'image du conteneur à partir d'un disque VM fourni par l'utilisateur.
|
To do this, vrnetlab provides a set of scripts that build the container image from a VM disk provided by the user.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# mise à jour et installation des dépendances
|
# update and install dependencies
|
||||||
sudo apt update
|
sudo apt update
|
||||||
sudo apt -y install python3-bs4 sshpass make
|
sudo apt -y install python3-bs4 sshpass make
|
||||||
sudo apt -y install git
|
sudo apt -y install git
|
||||||
|
|
||||||
# se déplacer dans /opt et cloner le projet
|
# move to /opt and clone the project
|
||||||
sudo cd /opt && sudo git clone https://github.com/hellt/vrnetlab
|
sudo cd /opt && sudo git clone https://github.com/hellt/vrnetlab
|
||||||
|
|
||||||
# optionnel : modification des droits du répertoire
|
# optional: change the directory permissions
|
||||||
sudo chown -R $USER:$USER vrnetlab
|
sudo chown -R $USER:$USER vrnetlab
|
||||||
```
|
```
|
||||||
|
|
||||||
## Installation de docker
|
## Installing Docker
|
||||||
|
|
||||||
Il s'agit de moteur de conteneurisation utilisé par ContainerLab
|
This is the containerization engine used by ContainerLab.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Mise à jour et installation des dépendances
|
# Update and install dependencies
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install ca-certificates curl gnupg
|
sudo apt-get install ca-certificates curl gnupg
|
||||||
|
|
||||||
# Ajout de la clef GPG
|
# Add Docker's official GPG key:
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install ca-certificates curl gnupg
|
||||||
sudo install -m 0755 -d /etc/apt/keyrings
|
sudo install -m 0755 -d /etc/apt/keyrings
|
||||||
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
|
||||||
sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
sudo chmod a+r /etc/apt/keyrings/docker.gpg
|
||||||
|
|
||||||
# Ajout du dépôt
|
# Add the repository to Apt sources:
|
||||||
echo \
|
echo \
|
||||||
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
|
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
|
||||||
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
|
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
|
||||||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||||
|
|
||||||
# Mise à jour et installation
|
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Sources
|
## Sources
|
||||||
- [InsContainerLab](https://containerlab.dev/install/)
|
- [ContainerLab](https://containerlab.dev/install/)
|
||||||
- [vrnetlab](https://containerlab.dev/manual/vrnetlab/#vrnetlab)
|
- [vrnetlab](https://containerlab.dev/manual/vrnetlab/#vrnetlab)
|
||||||
- [BiranLinkLetter](https://www.brianlinkletter.com/2019/03/vrnetlab-emulate-networks-using-kvm-and-docker/)
|
- [BrianLinkLetter](https://www.brianlinkletter.com/2019/03/vrnetlab-emulate-networks-using-kvm-and-docker/)
|
||||||
- [Docker Engine for Debian](https://docs.docker.com/engine/install/debian/)
|
- [Docker Engine for Debian](https://docs.docker.com/engine/install/debian/)
|
||||||
Reference in New Issue
Block a user