• Aucun résultat trouvé

Mise en place de redondance et de load-balancing

N/A
N/A
Protected

Academic year: 2022

Partager "Mise en place de redondance et de load-balancing"

Copied!
15
0
0

Texte intégral

(1)

Mise en place de redondance et de load-balancing

Cluster sous Debian et load-balancing avec HAproxy

Par Guillaume Droulin

2021 - 2022

(2)

Compétences abordées dans ce document

Gérer le patrimoine informatique ;

Développer la présence en ligne de l’organisation ;

Travailler en mode projet ;

• Mettre à disposition des utilisateurs un service informatique.

Table des matières

1. Introduction ... 3

a. Contexte ... 3

b. Etat de l’art ... 4

2. Gestion de projet ... 6

a. Ressources humaines ... 6

b. Ressources matérielles ... 6

c. Ressources financières ... 6

3. Architecture ... 7

a. Modélisation de l’architecture ... 7

b. Explication ... 8

4. Mission ... 9

a. Réalisation de la mission ... 9

5. Amélioration continue ... 14

a. Maintien en conditions opérationnelles ... 14

b. Axes d’amélioration possibles ... 14

6. Conclusion ... 15

a. Retour sur expérience ... 15

(3)

3

1. Introduction a. Contexte

La société Herboren, dont le siège est à Paris, est spécialisée dans la cosmétique de luxe depuis 1952. Grâce à ses 27 employés, elle a su imposer sa notoriété en termes de crème de jour en basant sa campagne publicitaire sur un argument, la renaissance. Aujourd’hui, forte de ses 70 ans d’expérience, elle propose 3 gammes de crème à travers toute l’Europe et à un public essentiellement féminin, ce qui fait de son marché, l’un des plus petits de l’univers du luxe à l’échelle mondiale, aussi, elle ne peut souffrir d’un manque de visibilité, que ce soit sur les réseaux sociaux, affiches publicitaires, ou sur Internet.

Techniquement, la société Herboren dépend de ses prestataires, que ce soit pour la conception des tubes de crème, l’acheminement vers les distributeurs, etc. Cette externalisation est également réalisée pour la partie informatique, ce qui permet à Herboren de se recentrer sur son cœur de métier. Bien que cette société fasse confiance à ses prestataires, à l’instar de beaucoup d’autres, elle n’en est pas moins dépendante, ce qui peut parfois engendrer des disfonctionnements dramatiques d’un point de vue financier. C’est d’ailleurs ce qu’il s’est passé avec son prestataire informatique.

Pour promouvoir son nom et sa marque, la société Herboren dispose d’un site Web hébergé dans ses locaux mais administré et maintenu par son prestataire Web, Altana, ce dernier n’a pas répondu aux obligations de moyens précisés dans le contrat qui le lie à Herboren, ce manquement a eu pour effet une perte temporaire des services Web et une perte définitive des données que contenait le serveur Web. Enfin, ce manquement a entrainé une perte financière de 5% du CA annuel de la société Herboren, ainsi, elle décide de mettre fin au contrat qui la lie à Altana pour faute grave.

6 mois plus tard, Herboren est remontée en selle et sort grandie de cette expérience.

Déterminée à augmenter son CA pour pallier les pertes des derniers mois, elle fait appel à vous pour proposer une solution qui, en cas de disfonctionnement de son Système d’Information, lui permettrait d’assurer une continuité de service vis-à-vis de ses clients.

(4)

4

b. Etat de l’art

Qu’est-ce que la « redondance » ?

Dans le domaine informatique, la redondance est utilisée pour qualifier la duplication de composants ou de données essentielles d'un système, avec pour objectif d'améliorer sa fiabilité. Il peut s'agir d'équipements, de données, de logiciels, d'éléments de liaisons, etc.

Grâce aux doublons, une entreprise peut garantir les fonctionnalités de son centre informatique dans l'éventualité où un composant présenterait un dysfonctionnement. Quand il s'agit de données, la duplication est réalisée à des fins de sauvegarde ou de restauration.

Etude des solutions :

La redondance du système informatique peut être effectuée à divers niveaux selon les besoins de l’entreprise. On doit dans un premier temps évaluer l'importance de la conservation des données ou de la duplication de matériel. Cela doit être fait en tenant compte de l'importance de l'élément informatique (sa criticité) et des préjudices que pourraient causer la perte ou le dysfonctionnement de celui-ci. Cette analyse préalable permet de choisir le système de redondance le plus adapté entre :

• La redondance des disques durs ;

• La redondance des serveurs ;

• La redondance multisite.

Pour effectuer la redondance d’un appareil, tout dépend donc du système adapté à celui-ci ainsi qu’au type de matériel. Par exemple, la méthode de redondance pour un routeur et un serveur web sera la même ; mais la mise en place sera différente (protocoles ou services différents pour chaque matériel spécifique)

Nous réalisons également des réplicas, La réplication de données, elle, répond à une problématique de perte de service. Lors d’une interruption de service (site web, serveur de messagerie, plateforme collaborative d’entreprise, etc.) il va être possible d’opérer un basculement des applicatifs touchés vers un autre serveur ou un autre site d’hébergement données, géographiquement éloigné du site primaire.

Logiciels de sauvegarde VEEAM ALTARO

Caractéristiques • Reconnu mondialement

• Modulaire

• Simple et adaptable

• Compatibilité

• Simple d’utilisation

• Moins onéreux Il faut savoir enfin que la notion de réplication de données est étroitement liée à celles de plan de reprise d’activité (PRA) et de plan de continuité d’activité (PCA).

(5)

5 Qu’est-ce que le « Load-balancing » ?

Le load balancing (répartition des charges en français) est une solution informatique adaptée aux petits budgets. La technique consiste à répartir les charges sur différents appareils d’un même réseau. Elle permet notamment aux serveurs de sites Internet à forte audience de ne pas se retrouver surchargés. Dans le load balancing, les multiples requêtes sont distribuées sur plusieurs serveurs. Il devient alors inutile d’investir dans un unique appareil extrêmement puissant. Il suffit de multiplier les dispositifs peu coûteux pour obtenir la même résistance à la charge.

Les avantages du load balancing sont principalement l’amélioration du temps de réponse. La technique permet également de toujours afficher les informations demandées par l’internaute, et ce, même en cas de panne de l’un des serveurs. Les données sont plus sécurisées étant donné que les fichiers se trouvent sur des appareils annexes, et que seul le load balancer est accessible depuis l’extérieur. Le principal inconvénient est clairement la complexité de mise en place. Enfin, l’inter connectabilité des appareils fait que les problèmes peuvent se transmettre de machine en machine. Le load balancing est une technique de répartition des charges complexe, particulièrement intéressante en termes de sécurité, de coût et d’amélioration du temps de réponse

Etude des solutions :

Le Load-Balancing bénéficie de 3 types d’équilibreur de charge ;

Basé sur le matériel ;

Fournisseurs populaires Caractéristiques

F5 Onéreux mais fournit un contrôle total

TP-Link Onéreux mais fournit un contrôle total

Barracuda Onéreux mais fournit un contrôle total

Basé sur le cloud ;

Fournisseurs populaires Caractéristiques

AWS Reconnu mondialement et utilisé par de

grande entreprises, abordable et complet

Google Cloud Reconnu mondialement et utilisé par de

grande entreprises, abordable et complet

Azure Reconnu mondialement et utilisé par de

grande entreprises, abordable et complet

Basé sur le logiciel ;

Fournisseurs populaires Caractéristiques

Seesaw Utilisé par Google, système basé sur linux.

LoadMaster by KEMP Reconnu pour être utilisé chez de grandes entreprises, gratuit et offre de nombreuses fonctionnalités.

HAProxy Utilisé par des centaines d’entreprises

reconnues mondialement, version gratuite avec beaucoup de fonctionnalités

(6)

6

2. Gestion de projet

Dans ce projet, j’ai segmenté les étapes par « tâches » avec une planification. Du début à la fin du projet on aura donc un suivi complet avec la possibilité de modifier les dates limites en cas de retard ou de modification demandé par le client.

a. Ressources humaines

Pour la mise en place de la redondance du serveur web de l’entreprise DUBOULON, un seul technicien systèmes & réseaux se penchera sur la mise en place du dispositif. Il sera supervisé par son Administrateur Systèmes & Réseaux à distance en cas de besoin.

b. Ressources matérielles

Pour le déploiement de la solution, le technicien aura à sa disposition :

• 2x Serveurs Debian virtualisés

• ISO Debian Version 11.2.0

Il sera également équipé de son matériel personnel afin de pouvoir effectuer des recherches ou des tests depuis le réseau local.

c. Ressources financières

Le coût financier sera moindre, en effet Debian est une distribution Open Source ce qui permet d’éliminer l’achat de licence.

Nous allons ici installer nos serveurs web sur des hyperviseurs déjà présent dans la société ce qui permet également d’amoindrir le coût financier.

(7)

7

3. Architecture

a. Modélisation de l’architecture

Avant toute chose, il est important de mettre en place un schéma permettant de visualiser notre infrastructure :

Légende : le réseau local est en 192.168.0.0 255.255.255.0 ; le lien virtuel permettra la redondance. Le serveur déjà en place fournira un adressage IP grâce au DHCP depuis lequel nous pourrons effectuer une réservation.

Pour la mise en place de notre équilibreur de charge, nous allons devoir spécifier des adresses IP virtuelles sur chaque serveur :

SRV1 SRV2 Proxy (load-balancer)

Ens33 (dhcp) 192.168.50.40/24 192.168.50.41 / 24 192.168.50.43/24 Ens33:1 192.168.50.42 /24 192.168.50.42 /24

(8)

8

b. Explication

La mise en place du lien virtuel permet la redondance du site internet. En effet, si le serveur « maître » SRV1 cesse de fonctionner pour une raison quelconque, SRV2 qui est le serveur « esclave » prendra le relai automatiquement ce qui empêchera un arrêt de production.

La mise en place de load-balancing va permettre de répartir efficacement les charges sur les 2 serveurs. Ce dispositif permet une meilleure disponibilité des services et de se prémunir d’un flux important de visiteur. Voici un schéma permettant de visualiser le fonctionnement :

Lorsqu’un utilisateur effectue une recherche vers notre site web hébergé sur « Web01 » et « Web02 », il passe d’abord par le load-balancer (HAproxy par exemple) qui va ensuite rediriger le client vers l’un des deux serveurs.

(9)

9

4. Mission

a. Réalisation de la mission

Partie Redondance

Pour commencer, nous allons installer en premier lieu Corosync, Pacemaker & Crmsh sur nos deux serveurs Web Debian.

• Corosync est un système de communication de groupe avec des fonctionnalités pour la mise en œuvre de la Haute disponibilité

• Pacemaker sert à coordonner le démarrage et la reprise de services interdépendants dans un groupe de machines

• Crmsh est un shell de gestion de cluster

Avant l’installation de ces services, nous allons mettre à jour le fichier hosts des deux serveurs :

Nous pouvons ensuite installer nos services :

On va ensuite générer la clé d’authentification pour la communication de corosync entre les deux serveurs, sur SRV1 nous allons générer la clé :

Une fois la clé récupérée,

(10)

10

Nous pouvons maintenant nous rendre sur SRV2, se rendre dans le fichier corosync et créer le fichier « authkey » en insérant la clé dedans.

Et nous pouvons maintenant insérer notre clé d’authentification.

On va maintenant éditer la configuration de corosync.conf sur les 2 serveurs web

On va surtout éditer la partie « nodelist » et renommer le nom de notre cluster

Nous allons maintenant démarrer les services corosync et pacemaker :

Vérifier l’état du cluster :

(11)

11

On va maintenant configurer les interfaces virtuelles entre nos 2 serveurs :

Il est maintenant temps de tester notre redondance ! Pour faire simple, nos deux serveurs sont actuellement allumés, si je tape 192.168.0.50 dans mon navigateur je tombe sur SRV1

Simulons une panne de courant sur le SRV1 pour voir si notre serveur de secours prend le relais

Une fois le serveur éteint on rafraîchit la page de navigation (il peut y avoir 10 à 20 secondes le temps que SRV2 prenne le relais)

Et voilà ! Nous avons mis en place un serveur web avec de la redondance en cas de panne.

Actuellement le fichier du site web dans le serveur apache n’est pas configuré, nous avons mis

« Hello World 1 » et « Hello World 2 » afin de pouvoir vérifier le bon fonctionnement de la haute disponibilité mise en place. De plus, le client ne nous a pas encore fournit les fichiers html, css, etc... Le site sera mis en place une fois les fichiers reçus.

(12)

12

Partie Répartition de charge (load-balancng)

Nous allons créer un nouveau serveur sous Debian 11, il servira de front-end (il va recevoir les requêtes puis les distribuer aux serveurs en back-end). Imaginez que vous avez un site à forte affluence, et que vous n’avez qu’un seul serveur, celui-ci risque de flancher assez vite. Avec un load-balancer, celui-ci va récupérer tout le trafic et le dispatcher sur plusieurs serveurs web. De cette manière, la charge est moins lourde.

Rappel de l’adressage :

SRV1 SRV2 Proxy (load-balancer)

Ens33 (dhcp) 192.168.50.40 / 24 192.168.50.41 / 24 192.168.50.43 / 24 Ens33:1 192.168.50.42 / 24 192.168.50.42 / 24

Pour commencer, une fois que notre serveur a ses configurations de base (système à jour, adressage réseau fixe) il faut renseigner sur chaque serveur dans le fichier /etc/hosts les différents serveurs :

Ensuite, nous allons pouvoir installer sur le serveur load-balancer le paquet HAProxy

• HAProxy est une solution libre, fiable et très performante de répartition de charge de niveau 4 (TCP) et 7 (HTTP). Elle est particulièrement adaptée aux sites web fortement chargés. Il requiert peu de ressource et peu gérer plusieurs milliers de connexions simultanées.

On va ensuite se rendre dans le fichier de configuration

(13)

13

Une fois les modifications effectuées, il faut redémarrer les services de HAProxy : On vérifie ensuite son statut :

Pour tester notre solution, il existe des entreprises qui proposent des logiciels permettant d’analyser les équilibreurs de charge. On peut par exemple citer OpManager.

Désormais, lorsqu’un utilisateur souhaite accéder à notre site, il passera tout d’abord par notre serveur proxy load-balancer puis notre algorithme round-robin distribuera les requêtes vers les serveurs associés en équilibrant la charge sur les 2.

« L’algorithme round-robin est la méthode la plus simple pour équilibrer la charge des serveurs ou pour fournir une tolérance aux pannes simple. Plusieurs serveurs identiques sont configurés pour fournir précisément les mêmes services ou applications. Tous sont configurés pour utiliser le même nom de domaine Internet, mais chacun a une adresse IP unique. L'équilibreur de charge dispose d'une liste de toutes les adresses IP uniques associées au nom de domaine Internet.

Lorsque des demandes de sessions sur les serveurs associés au nom de domaine Internet sont reçues, elles sont attribuées de manière aléatoire ou séquentielle en rotation. Par exemple, la

(14)

14

première demande obtient l'adresse IP du serveur 1, la deuxième demande obtient l'adresse IP du serveur 2, et ainsi de suite, les demandes recommençant au serveur 1 lorsque tous les serveurs ont reçu une demande d'accès au cours d'un cycle. »

5. Amélioration continue

a. Maintien en conditions opérationnelles

Afin d’assurer la continuité de service du site web, il serait judicieux d’effectuer des vérifications périodiques des mises à jour pour les serveurs web ainsi que de vérifier que la journalisation des événements est fonctionnelle. La vérification des logs peut permettre au technicien ou à l’administrateur réseau de comprendre au mieux les disfonctionnements. Également, nos serveurs web étant virtualisé il sera nécessaire d’assurer l’entretien de celui-ci, mais également d’effectuer des clichés instantanés ainsi que des sauvegardes des VM sur un site externe.

b. Axes d’amélioration possibles

Nous ne l’avons pas abordé ici, mais la redondance et le load-balancing (équilibrage de charge) ne suffisent pas à assurer continuité de service dans certains cas. Il y a plusieurs axes à mettre en place en parallèle afin de s’assurer au maximum de ne pas se retrouver un jour au pied du mur :

• Mise en place de sauvegarde local et externalisé ;

• Déploiement d’un autre serveur web en externalisé (Cloud) ;

• Accentuer la redondance dans l’infrastructure réseau (en effet, nos serveurs fonctionnent mais si un autre équipement du réseau non-redondé ne fonctionne pas, la continuité de service ne pourra être assuré sauf si nous avons mis en place un serveur web externalisé) ;

• Assurer la redondance du matériel physique (plusieurs alimentations, onduleurs, etc…) ;

• Réaliser un tableau d’analyse d’impact permet de se prémunir des causes potentiellement dangereuses pour la continuité de service (tout ce qui peut y nuire).

(15)

15 Exemple d’analyse d’impact :

Indolores Limités Graves Dramatiques

Improbables • Panne d’un

des deux serveurs

• Perte de sauvegarde

• Ransomware

• Coupure du lien fibre

• Sauvegarde non

fonctionnelle

Occasionnels • Mise à jour

du système

• Câble défaillant

• Panne de courant

• Panne du FAI

• Erreur lors d’une sauvegarde

• Tentative d’intrusion

• Surchauffe du switch

Courants • Erreur

technique

Très courants • Erreur

humaine

6. Conclusion

a. Retour sur expérience

Le déploiement de ce genre de dispositif au cours de ma période de formation m’a permis de saisir avec plus de conviction les enjeux d’un système d’information. En effet, j’ai pu grâce à ce projet saisir les conséquences d’un arrêt de service au sein d’une société (pertes

financières, perte de clients, réputation de l’entreprise, etc..).

J’ai donc pu acquérir de nouvelles compétences me permettant de pallier ce genre de problème mais également les méthodes nécessaires afin de se préparer au mieux à ce genre d’incident.

Références

Documents relatifs

Utilisation simulateur réseau - page12 - Thierry LANCELOT 15 - Pour cela : Sélectionner la carte réseau de la Station3 et renseigner la.

le PRTG Network Monitor de Paessler, réagit im- médiatement aux moindres petits changements dans le trafic réseau ainsi qu’aux dysfonctionnements des appareils ou des

facteurs qui ne sont guère interprétables, à savoir les facteurs canoni- ques ou les facteurs principaux, mais non pas des facteurs Varimax ou d’autres facteurs

L’initiative écossaise pour la gestion du Vison d’Amérique (SMI, Scottish mink initiative ) est un projet partenarial entre le fonds pour les rivières et la pêche en Écosse (

On estime la matrice de covariance par un estimateur RMCD et on obtient les param`etres de l’analyse de la redondance ainsi que leurs fonctions d’influence.. On compare ces

Dans cette section on obtient la fonction d’influence du S-estimateur de pI lorsque la population suit une loi Em(03BC, V) et on réalise qu’elle est

Finalement, la section 9 contient une étude expérimentale comparant le test construit avec l’indice de redondance basé sur les rangs et deux autres compétiteurs,.. un

12/ Activer le serveur DNS sur Server1 et saisir les noms des deux machines associées à leur adresse IP respective.. 13/ Refaire un test