Déploiement d’une Stack web avec Docker et load balancer

 

Contexte professionnel 

Dans l’entreprise de développement Superweb, l’équipe technique a mis en place une infrastructure permettant de gérer plusieurs applications web avec un haut niveau de disponibilité. Cette infrastructure est composée de plusieurs serveurs web Nginx répartis derrière un load balancer HAProxy. Ce système doit être capable de gérer une grande quantité de trafic tout en assurant la haute disponibilité des services. De plus, l’équipe souhaite une solution de journalisation des requêtes web, avec une sauvegarde automatique toutes les minutes des logs générés par les serveurs web et le load balancer.

 

fiche de réalisation professionnel 

schéma réseau 

extrait de tp 

extrait de tp 

extrait de tp 

extrait de tp 

extrait de tp 

mise en place du projet 

contenue du fichier docker-compose.yml

contenue du fichier nginx2.conf

Objectifs

• Mettre en place plusieurs conteneurs Nginx en back-end pour simuler un environnement web.
• Configurer un proxy avec HAProxy comme load balancer.
• Simuler une charge pour observer l’équilibrage de charge entre les conteneurs.
• Automatiser la journalisation des logs toutes les minutes.

Compétences travaillées

- Concevoir une solution d’infrastructure réseau

- Installer, tester et déployer une solution d’infrastructure réseau

- Exploiter, dépanner et superviser une solution d’infrastructure réseau

 

La machine utilisé est sur Windows 11, il a été utilisé une machine virtuelle avec VMWARE avec l’image Linux version .....   avant de créer le réseau Docker et les différents serveurs avec docker-compose.  

La connexion à URL http://127.0.0.1:80 renvoie sur le serveur Haproxy qui est un load balancer renvoyant les requêtes sur les serveurs web Nginx à tour de rôle en s’appuyant sur l’algorithme Roundrobin. 

On a procédé à différents test une fois le réseau mis en place (serveurs up, disponibilité des serveurs web, remontée des logs, répartition des charges). 

 On a également mis en place un job automatisé faisant toutes les 15 min une sauvegarde des logs des 3 serveurs via l’utilisation la crontab mise à disposition dans l’environnement Linux. Le but de ces sauvegarde est d’avoir un backup de tous ces logs. 

 

Gestion des accès et sécurisation Active Directory

 

Contexte professionnel 

 

L’entreprise souhaite améliorer la gestion des accès et la sécurité de son annuaire Active Directory. L’objectif est de mettre en place une stratégie de gestion des utilisateurs et des droits d’accès pour limiter les privilèges et renforcer la sécurité des connexions.

 

Fiche de réalisation professionnelle 

Schéma réseau 

serveur AD mise ne place 

IP config PC client 1 

IP config PC client 2 

IP routeur config 

serveur AD config IP 

IP Config / all du serveur AD/DNS

1. Création et gestion des comptes utilisateurs et groupes Active Directory 

-  Mise en place d’une organisation hiérarchique des unités organisationnelles (OU)
- Création de groupes de sécurité et de distribution
-Ajout de comptes utilisateurs avec attribution de droits spécifiques

2. Mise en place de stratégies de groupe (GPO)

- Application de restrictions d’accès aux paramètres système
- Configuration de stratégies de mot de passe renforcées
- Blocage de l’accès à certains logiciels ou sites web

3. Sécurisation des connexions et des ressources réseau

- Activation de l’authentification forte (2FA) pour les comptes administrateurs
- Gestion des droits d’accès aux dossiers partagés
- Implémentation d’une politique de connexion et de verrouillage des sessions

Création d'un site vitrine 

contexte professionnel 

Ce projet avait pour bute la création d'un site vitrine pour un client.

Durant ce projet, nous avons dû trouver une entreprise ou un commerçant. Une fois notre entreprise trouvée, nous sommes allés la démarcher. Elle nous a ensuite fourni un cahier des charges pour la réalisation de notre projet.

outil 

WordPress est un système de gestion de contenu gratuit, libre. Ce logiciel écrit en PHP repose sur une base de données MySQL et MariaDB, et est distribué par la fondation WordPress.org. 

Il permet de créer des sites web sans codeur. On part d'une base et on la modifie et le modèle à notre façon.

réalisation 

 

Pour ce projet, j'ai contacté un artisan kébabier, pour lequel j'ai réalisé un site web. J'avais pour objectif d'améliorer le site actuel en y ajoutant leur histoire, une touche de renouveau , tout en gardant leur authenticité .

Pour ce faire , j'ai réalisé un site vitrine présentant leurs différentes compétences, leurs produits et leur histoire, et bien sûr , leur localisation.

 

Projet API 

Contexte professionnel – Projet de création d'un site web dynamique

 

Dans le cadre de ma première année de BTS SIO, j'ai réalisé un projet de développement web visant à concevoir un site dynamique en HTML, CSS et JavaScript , basé sur une API externe. Ce projet avait pour objectif de mettre en pratique mes compétences en intégration et en interaction avec une API, tout en respectant les bonnes pratiques du développement web.

 

Le site propose une interface utilisateur moderne et réactive, permettant d'afficher et de manipuler des données en temps réel. Grâce à JavaScript , j'ai pu exploiter les informations issues de l'API, les structurer et les rendre accessibles de manière intuitive aux utilisateurs. L'aspect visuel a été travaillé en CSS afin d'assurer une expérience utilisateur fluide et ergonomique.

 

Ce projet m'a permis de renforcer mes compétences en développement, en manipulation d'API et en gestion d'un projet web, tout en respectant un cahier des charges précis.

 

Une API ( Application Programming Interface , ou interface de programmation d'application en français) est un ensemble de règles et de protocoles permettant à des applications ou des services de communiquer entre eux.

                       Page HTML                                      /                                Style CSS                                    /                        Premier page du site 

                        Image du site                                 /                                 Code planet.js                        /                                   WFM_API.html 

Gante : schéma de planification pour le projet