Kubernetes : le cluster de haute disponibilité le plus simple entre deux serveurs redondants

Avec la réplication temps réel et le basculement automatique fournis par Evidian SafeKit

Comment le logiciel Evidian SafeKit met en œuvre simplement la haute disponibilité de Kubernetes entre deux serveurs redondants ?

La solution pour Kubernetes

Evidian SafeKit apporte la haute disponibilité à Kubernetes entre deux serveurs redondants. Cet article explique comment implémenter rapidement un cluster Kubernetes sur 2 nœuds sans stockage externe NFS, sans base de données de configuration externe et sans compétences spécifiques.

Notez que SafeKit est un produit générique. Vous pouvez implémenter avec le même produit la réplication en temps réel et le basculement de répertoires et de services, de bases de données, de conteneurs Docker, de machines virtuelles Hyper-V ou KVM complètes, d'applications dans le Cloud.

Cette solution de clustering est reconnue comme la plus simple à mettre en œuvre par nos clients et partenaires. La solution SafeKit est la solution parfaite pour exécuter des applications Kubernetes sur site et sur 2 nœuds.

Nous avons choisi K3S comme moteur Kubernetes car il s'agit d'une solution légère pour l'IoT et le Edge computing.

Le module miroir k3s.safe implémente :

  • 2 maîtres/agents K3S actifs exécutant des pods
  • la réplication de la base de données de configuration de K3S (MariaDB)
  • la réplication des volumes persistants (implémentée par la classe "NFS client dynamic provisionner storage class: nfs-client")
  • l'adresse IP virtuelle, le basculement automatique, la restauration automatique après panne

Comment ça marche ?

Le tableau suivant explique comment la solution fonctionne sur 2 nœuds. D'autres nœuds avec des agent K3S (sans SafeKit) peuvent être ajoutés pour une scalabilité horizontale.

Composants Kubernetes
Noeud SafeKit PRIM Noeud SafeKit SECOND
K3S (master et agent) exécute des pods sur le nœud primaire K3S (master et agent) exécute des pods sur le nœud secondaire
Le serveur NFS s'exécute sur le nœud primaire avec :

  • une IP virtuelle/port NFS
  • un export de partage NFS
  • des volumes persistants K3S
Les volumes persistants sont répliqués de manière synchrone et en temps réel par SafeKit sur le nœud secondaire
Le serveur MariaDB s'exécute sur le nœud primaire avec :

  • une IP virtuelle/port MariaDB
  • la base de données de configuration de K3S
La base de configuration est répliquée de manière synchrone et en temps réel par SafeKit sur le nœud secondaire

Une solution simple

SafeKit est la solution de haute disponibilité la plus simple pour exécuter des applications Kubernetes sur 2 nœuds et sur site.

SafeKit Avantages
Réplication synchrone en temps réel pour les volumes persistants Pas de stockage NAS/NFS externe pour les volumes persistants
Seulement 2 nœuds pour la haute disponibilité de Kubernetes Pas besoin de 3 nœuds comme avec la base de données etcd
Même produit simple pour l'adresse IP virtuelle, la réplication, le basculement, la restauration après panne, l'administration, la maintenance Évitez les différentes technologies pour l'IP virtuelle (metal-lb, BGP), la haute disponibilité des volumes persistants, la haute disponibilité de la base de données de configuration
Prend en charge la reprise après sinistre avec deux nœuds distants Éviter le stockage NAS répliqué

Partenaires, le succès avec SafeKit

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

Avec de nombreuses références dans de nombreux pays gagnées par des partenaires, SafeKit s'est avéré être la solution la plus simple à mettre en œuvre pour la redondance et la haute disponibilité des logiciels de gestion des bâtiments, vidéosurveillance, contrôle d'accès, systèmes SCADA...

Logiciel de gestion des bâtiments (BMS)

Logiciel de gestion vidéo (VMS)

Contrôle d'accès électroniques (EACS)

Logiciels SCADA (Industrie)

Comment fonctionne le cluster miroir de SafeKit avec Kubernetes ?

Etape 1. Réplication de données temps réel et continue

Cette étape correspond à la figure suivante. Le serveur 1 (PRIM) exécute les composants Kubernetes décrits dans le tableau précédent. Les utilisateurs sont connectés à l'adresse IP virtuelle du cluster miroir. SafeKit réplique les fichiers ouverts par les composants Kubernetes. Seules les modifications faites par les composants à l'intérieur des fichiers sont répliquées en continue à travers le réseau, limitant ainsi le trafic.

Réplication de données temps réel et reprise sur panne dans un cluster Kubernetes

Avec la réplication de données temps réel de SafeKit, seuls les noms des répertoires de fichiers sont à configurer dans le module miroir. Les répertoires à répliquer peuvent être localisés dans le disque système. SafeKit implémente une réplication synchrone sans perte de données en cas de panne contrairement à une réplication asynchrone.

Etape 2. Basculement automatique

Lorsque le serveur 1 est défaillant, SafeKit bascule l'adresse IP virtuelle du cluster sur le serveur 2 et redémarre automatiquement les composants Kubernetes. Les composants retrouvent les fichiers répliqués à jour grâce à la réplication continue synchrone réalisée par SafeKit entre le serveur 1 et le serveur 2. Les composants Kubernetes poursuivent leur exécution sur le serveur 2 en modifiant localement leurs fichiers qui ne sont plus répliqués vers le serveur 1.

Basculement automatique dans un cluster Kubernetes

Le temps de basculement est égal au temps de détection de la panne (time-out configuré à 30 secondes par défaut) et au temps de relance des composants. Sur la machine secondaire, il n'y a pas de temps lié au remontage du système de fichiers ou au passage des procédures de recovery du système de fichiers, comme avec les solutions de réplication de disques.

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. La réintégration du serveur 1 se fait sans arrêter l'exécution des composants Kubernetes sur le serveur 2.

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

Si SafeKit a été proprement arrêté sur le serveur 1, alors à son redémarrage, seules les zones modifiées à l'intérieur des fichiers sont resynchronisées suivant des bitmaps de modification.

Si le serveur 1 a crashé (power off), les bitmaps de modification ne sont pas sûres et elles ne sont donc pas utilisées. Tous les fichiers qui ont été modifiés depuis le moment de l'arrêt sont resynchronisés.

Etape 4. Retour à la normale avec réplication de données temps réel

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 les composants Kubernetes qui s'exécutent sur le serveur 2 et avec comme secours le serveur 1. Les modifications des composants dans les fichiers sont répliquées en temps réel du serveur 2 vers le serveur 1.

Retour à la normale d'un cluster Kubernetes

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

Essai gratuit de SafeKit + module miroir pour Kubernetes + guide d'installation rapide

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

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.

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

Clients de SafeKit dans tous les domaines d'activité

  • Meilleurs cas d'utilisation de haute disponibilité avec SafeKit

    Meilleurs cas d’utilisation [+]

    Like Logiciel OEM Like   Entreprise distribuée Like   Sites distants
    Logiciel de clustering SafeKit OEM pour la haute disponibilité d'applications critiques Haute disponibilité dans une entreprise distribuée Plan de continuité d'activité et plan de secours sans SAN répliqué
    Un éditeur de logiciel utilise SafeKit comme un logiciel OEM pour la haute disponibilité de son application Une entreprise distribuée déploie SafeKit dans de nombreuses succursales, sans compétence informatique spécifique SafeKit est déployé dans deux sites distants sans nécessiter de baies de disques répliqués à travers un SAN

    Témoignages

    Like  Le produit idéal pour un éditeur logiciel

    « SafeKit est le logiciel de clustering d’application idéal pour un éditeur logiciel. Nous avons actuellement déployé plus de 80 clusters SafeKit dans le monde entier avec notre application critique de télédiffusion. »

    Like  Le produit très simple à déployer pour un revendeur

    « Noemis, distributeur à valeur ajoutée de la vidéosurveillance Milestone, a aidé les intégrateurs à déployer la solution de redondance SafeKit sur de nombreux projets tels que la surveillance des villes, les datacenters, les stades et autres infrastructures critiques. SafeKit est un excellent produit et Evidian fournit un excellent support. »

    Like  Le produit qui fait gagner du temps à un intégrateur de systèmes

    « Grâce à la simplicité et la puissance du produit, nous avons gagné du temps dans l’intégration et la validation de nos projets critiques de supervision des lignes de métro à Paris (PCC / Poste de Commande et de Contrôle). »


  • Haute disponibilité de la gestion vidéo, du contrôle d'accès, de la gestion des bâtiments avec SafeKit

    Gestion vidéo, contrôle d’accès, gestion des bâtiments [+]

    La sécurité des personnes est directement associée à la bonne exécution des logiciels de sécurité. C’est pourquoi, ils ont besoin de redondance et de haute disponibilité. SafeKit est reconnu comme la solution de redondance la plus simple par nos partenaires qui l’ont déployée avec :

    Témoignage de Sébastien Temoin, Directeur Technique et Innovation, NOEMIS :

    “SafeKit d’Evidian est une solution professionnelle facilitant la redondance du logiciel de vidéo Milestone. La solution est facile à déployer, facile à maintenir et peut être ajoutée à une installation existante. Nous avons assisté des intégrateurs pour déployer la solution sur de nombreux projets tels que la surveillance urbaine, les centres de données, les stades et d’autres infrastructures critiques. SafeKit est un excellent produit, et Evidian fournit un excellent support.”


  • Harmonic utilise SafeKit pour la haute disponibilité dans la télédiffusion

    Télévision numérique [+]

    Harmonic utilise SafeKit comme une offre de haute disponibilité logicielle OEM dans ses solutions de télédiffusion à travers la TNT, les satellites, le câble et les réseaux IP.

    Plus de 80 clusters SafeKit sont déployés sur Windows avec réplication de la base de données d’Harmonic et reprise automatique de l’application critique en cas de panne.

    Philippe Vidal, Responsable produit, Harmonic témoigne :

    « SafeKit est le logiciel de clustering d’application idéal pour un éditeur logiciel qui cherche une solution de haute disponibilité simple et économique. Nous déployons SafeKit dans le monde entier et nous avons actuellement plus de 80 clusters SafeKit sur Windows avec notre application critique de télédiffusion à travers la TNT, les satellites, le câble et les réseaux IP. SafeKit réalise la réplication temps réel et continue de notre base de données et la reprise automatique de notre application sur panne logicielle et matérielle. »


  • Natixis utilise SafeKit comme solution de haute disponibilité de ses applications bancaires

    Finance [+]

    La Compagnie Européenne de Garanties et Cautions chez Natixis utilise SafeKit comme solution de haute disponibilité de ses applications.

    Plus de 30 clusters SafeKit sont déployés sur Unix et Windows chez Natixis.

    Bernard Etienne, Responsable de production témoigne :

    “La Compagnie Européenne de Garanties et Cautions gère des applications métiers critiques qui doivent rester disponibles face aux pannes matérielles et logicielles. En effet, nos applications déterminent si une caution peut être délivrée à un particulier contractant un prêt dans une banque ou à une entreprise qui a besoin d’une garantie sur un investissement. Nous avons retenu le produit SafeKit d’Evidian pour assurer la haute disponibilité de nos applications métiers pour 3 raisons principales. C’est un produit simple qui se met en œuvre sur deux serveurs standards. Il ne nécessite pas d’investir des composants matériels spécifiques et coûteux. Et c’est un produit riche qui permet de surveiller finement nos applications métiers et les reprendre en cas de panne matérielle et logicielle.”


  • Fives Syleps met en œuvre la haute disponibilité SafeKit dans la logistique automatisée

    Industrie [+]

    Fives Syleps met en œuvre la haute disponibilité de son ERP avec SafeKit et déploie la solution dans l’industrie agro-alimentaire.

    Plus de 20 clusters SafeKit sont déployés sur Linux et Windows avec Oracle.

    Fives Syleps témoigne :

    “Les entreprises automatisées que nous équipons s’appuient sur notre ERP. Il n’est pas envisageable que notre ERP soit hors de service à cause d’une panne informatique. Sinon c’est l’ensemble de l’activité de l’entreprise qui s’arrête.

    Nous avons choisi la solution de haute disponibilité Evidian SafeKit car c’est une solution simple d’utilisation. Elle se met en œuvre sur des serveurs standard et ne contraint pas à utiliser des disques partagés sur un SAN et des boitiers réseau de partage de charge. Elle permet d’écarter les serveurs dans des salles machines distinctes.

    De plus, la solution est homogène pour les plateformes Linux et Windows. Et elle apporte 3 fonctionnalités : le partage de charge entre serveurs, la reprise automatique sur panne et la réplication temps réel des données.”


  • Copperchase déploie la haute disponibilité SafeKit dans le contrôle du trafic aérien

    Transport aérien [+]

    Le fournisseur de solutions pour le contrôle aérien, Copperchase, déploie SafeKit pour la haute disponibilité de ses systèmes dans les aéroports.

    Plus de 20 clusters SafeKit sont déployés sur Windows.

    Tony Myers, Directeur Business Développement témoigne :

    “En développant des applications pour le contrôle du trafic aérien, Copperchase est dans l’une des activités les plus critiques qui existent. Nous avons absolument besoin que nos applications soient disponibles tout le temps. Nous avons trouvé avec SafeKit une solution simple et complète de clustering qui répond parfaitement à nos besoins. Ce logiciel combine en un seul produit l’équilibrage de charge, la réplication de données en temps réel sans perte de données et le basculement automatique en cas de panne. C’est pourquoi, Copperchase déploie SafeKit dans les aéroports pour le contrôle du trafic aérien au Royaume-Uni et dans les 30 pays où nous sommes présents.”


  • Wellington IT déploie la haute disponibilité SafeKit dans les banques

    Banque [+]

    L’éditeur de logiciel Wellington IT spécialisé dans les banques coopératives déploie la solution de haute disponibilité SafeKit en Irlande et au Royaume-Uni avec son progiciel.

    Plus de 25 clusters SafeKit sont déployés sur Linux avec Oracle.

    Peter Knight, Directeur Commercial témoigne :

    “La continuité d’activité et la résistance au désastre sont une préoccupation majeure pour nos clients utilisant notre application bancaire Locus déployée dans de nombreuses banques en Irlande et au Royaume-Uni. Nous avons trouvé avec SafeKit une solution simple et robuste pour assurer la haute disponibilité et la réplication synchrone et sans perte des données entre deux serveurs. Avec cette solution logicielle, nous ne sommes pas dépendants d’une solution de clustering matérielle spécifique et coûteuse. C’est un outil parfait pour fournir une option de haute disponibilité à une application développée par un éditeur logiciel.”


  • La RATP choisit la solution de haute disponibilité SafeKit pour ses lignes de métro

    Transport métropolitain [+]

    La RATP choisit la solution de haute disponibilité et de load balancing SafeKit pour son poste de commande centralisé de la ligne 1 du métro parisien.

    20 clusters SafeKit sont déployés sur Windows et Linux.

    Stéphane Guilmin, Responsable de projets témoigne :

    “Projet majeur au sein de la RATP, l’automatisation de la ligne 1 du métro 1 parisien impose que le poste commande centralisé (PCC) soit conçu pour résister aux pannes informatiques. Avec le produit SafeKit, nous avons trouvé trois avantages distinctifs répondant à ce besoin. Il s’agit d’abord d’une solution purement logicielle qui ne nous contraint pas à utiliser des disques partagés sur un SAN et des boitiers réseau de partage de charge. Nous pouvons très simplement séparer nos serveurs dans des salles machines distinctes. Ensuite, cette solution de clustering est homogène pour nos plateformes Windows et Linux. Et SafeKit nous apporte les trois fonctions dont nous avons besoin : le partage de charge entre serveurs, la reprise automatique sur panne et la réplication en temps réel des données.”

    Et également, Philippe Marsol, responsable d’intégration, Atos BU Transport, témoigne :

    “SafeKit est un produit simple et puissant pour la haute disponibilité des applications. Nous avons intégré SafeKit dans nos projets critiques comme la supervision de la ligne 4 du métro Parisien (dans le PCC / Poste de Commande et de Contrôle) ou la ligne 1 et 2 à Marseille (dans le CSR / Centre de Supervision du Réseau). Grâce à la simplicité du produit, nous avons gagné du temps dans l’intégration et la validation de la solution et nous avons eu également des réponses rapides à nos questions avec une équipe Evidian réactive.”


  • Systel déploie la haute disponibilité SafeKit dans les centres d'appels des pompiers et du SAMU

    Santé [+]

    L’intégrateur de logiciels Systel déploie la solution de haute disponibilité SafeKit dans les centres d’appels des pompiers et du SAMU.

    Plus de 30 clusters SafeKit sont déployés sur Windows avec SQL Server.

    Marc Pellas, Président Directeur Général témoigne :

    “SafeKit répond parfaitement aux besoins d’un éditeur logiciel. Son principal avantage est d’introduire la haute disponibilité via une option logicielle qui s’ajoute à notre propre suite logicielle multi-plateformes. Ainsi, nous ne sommes pas dépendants d’une solution de clustering matériel spécifique, coûteuse, complexe à installer, difficile à maintenir et différente suivant les environnements clients. Avec SafeKit, nos centres de pompiers sont déployés avec une solution de clustering logiciel intégrée avec notre application, uniforme chez tous nos clients, simple pour les utilisateurs et que nous maîtrisons totalement de l’installation jusqu’au support après vente.”


  • La haute disponibilité de l'ERP de l'armée Française est réalisée avec SafeKit à la DGA

    Gouvernement [+]

    La haute disponibilité de l’ERP de l’armée Française est réalisée avec SafeKit à la DGA.

    14 clusters SafeKit sont déployés sur Windows et Linux.

    Alexandre Barth, Administrateur système témoigne :

    “Notre équipe de production a mis en œuvre sans difficulté la solution SafeKit sur 14 clusters Windows et Unix. Notre activité critique est ainsi sécurisée avec des fonctions de haute disponibilité et de partage de charge. Les avantages de ce produit sont d’une part la simplicité de mise en œuvre et d’administration des clusters et d’autre part, l’uniformité de la solution face aux systèmes d’exploitation hétérogènes.”


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

Documentation technique de SafeKit

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