Comment le logiciel Evidian SafeKit met en œuvre simplement l'équilibrage de charge IIS et la haute disponibilité sans boîtiers réseaux, ni serveurs proxy dédiés

Comment Evidian SafeKit met en œuvre l'équilibrage de charge Windows et la haute disponibilité

Evidian SafeKit apporte l'équilibrage de charge réseau et la haute disponibilité à IIS (Internet Information Services pour Windows). Cet article explique comment mettre en œuvre rapidement un cluster IIS avec équilibrage de charge sans boîtiers réseaux, ni serveurs proxy dédiés au load balancing. SafeKit est installé directement sur les serveurs IIS. Le module de haute disponibilité iis_farm.safe et un essai gratuit sont offerts dans le tab Installation ci-dessous.

Notez que vous pouvez mettre en œuvre avec le même produit la réplication en temps réel et le basculement de l'application back-end comme Microsoft SQL Server, PostgreSQL ou d'autres applications : voir des exemples de modules miroirs ici.

Cette solution de clustering est reconnue comme la plus simple à mettre en œuvre par nos clients et partenaires. C'est également une solution complète qui résout les pannes matérielles (20% des problèmes) incluant la panne complète d'une salle informatique, les défaillances logicielles (40% des problèmes) incluant le passage d'update serveur par serveur et les erreurs humaines (40% des problèmes) grâce à sa simplicité d'administration.

Sur la figure précédente, l'application IIS tourne sur les 3 serveurs. Les utilisateurs sont connectés à une adresse IP virtuelle qui est configurée localement sur chaque serveur de la ferme.

Le trafic du réseau à destination de l'adresse IP virtuelle est reçu par l'ensemble des serveurs. Puis ce trafic est distribué entre les serveurs grâce à un filtre chargé dans le noyau du système d'exploitation de chaque serveur.

L'algorithme de load balancing dans le filtre est basé sur l'identité des paquets client (adresse IP client, port TCP client). Suivant l'identité du paquet client en entrée, seul un filtre dans un serveur accepte le paquet ; les autres filtres dans les autres serveurs le rejettent.

Une fois un paquet accepté par le filtre sur un serveur, seuls le CPU et la mémoire de ce serveur sont utilisés par l'application IIS qui répond à la requête du client. Les messages de retour de l'application IIS sont envoyés directement du serveur vers le client.

Lorsqu'un serveur est défaillant, le protocole de gestion du groupe des serveurs en vie reconfigure les filtres pour redistribuer le trafic vers les serveurs disponibles.

Installation de SafeKit pour l'équilibrage de charge de IIS avec haute disponibilité

Installation du package sur Windows

  • Installez la version gratuite de SafeKit sur 2 nœuds Windows (ou plus) avec les services IIS installés sur les deux nœuds
  • Téléchargez le module Windows

    Le module contient les fichiers userconfig.xml, start_both et stop_both décrits dans le tab Internes
  • Mettez iis_farm.safe sous C:\safekit\Application_Modules\demo\ (créez le répertoire demo s'il n'existe pas)
  • Pour ouvrir le pare-feu Windows, sur les deux nœuds démarrez une ligne de commande en tant qu'administrateur, allez sous C:\safekit\private\bin et tapez .\firewallcfg.cmd add
  • Pour un boot et un shutdown propre de SafeKit, sur les deux nœuds démarrez une ligne de commande en tant qu'administrateur, allez sous C:\safekit\private\bin et tapez .\addStartupShutdown.cmd

Continuez avec le tab Configuration

Différentiateurs de la solution de haute disponibilité SafeKit par rapport à la concurrence

Différenciateurs clés d'un cluster ferme avec équilibrage de charge et reprise sur panne

Cluster ferme d'Evidian SafeKit avec load balancing et reprise sur panne

Pas de load balancer, ni de serveur proxy dédié, ni d'adresse Ethernet multicast spéciale No load balancer or dedicated proxy servers

Like   La solution ne nécessite pas de load balancer, ni de serveur proxy en amont de la ferme pour implémenter le load balancing. SafeKit est installé directement sur les serveurs applicatifs à load balancer. Le load balancing est basé sur une adresse IP virtuelle/adresse MAC Ethernet standard et fonctionne avec des serveurs physiques et des machines virtuelles sur Windows et Linux sans configuration réseau spéciale

Dislike  Ce n'est pas le cas avec les load balancers réseau

Dislike  Ce n'est pas le cas avec les proxys dédiés sur Linux

Dislike  Ce n'est pas le cas avec une adresse Ethernet multicast spéciale sur Windows

Toutes les fonctionnalités de clustering All clustering features

Like   La solution inclut toutes les fonctionnalités de clustering : adresse IP virtuelle, load balancing sur adresse IP client ou sur sessions, surveillance des défaillance serveurs/réseaux/logicielles, redémarrage automatique de IIS avec un temps de reprise rapide, une option de réplication avec un module miroir

Dislike  Ce n'est pas le cas avec les autres solutions de load balancing. Elles sont capables de réaliser le load balancing mais elle n'inclut pas une solution de clustering complète avec des scripts de redémarrage et un redémarrage automatique de IIS en cas de défaillance. Elles n'offrent pas l'option de réplication

Like   La configuration du cluster est très simple et réalisée au moyen du module applicatif iis_farm.safe. Il n'y a pas de contrôleur de domaine et d'Active Directory à configurer sur Windows. La solution fonctionne sur Windows et Linux

Like   D'autres services et de multiples adresses IP virtuelles peuvent être ajoutés au module iis_farm.safe pour compléter la solution de haute disponibilité SafeKit / IIS

Sites distants Remote sites

Like   Si les serveurs sont connectés au même réseau IP via un réseau local étendu entre des sites distants, l’adresse IP virtuelle de SafeKit fonctionne avec un équilibrage de charge au niveau 2

Like   Si les serveurs sont connectés à des réseaux IP différents entre des sites distants, l'adresse IP virtuelle peut être configurée au niveau d'un load balancer. SafeKit propose un "health check": le load balancer est configuré avec une URL gérée par SafeKit qui renvoie OK sur les serveurs UP et NOT FOUND sinon. Cette solution est implémentée pour SafeKit dans le Cloud mais elle peut être également mise en œuvre avec un load balancer sur site. Ainsi, vous pouvez profiter de toutes les fonctionnalités de clustering de SafeKit, y compris une administration facile du cluster via la console Web de SafeKit

Solution de haute disponibilité uniforme Uniform high availability solution

Like  SafeKit implémente un cluster ferme avec load balancing et reprise sur panne. Mais il implémente aussi un cluster miroir avec réplication et reprise sur panne. Ainsi une architecture N-tiers peut-être rendue hautement disponible et load balancée avec la même solution sur Windows et Linux (même installation, configuration, administration avec la console SafeKit ou avec les commandes en ligne). Ceci est unique sur le marché

Dislike  Ce n'est pas le cas avec une architecture mixant des technologies différentes pour le load balancing, la réplication et la reprise sur panne

Comparaison d'architectures de haute disponibilité

Fonctionnalité

Cluster SafeKit

Autres clusters

Cluster logiciel vs cluster matériel
Plus d'information...
Un cluster simple avec SafeKit installé sur deux serveurs
Like  Un cluster logiciel simple avec le package SafeKit installé sur deux serveurs
Cluster matériel avec stockage externe Boîtiers de load balancing ou serveurs proxy dédiés

Dislike  Un cluster matériel complexe avec du stockage externe ou des boîtiers de load balancing
Cluster de type "shared nothing"" vs cluster à disque partagé
Plus d'information...
SafeKit est un cluster de type shared-nothing: simple à déployer même dans des sites distants
Like  SafeKit est un cluster sans partage de type "shared-nothing": simple à déployer même sur des sites distants
Un cluster à disque partagé est complexe à déployer
Dislike  Un cluster à disque partagé est complexe à déployer
Haute disponibilité applicative vs Haute disponibilité de machines virtuelles complètes
Plus d'information...

Like  La haute disponibilité applicative supporte les pannes matérielles et logicielles avec un temps de reprise rapide (RTO autour d'1 mn ou moins)
Upgrade en douceur de l'application et de l'OS possible serveur par serveur (les versions N et N+1 peuvent coexister)
La haute disponibilité de machines virtuelles (VM) complètes supporte seulement les pannes matérielles avec un reboot de la VM et un temps de reprise indéfini
Dislike  La haute disponibilité de machines virtuelles complètes (VM) supporte seulement les pannes matérielles avec un reboot de la VM et un temps de reprise dépendant du reboot de l'OS.
Upgrade en douceur impossible
Haute disponibilité vs tolérance aux fautes SafeKit high availability vs fault-tolerance

Like  Aucun serveur dédié. Chaque serveur peut être le serveur de reprise de l'autre serveur.
Exception logicielle avec redémarrage dans un autre environnement OS.
Upgrade en douceur de l'application et de l'OS possible serveur par serveur (les versions N et N+1 peuvent coexister)
Fault tolerance system

Dislike  Serveur secondaire dédié à l'exécution de la même application synchronisée au niveau instruction.
Exception logicielle sur les 2 serveurs en même temps.
Upgrade en douceur impossible
Réplication synchrone vs réplication asynchrone
Plus d'information...

Like  SafeKit met en œuvre une réplication temps réel synchrone sans perte de données en cas de panne
Avec une réplication asynchrone, il y a une perte de données en cas de panne
Dislike  Avec une réplication asynchrone, il y a une perte de données en cas de panne
Réplication de fichiers au niveau octet vs réplication de disque au niveau du bloc
Plus d'information...
SafeKit met en œuvre la réplication de fichiers au niveau octet et se configure simplement avec des répertoires à répliquer même sur le disque système
Like  SafeKit met en œuvre la réplication de fichiers temps réel au niveau octet et se configure simplement avec les répertoires applicatifs à répliquer même dans le disque système
La réplication de disque au niveau du bloc est complexe et nécessite de mettre les données de l'application dans un disque spécial
Dislike  La réplication de disque au niveau bloc est complexe à configurer et nécessite de mettre les données de l'application dans un disque spécial
Heartbeat, reprise sur panne et quorum pour éviter 2 serveurs maîtres
Plus d'information...
Pour éviter 2 serveur maîtres, SafeKit propose un simple split brain checker configuré sur un routeur
Like  Pour éviter 2 serveur maîtres, SafeKit propose un simple "split brain checker" configuré sur un routeur
Pour éviter 2 serveur maîtres, les autres clusters demande une configuration complexe avec une 3ième machine, un disque de quorum spécial, un reset hardware distant
Dislike  Pour éviter 2 serveur maîtres, les autres clusters demandent une configuration complexe avec une 3ième machine, un disque de quorum spécial, une interconnexion spéciale
Load balancing réseau
Plus d'information...
Aucune configuration réseau particulière n'est requise dans un cluster SafeKit pour l'équilibrage de la charge réseau
Like  Aucun serveur proxy dédié et aucune configuration réseau particulière ne sont requis dans un cluster SafeKit pour l'équilibrage de la charge réseau
Une configuration réseau spéciale est requise dans d'autres clusters pour l'équilibrage de la charge réseau
Dislike  Une configuration réseau spéciale est requise dans d'autres clusters pour l'équilibrage de la charge réseau

Clients du logiciel de haute disponibilité SafeKit dans tous les domaines d'activité

Démonstrations de solutions de haute disponibilité avec SafeKit

Webinaire SafeKit

Ce webinaire présente en 10 minutes Evidian SafeKit.

Dans ce webinaire, vous comprendrez :

  • les clusters ferme et miroir
  • les économies par rapport aux solutions de clustering matériel
  • les meilleurs cas d'utilisation
  • le processus d'intégration d'une nouvelle application

Cluster Microsoft SQL Server

Cette vidéo montre la configuration d'un module miroir avec réplication temps réel synchrone et reprise sur panne.

La réplication de fichiers et le basculement sont configurés pour Microsoft SQL Server mais fonctionnent de la même manière pour d'autres bases de données.

Essai gratuit ici

Cluster Apache

Cette vidéo montre une configuration d'un module ferme avec équilibrage de charge et reprise sur panne.

L'équilibrage de charge et le basculement sont configurés pour Apache mais fonctionnent de la même manière pour d'autres services Web.

Essai gratuit ici

Cluster Hyper-V

Cette vidéo montre un cluster Hyper-V avec des réplications complètes de machines virtuelles.

Les machines virtuelles peuvent s'exécuter sur les deux serveurs Hyper-V et elles sont redémarrées en cas de panne.

Essai gratuit ici

Formation gratuite en ligne au logiciel de haute disponibilité SafeKit

Modules SafeKit pour des solutions de haute disponibilité plug&play

Modules SafeKit pour des solutions de haute disponibilité plug&play

Partage de charge réseau et reprise sur panne : cliquez sur les boutons bleus

Modules fermes

Windows

Linux

IIS-
Apache
Nouvelle application
Amazon AWS ferme
Microsoft Azure ferme
Google GCP ferme
Cloud ferme générique

Réplication de fichiers temps réel et reprise sur panne : cliquez sur les boutons bleus

Modules miroirs

Windows

Linux

Microsoft SQL Server-
Oracle
MySQL
PostgreSQL
Firebird
Hyper-V-
Milestone XProtect-
Hanwha Wisenet SSM-
Nouvelle application
Amazon AWS miroir
Microsoft Azure miroir
Google GCP miroir
Cloud miroir générique