Comment mettre en œuvre des serveurs redondants avec un simple logiciel (Windows / Linux)?

Evidian SafeKit

Comment mettre en œuvre des serveurs redondants actif/passif avec réplication en temps réel et basculement sur panne ?

Le cluster miroir de SafeKit

Serveurs redondants avec réplication de fichiers temps réel et basculement sur panne

Dans un cluster miroir, le logiciel SafeKit est installé sur deux serveurs physiques ou virtuels exécutant Windows ou Linux (sur site ou dans le Cloud). Le serveur primaire est le serveur actif et exécute une application critique. Le serveur secondaire est un serveur redondant passif et reçoit en temps réel toutes les modifications apportées par l'application à l'intérieur de ses fichiers. Les clients sont connectés à une adresse IP virtuelle. Si le serveur actif est en panne, SafeKit redémarre automatiquement l'application critique sur le serveur redondant passif qui devient primaire et commute l'adresse IP virtuelle. Lorsque le serveur défaillant est redémarré, il est automatiquement resynchronisé et devient le serveur redondant passif fonctionnant comme secondaire.

Comment mettre en œuvre des serveurs redondants actif/actif avec équilibrage de la charge réseau et basculement sur panne ?

Le cluster ferme de SafeKit

Serveurs redondants avec équilibrage de charge réseau et basculement sur panne

Dans un cluster de serveurs en ferme, le logiciel SafeKit est installé sur des serveurs redondants sous Windows ou Linux (sur site ou dans le Cloud). Tous les serveurs sont actifs et exécutent une même application frontale critique. Les clients sont connectés à une adresse IP virtuelle. Les sessions TCP sont partagées entre tous les serveurs redondants. Si un serveur est en panne, SafeKit reconfigure automatiquement l'équilibrage de charge des sessions TCP entre les serveurs actifs restants. Lorsque le serveur défaillant est redémarré, il est automatiquement réintégré en tant que serveur redondant actif et reçoit de nouvelles sessions TCP.

SafeKit, un logiciel de haute disponibilité facile à déployer

Une solution de haute disponibilité tout-en-un

Dans le même produit logiciel, SafeKit fournit sur Windows et Linux :

  • le load balancing
  • la réplication de fichiers temps réel synchrone
  • le redémarrage automatique d'une application sur panne
  • la réintégration automatique d'un serveur après panne

Économisez les boîtiers réseau de load balancing ou les serveurs proxy dédiés, les disques partagés ou les stockages SAN répliqués, les éditions entreprise des systèmes d'exploitation ou des bases de données, les compétences spécifiques pour maintenir opérationnel un cluster.

Une solution complète

SafeKit 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 la relance de processus critiques,
  • et les erreurs humaines (40% des problèmes) grâce à sa simplicité d'utilisation et sa console Web.

Un produit générique

Vous pouvez appliquer ce produit générique à vos applications, bases de données, machines virtuelles complètes Hyper-V ou KVM, applications Docker, Kubernetes, Cloud.

Zéro compétence spécifique

Aucune compétence informatique spécifique n'est nécessaire pour déployer un cluster de haute disponibilité SafeKit.

Zéro surcoût matériel

Une solution de haute disponibilité SafeKit est indépendante du matériel et s'exécute sur vos serveurs physiques existants, ou dans des machines virtuelles, ou dans le cloud.

Zéro surcoût logiciel

Le produit de haute disponibilité SafeKit fonctionne avec les éditions standards de Windows et Linux et ne nécessite pas les éditions entreprise des bases de données.

SafeKit : une solution idéale pour une application partenaire

Cette solution indépendante de la plateforme est idéale pour un partenaire ayant une application critique et qui souhaite proposer une option de redondance et de haute disponibilité simple à déployer auprès de nombreux clients.

Elle est également reconnue comme la plus simple à mettre en œuvre par nos partenaires.

Comment fonctionne le cluster miroir de SafeKit ?

Etape 1. Réplication en temps réel

Le serveur 1 (PRIM) exécute l'application. Les utilisateurs sont connectés à une adresse IP virtuelle. Seules les modifications faites par l'application à l'intérieur des fichiers sont répliquées en continue à travers le réseau.

Réplication de données temps réel reprise sur panne

La réplication est synchrone sans perte de données en cas de panne contrairement à une réplication asynchrone.

Il vous suffit de configurer les noms des répertoires à répliquer dans SafeKit. Il n'y a pas de pré-requis sur l'organisation du disque. Les répertoires peuvent se trouver sur le disque système.

Etape 2. Basculement automatique

Lorsque le serveur 1 est défaillant, SafeKit bascule l'adresse IP virtuelle sur le serveur 2 et redémarre automatiquement l'application. L'application retrouve les fichiers répliqués à jour sur le serveur 2.

L'application poursuit son exécution sur le serveur 2 en modifiant localement ses fichiers qui ne sont plus répliqués vers le serveur 1.

Basculement automatique dans un cluster miroir

Le temps de basculement est égal au temps de détection de la panne (30 secondes par défaut) et au temps de relance de l'application.

Etape 3. Réintégration après panne

A la reprise après panne du serveur 1 (réintégration du serveur 1), SafeKit resynchronise automatiquement les fichiers de ce serveur à partir de l'autre serveur.

Seuls les fichiers modifiés sur le serveur 2 pendant l'inactivité du serveur 1 sont resynchronisés.

Réintégration après panne dans un cluster miroir

La réintégration du serveur 1 se fait sans arrêter l'exécution de l'application sur le serveur 2.

Etape 4. Retour à la normale

Après la réintégration, les fichiers sont à nouveau en mode miroir comme à l'étape 1. Le système est en haute disponibilité avec l'application qui s'exécute sur le serveur 2 et avec réplication temps réel des modifications vers le serveur 1.

Retour à la normale d'un cluster actif-passif

Si l'administrateur souhaite que son application s'exécute en priorité sur le serveur 1, il peut exécuter une commande de basculement, soit manuellement à un moment opportun, soit automatiquement par configuration.

Choisissez entre une redondance au niveau application ou au niveau machine virtuelle

Redondance au niveau application

Dans ce type de solution, seules les données applicatives sont répliquées. Et seule l'application est redémarrée en cas de panne. Les scripts de redémarrage doivent être écrits pour redémarrer l'application. Cette solution est indépendante de la plateforme et fonctionne avec des applications dans des machines physiques, des machines virtuelles, dans le Cloud.

Application HA - redondance au niveau application

Nous livrons des modules applicatifs pour mettre en œuvre la redondance au niveau application. Ils sont préconfigurés pour des applications et des bases de données bien connues. Vous pouvez les personnaliser avec vos propres services, données à répliquer, checkers d'application. Et vous pouvez combiner les modules applicatifs pour construire des architectures avancées à plusieurs niveaux.

Redondance au niveau machine virtuelle

Dans ce type de solution, la machine virtuelle (VM) complète est répliquée (Application + OS). Et la VM complète est redémarrée en cas de panne. L'avantage est qu'il n'y a pas de scripts de redémarrage à écrire par application ni d'adresse IP virtuelle à définir. Si vous ne savez pas comment fonctionne l'application, c'est la meilleure solution.

VM HA - redondance au niveau machine virtuelle

Nous proposons deux modules pour la mise en œuvre de la redondance au niveau machine virtuelle : un pour Hyper-V sous Windows et un pour KVM sous Linux. Plusieurs VMs peuvent être répliquées et peuvent fonctionner sur les deux hyperviseurs avec réplication croisée et reprise mutuelle.

Utilisation typique avec SafeKit

Pourquoi une réplication de quelques Tera-octets ?

Temps de resynchronisation après panne (étape 3)

  • Réseau 1 Gb/s ≈ 3 heures pour 1 téraoctet.
  • Réseau 10 Gb/s ≈ 1 heure pour 1 téraoctet ou moins en fonction des performances d'écriture disque.

Alternative

  • Pour un grand volume de données, utilisez un stockage partagé externe avec une solution de clustering matériel.
  • Plus cher, plus complexe.

Pourquoi une réplication < 1 000 000 fichiers ?

  • Performance du temps de resynchronisation après panne (étape 3).
  • Temps pour vérifier chaque fichier entre les deux nœuds.

Alternative

  • Placez les nombreux fichiers à répliquer sur un disque dur virtuel / une machine virtuelle.
  • Seuls les fichiers représentant le disque dur virtuel / la machine virtuelle seront répliqués et resynchronisés dans ce cas.

Pourquoi un basculement < 25 VMs répliquées ?

  • Chaque VM s'exécute dans un module miroir indépendant.
  • Maximum de 25 modules miroir exécutés sur le même cluster.

Alternative

  • Utilisez un stockage partagé externe et une autre solution de clustering de VMs.
  • Plus cher, plus complexe.

Pourquoi un réseau LAN/VLAN entre sites distants ?

Alternative

  • Utilisez un équilibreur de charge pour l'adresse IP virtuelle si les 2 nœuds sont dans 2 sous-réseaux (supporté par SafeKit, notamment dans le cloud).
  • Utilisez des solutions de backup avec réplication asynchrone pour un réseau à latence élevée.

Comment fonctionne le cluster ferme de SafeKit ?

Adresse IP virtuelle dans un cluster feme

Equilibrage de charge et haute disponibilité

Sur la figure précédente, l'application tourne sur les 3 serveurs (3 est un exemple, il peut y en avoir 2 ou plus). Les utilisateurs sont connectés à une adresse IP virtuelle.

L'adresse IP virtuelle 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 réseau chargé dans le noyau du système d'exploitation de chaque serveur.

SafeKit détecte les pannes matérielles et logicielles, reconfigure les filtres réseau en cas de panne et offre des checkers et des scripts de reprise applicatifs configurables.

Partage de charge dans un filtre réseau

L'algorithme de load balancing dans le filtre réseau 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 qui répond à la requête du client. Les messages de retour de l'application 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.

Applications à état et sans état

Avec une application à état, il y a affinité de session. Le même client doit être connecté sur le même serveur sur plusieurs sessions TCP pour retrouver son contexte sur le serveur. Dans ce cas, la règle de load balancing SafeKit est configurée sur l'adresse IP des clients. Ainsi, le même client est toujours connecté sur le même serveur sur plusieurs sessions TCP. Et différents clients sont répartis sur les différents serveurs de la ferme.

Avec une application sans état, il n'y a pas d'affinité de session. Le même client peut être connecté sur des serveurs différents dans la ferme lors de sessions TCP successives. Dans ce cas, la règle de load balancing SafeKit est configurée sur l'identité de la session TCP du client. Cette configuration est celle qui répartit le mieux les sessions entre les serveurs mais elle requiert un service TCP sans affinité de session.

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

SafeKit Modules for Plug&Play High Availability Solutions

Partage de charge réseau et reprise sur panne

Windows farm

Linux farm

Generic farm   > Generic farm   >
Microsoft IIS   > -
NGINX   >
Apache   >
Amazon AWS farm   >
Microsoft Azure farm   >
Google GCP farm   >
Other cloud   >

Architectures de clustering avancée

Plusieurs modules peuvent être déployés dans le même cluster. Ainsi, des architectures de clustering avancées peuvent être mises en œuvre :

Démonstrations de solutions de redondance et de haute disponibilité

Webinaire SafeKit

Ce webinaire présente en 2 minutes Evidian SafeKit.

Dans ce webinaire, vous comprendrez les clusters ferme et miroir de SafeKit.

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

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

Formation à SafeKit

Introduction

  1. Introduction / pptx

    • Fonctionnalités
    • Architectures
    • Avantages distinctifs
  2. Compétition / pptx

    • Cluster matériel vs logiciel
    • Réplication synchrone vs asynchrone
    • Réplications de fichiers vs disques
    • Haute disponibilité vs tolérance aux fautes
    • Load balancing matériel vs logiciel
    • HA de machines virtuelles vs applications

Installation, configuration, CLI

  1. Installation / pptx

    • Installation du package
    • Configuration des nœuds
    • Configuration du cluster
    • Upgrade
  2. Console web / pptx

    • Configuration du cluster
    • Onglet Configuration
    • Onglet Contrôle
    • Onglet Supervision
    • Onglet Configuration avancée
  3. Ligne de commande / pptx

    • Installation silencieuse
    • Administration du cluster
    • Administration du module
    • Command line interface

Configuration avancée

  1. Module miroir / pptx

    • userconfig.xml + restart scripts
    • Heartbeat (<hearbeat>)
    • Virtual IP address (<vip>)
    • Real-time file replication (<rfs>)
  2. Module ferme / pptx

    • userconfig.xml + restart scripts
    • Farm configuration (<farm>)
    • Virtual IP address (<vip>)
  3. Checkers / pptx

    • Failover machine (<failover>)
    • Process monitoring (<errd>)
    • Network and duplicate IP checkers
    • Custom checker (<custom>)
    • Split brain checker (<splitbrain>)
    • TCP, ping, module checkers

Support

  1. Outils pour le support / pptx

    • Analyse des snapshots
  2. Support Evidian / pptx

    • Récupérer les clés permanentes
    • S'enregistrer sur support.evidian.com
    • Call desk

Documentation

  1. Documentation technique

  2. Documentation d'avant vente