
Les temps d'arrêt dus à la perte de données ou à d'autres raisons sont un cauchemar pour toute entreprise axée sur les données, qu'il s'agisse de gérer les flottes et la logistique ou d'assurer la sûreté et la sécurité des personnes. Dans le cas d'un déploiement dans le nuage, le fournisseur de services gère les risques, mais dans le cas d'une installation sur site, la responsabilité incombe à l'entreprise. Imaginez que vous dirigiez une entreprise de gestion de flotte et que vous vous réveilliez un matin en découvrant que votre plateforme de suivi est en panne. Les véhicules sont immobilisés, les clients appellent et votre équipe se démène pour récupérer les données perdues. Chaque heure perdue est une perte de revenus, de clients et, dans certains cas, des problèmes juridiques qui frappent à votre porte. Il n'est donc pas étonnant que les entreprises exigent une disponibilité de 99,999 %, car même quelques minutes d'indisponibilité peuvent avoir de graves conséquences.
Dans cet article, j'apporte quelques éclaircissements et je vous fais part de recommandations d'experts et d'étapes pratiques pour obtenir le meilleur temps de service possible grâce à des stratégies de haute disponibilité (HA) et de reprise après sinistre (DR).
J'aimerais commencer par vous faire part d'un cas réel de client (que je laisserai anonyme pour éviter les risques de réputation) qui m'a inspiré pour écrire cet article. Écoutons-les :
Mon entreprise disposait d'un centre de données de haute technologie. Nous avions récemment mis à niveau notre parc de serveurs et nous nous attendions à ce qu'il soit fiable. Après tout, qu'est-ce qui pourrait aller de travers lorsque vous avez investi massivement dans du matériel moderne ?
Mais les inondations soudaines ont frappé, et toute notre infrastructure au rez-de-chaussée a été anéantie. Toutes les données stockées en interne ont disparu, y compris l'ensemble de notre historique de suivi Navixy On-Premise. Nous avons craint que nos clients n'aient définitivement perdu leurs dossiers. Ce n'est que par pure chance que l'un de nos administrateurs système a trouvé une sauvegarde vieille de six mois sur un disque externe, ce qui nous a permis de récupérer une fraction des données. Mais les dossiers de suivi les plus récents ? Ils étaient irrémédiablement perdus.
Si seulement nous avions pensé plus tôt à la répartition géographique du stockage des données, à des sauvegardes régulières et à la réplication des bases de données, nous aurions récupéré beaucoup plus rapidement et n'aurions pas perdu autant d'informations précieuses.
Cet incident réel met en lumière une vérité indéniable : les temps d'arrêt et les pertes de données peuvent avoir des conséquences dévastatrices pour n'importe quelle entreprise.
Lorsque vous utilisez un logiciel sur site, vous êtes seul responsable de la maintenance de vos serveurs. Cela vous donne un contrôle total sur vos données et celles de vos clients, un avantage souvent requis par des politiques réglementaires ou des considérations de sécurité. Toutefois, ce contrôle s'accompagne d'une responsabilité totale. Si une catastrophe survient et que votre infrastructure n'est pas assez résistante, la responsabilité de l'interruption du service, de la récupération des données et des pertes financières potentielles ou de l'atteinte à la réputation vous incombe entièrement.
Décortiquons les conséquences et l'impact potentiels pour les entreprises liées à la télématique.
Comme vous pouvez le constater, la liste est longue et, croyez-moi, il ne s'agit que de la partie émergée de l'iceberg des problèmes qu'un temps d'arrêt peut entraîner, les résultats les plus évidents, si vous voulez.
Comprendre les risques qui peuvent conduire à des temps d'arrêt et à des pertes de données est la première étape de leur prévention. Lorsque vous savez ce qui peut mal tourner, vous pouvez prendre des mesures proactives pour protéger votre infrastructure, minimiser les interruptions et assurer la continuité de vos activités.
Voici les principaux facteurs de risque à prendre en considération :
Même l'infrastructure la plus avancée est vulnérable aux défaillances matérielles. Les pannes de serveur, de réseau ou de système de stockage peuvent entraîner des interruptions de service critiques. Les problèmes d'alimentation, tels que les pannes d'onduleurs ou les courts-circuits, peuvent accroître le risque de temps d'arrêt imprévus.
Les bogues des systèmes d'exploitation, les logiciels obsolètes et les failles de sécurité créent des environnements instables qui peuvent entraîner des pannes. Des logiciels mal entretenus ou mal configurés augmentent le risque de panne du système, de corruption des données et de problèmes de performance.
De nombreuses défaillances de systèmes résultent d'erreurs humaines - mauvaises configurations, suppressions accidentelles ou maintenance inadéquate. En outre, des menaces internes telles que le sabotage, l'accès non autorisé ou la falsification délibérée de données peuvent compromettre l'intégrité du système.
Les problèmes de connectivité, les pannes de FAI, les défaillances de routage ou les dysfonctionnements du matériel réseau peuvent déconnecter les utilisateurs de votre plateforme, rendant ainsi inaccessibles les données de suivi et les données opérationnelles.
Des événements imprévisibles comme les tremblements de terre, les inondations et les ouragans peuvent endommager physiquement l'infrastructure, tandis que les incendies, les explosions ou les accidents industriels peuvent détruire des centres de données entiers. Les entreprises qui s'appuient sur une configuration à site unique sont particulièrement vulnérables à ces risques.
Les acteurs malveillants ciblent constamment les infrastructures sur site avec des attaques DDoS, des ransomwares et des violations de données. L'absence de mesures de sécurité appropriées peut entraîner des pertes de données, des accès non autorisés et des pannes de système prolongées.
La première étape consiste à identifier les risques potentiels. L'étape suivante consiste à s'assurer que vos systèmes peuvent résister aux perturbations et se rétablir rapidement en cas de défaillance. C'est là que la haute disponibilité (HA) et la reprise après sinistre (DR) entrent en jeu. Ces deux stratégies essentielles de l'infrastructure informatique sont conçues pour minimiser les temps d'arrêt et les pertes de données. Détaillons-les.
La haute disponibilité fait référence à la capacité d'un système à rester opérationnel avec un minimum de temps d'arrêt. Elle garantit que les applications et les données critiques sont toujours accessibles, même en cas de défaillance du matériel ou de perturbations inattendues.
Ce résultat est généralement obtenu grâce à des mécanismes de redondance et de basculement - par exemple, si un serveur tombe en panne, le système bascule automatiquement sur un serveur de secours. Le niveau de disponibilité est mesuré en pourcentage, les entreprises visant souvent 99,99 % ou plus (également connu sous le nom de disponibilité "quatre neuf" ou "cinq neuf"), ce qui équivaut à seulement quelques minutes d'indisponibilité par an.
Le maintien d'une haute disponibilité est crucial pour les opérations commerciales, la confiance des clients et la fiabilité des services.
La reprise après sinistre se concentre sur la restauration des systèmes informatiques et des données après une interruption majeure, qu'elle soit due à une défaillance matérielle, à une cyberattaque ou à une catastrophe naturelle. Contrairement à la haute disponibilité, qui vise à éviter les temps d'arrêt, la reprise après sinistre garantit un retour rapide aux opérations normales après un incident.
Une bonne stratégie de reprise après sinistre comprend les éléments suivants
Sans un plan de reprise après sinistre efficace, les entreprises risquent de subir d'importantes pertes de données, des retards opérationnels et des conséquences financières.
Alors que la haute disponibilité assure le bon fonctionnement des systèmes, la reprise après sinistre garantit une restauration rapide après une panne. Ensemble, ils constituent une infrastructure résiliente qui garantit la continuité de l'activité, l'intégrité des données et la réussite à long terme.
Fort de ces connaissances, voyons comment choisir la bonne stratégie HA/DR pour votre entreprise.
La bonne approche de la haute disponibilité et de la reprise après sinistre dépend des spécificités de l'infrastructure locale. Il n'existe pas de solution unique - chaque mise en œuvre est un processus qui nécessite une planification, une adaptation et une expertise approfondies.
Par exemple, dans un centre de données local, le maintien de la haute disponibilité repose sur une redondance matérielle solide et sur la surveillance de l'infrastructure physique. En revanche, les environnements en nuage tels qu'AWS dépendent de mécanismes de basculement virtualisés, ce qui rend les problèmes matériels moins préoccupants.
Étant donné que les déploiements sur site présentent des défis uniques, il est important d'examiner des scénarios réels pour comprendre comment les entreprises adaptent leurs stratégies HA/DR en fonction des risques liés à l'infrastructure. À ce stade, j'aimerais revenir sur le cas que j'ai mentionné au début de l'article. Vous vous souvenez ? Notre client, confiant dans son centre de données moderne et bien équipé, ne s'attendait pas à ce qu'une inondation soudaine anéantisse toute son infrastructure. Il a dû faire face à une perte irrémédiable de données, à un chaos opérationnel et à une lutte acharnée pour récupérer tout ce qu'il pouvait à partir de sauvegardes périmées.
Cette expérience a marqué un tournant. Déterminée à ne plus jamais être confrontée à une telle crise, l'entreprise a revu sa stratégie HA/DR afin de mettre en place un système capable de résister aux perturbations les plus graves. Vous trouverez ci-dessous les principales considérations qui ont façonné leur nouvelle approche.
L'épine dorsale de la stratégie consistait à déployer deux centres de données géographiquement répartis dans des régions différentes. Le site principal gérait toutes les opérations des clients, tandis que le site secondaire restait en attente, répliquant en permanence les bases de données, les services dorsaux et d'autres composants du système.
En cas de défaillance du site principal, le site secondaire était prêt à prendre le relais. Cette configuration a permis aux utilisateurs de bénéficier d'une expérience ininterrompue avec un minimum de temps d'arrêt, en offrant une résilience à la fois contre les pannes matérielles et les menaces externes.
Un plan de reprise bien défini et régulièrement testé était au cœur de la stratégie de reprise après sinistre. Ce plan décrivait les étapes exactes pour restaurer l'infrastructure informatique et reprendre les opérations en cas de défaillance. Des tests et des mises à jour réguliers ont permis de s'assurer que toutes les procédures de reprise restaient efficaces et adaptées à l'évolution des risques.
Pour améliorer la détection des pannes et l'efficacité du basculement, les entreprises mettent souvent en place un arbitre intermédiaire et un système de surveillance dédié pour détecter les pannes et déclencher des transitions automatiques. Toutefois, dans le cas présent, le basculement automatisé n'était pas envisageable. L'entreprise a dû se contenter d'un basculement manuel du centre de données en fonction des alertes du système de surveillance. Bien que cela ait entraîné un léger retard, cela a permis de limiter les temps d'arrêt à quelques minutes seulement lorsque la procédure a été correctement exécutée.
Garantir un accès continu aux utilisateurs est essentiel pour toute solution HA/DR. L'un des plus grands défis dans un environnement multi-centres de données est de maintenir la continuité du réseau lors du passage d'un site à l'autre.
L'approche idéale consiste à migrer l'adresse IP de l'ancien serveur vers le nouveau, ce qui permet au système de rediriger le trafic de manière transparente. Cependant, la migration des adresses IP n'est pas toujours possible, en particulier dans les configurations géographiquement distribuées comme celle de notre client.
Pour y remédier, leur plan de reprise après sinistre comprenait une reconfiguration du système de noms de domaine (DNS). Lors du changement de centre de données, ils ont mis à jour l'enregistrement DNS A pour qu'il pointe vers l'adresse IP du nouveau serveur. Les utilisateurs et les appareils configurés avec le nom de domaine ont ainsi pu continuer à fonctionner normalement. Cependant, les appareils dépendant d'une adresse IP codée en dur ont été temporairement mis hors ligne et ont dû être reconfigurés manuellement. Heureusement, le nombre de ces appareils était minime, ce qui rendait ce problème gérable.
J'espère que ces exemples vous aideront à comprendre les éléments à prendre en compte dans le cadre de vos initiatives HA/DR. Voyons maintenant comment nous avons concrètement mis en œuvre cette stratégie.
Ayant une longue expérience de l'aide à la mise en œuvre de solutions de haute disponibilité et de reprise après sinistre (HA/DR), j'ai été confronté à un large éventail de défis et d'opportunités. Chaque entreprise possède sa propre infrastructure, ses propres risques et ses propres besoins opérationnels, ce qui nécessite une approche sur mesure pour garantir la résilience.
Cette expérience m'a permis d'identifier trois domaines critiques qui jouent un rôle décisif dans l'élaboration d'une stratégie efficace de HA/DR :
Ces domaines vont au-delà des considérations techniques - ils englobent également des facteurs organisationnels et opérationnels. Une solution HA/DR bien structurée ne se limite pas à assurer le fonctionnement des systèmes ; elle doit également être alignée sur les objectifs de l'entreprise, être évolutive pour faire face à la croissance future et être pratique pour les opérations quotidiennes.
Pour en revenir à notre cas, voici comment nous l'avons abordé.
Pour assurer la haute disponibilité, le client devait utiliser les services d'un autre centre de données situé dans un autre quartier de la même ville. Ce n'est pas la meilleure pratique, car nous recommandons normalement de stocker les données dans une autre ville ou dans un espace de stockage en nuage, mais la solution est tout de même fiable.
Tout d'abord, il a fallu préparer les serveurs. Il doit s'agir de serveurs disposant de ressources suffisantes pour assurer un fonctionnement stable de la plateforme (il peut donc s'agir de ressources similaires à celles des serveurs existants). Notre client en avait deux - l'un pour une base de données et l'autre pour l'application de la plate-forme.
L'élément le plus important de la haute disponibilité et de la reprise après sinistre est le maintien de l'intégrité et de l'accessibilité de la base de données. Il existe de nombreuses méthodes et solutions connues pour cela, la principale étant le cluster MySQL.
Il s'agit d'une solution fiable et couramment utilisée, mais notre client a eu recours à la solution tierce de Percona, appelée XtraDB Cluster. Il s'agit d'une solution spécialisée conçue pour la haute disponibilité des bases de données qui fournit une réplication synchrone et une commutation automatique des nœuds, et qui est donc parfaitement applicable dans ce cas. En outre, elle est plus pratique en termes de configuration et de maintenance que les autres solutions (y compris un cluster MySQL classique).
Le guide d'installation complet de XtraDB Cluster est disponible sur le site web de Percona: https://docs.percona.com/percona-xtradb-cluster/8.0/apt.html
Il est important de noter qu'une solution normale implique trois nœuds de réplication pour la haute disponibilité. Mais il est également courant d'avoir deux nœuds principaux et un arbitre Galera - ilne s'agit pas d'un nœud de cluster à part entière mais d'un membre de cluster léger qui est responsable du cache des transactions et de la détermination de la cohérence des données des nœuds. La mise en place d'un arbitre permet de réduire le coût de maintenance du cluster, puisque le nombre minimum de nœuds conservant les données peut être ramené à deux. Ce nombre était suffisant pour notre client.
Après avoir déployé la grappe, le client s'est assuré de la chose la plus importante : la sécurité de toutes les données télématiques et commerciales. La tâche principale a été résolue.
Ensuite, il était essentiel de s'occuper des services de la plateforme. Pour ce faire, les étapes simples suivantes ont été suivies :
Les services Java doivent être activés pour fonctionner en tant que services systemd.
Systemd est le sous-système d'initialisation et de gestion des services de Linux. Il est intégré aux distributions modernes et ne nécessite pas d'installation spécifique. Les fichiers de configuration des services Navixy sont déjà présents dans les répertoires de services copiés, et il a suffi d'activer les services pour qu'ils fonctionnent en créant des liens symboliques vers /etc/systemd/system/, puis en exécutant une simple commande :
systemctl enable api-server sms-server tcp-server
Cette commande initie les services mais ne les lance pas instantanément. Ils ne doivent être lancés qu'en cas de défaillance du serveur principal, et la commande est différente :
systemctl start api-server sms-server tcp-server
La configuration des services Java est une opération courante et n'est pas difficile à mettre en œuvre, mais notre service d'assistance est toujours disponible pour vous aider dans ce domaine.
En ce qui concerne le site web, aucune adaptation spécifique n'a été nécessaire. Nginx a simplement pu être démarré avec les configurations existantes.
Il est important de noter que dans le cas de notre client, le centre de données de secours était géographiquement éloigné du centre actuel et était desservi par une autre société de télécommunications, de sorte que la migration de l'adresse IP existante en cas de catastrophe n'était pas une option réalisable. La migration de l'adresse IP existante en cas de sinistre n'était donc pas envisageable. C'est pourquoi le transfert du domaine vers une nouvelle adresse IP a été inclus dans le plan de reprise.
L'ensemble du basculement s'effectue du côté de l'autorité du domaine. Bien sûr, il ne s'agit pas d'une opération instantanée qui dépend entièrement du fournisseur de services et qui peut donc entraîner des retards supplémentaires pendant la reprise, mais c'était le seul moyen fiable de conserver l'accès de l'utilisateur en cas de panne.
Étant donné que toutes les configurations de la plate-forme de notre client ont été effectuées à l'aide du nom de domaine, tout devrait fonctionner de la même manière même si l'adresse IP est modifiée, sans qu'il soit nécessaire de réviser les configurations des services Navixy. Dans ce cas, les problèmes peuvent concerner uniquement les appareils configurés sur IP, mais notre client n'en avait pas - toute la flotte était Teltonika et pointait vers le domaine.
Le dernier défi était la question de la licence. La licence n'est applicable qu'à un seul serveur, et lorsque l'on essaie d'exécuter une instance dupliquée, la clé est corrompue. En outre, la clé de licence est dynamique et change au fil du temps, de sorte qu'il n'est pas possible de la sauvegarder une fois pour toutes.
Pour notre client, la réplication constante de la base de données ayant été mise en œuvre, le problème de la licence a été résolu, car les deux bases de données contenaient les mêmes données d'authentification. En cas de panne de service sur un site et de lancement urgent sur l'autre, pour le système d'authentification, il s'agirait d'un redémarrage normal de la plateforme. La licence resterait en vigueur. Pour une vérification supplémentaire, il est possible d'interroger la variable clé dans la base de données sur les deux serveurs et de comparer le résultat - il doit être identique. La requête ressemble à ceci :
SELECT * FROM google.variables WHERE var='fingerprint' ;
Le résultat est un hash de clé de licence - il devrait être identique sur les deux serveurs.
En outre, il a été convenu que nous rééditerions la clé de licence chaque fois que cela s'avérerait nécessaire. Les problèmes de licence sont toujours prioritaires pour nous, et une réponse rapide est donc garantie.
Si la mise en œuvre de la haute disponibilité et de la reprise après sinistre est une pratique complexe en soi, il ne suffit pas de l'installer et de la laisser sans surveillance. Les solutions architecturales de haute disponibilité nécessitent une maintenance et une surveillance constantes pour fonctionner efficacement. C'est pourquoi notre client dispose d'une équipe de techniciens qualifiés pour assurer la maintenance de l'ensemble de l'infrastructure de serveurs en bon état de fonctionnement, ainsi que d'ingénieurs de service chargés de la surveillance et de la prise de mesures d'urgence. En outre, le client effectue régulièrement des tests DR des procédures de basculement et de récupération, ce qui est également essentiel pour s'assurer qu'elles fonctionnent comme prévu en cas de panne réelle.
La maintenance et la surveillance sont des éléments essentiels des solutions de haute disponibilité et de reprise après sinistre. Elles garantissent que le système reste fiable et efficace face aux défaillances potentielles et permettent une intervention proactive pour prévenir ou minimiser l'impact des temps d'arrêt. Une maintenance et une surveillance régulières contribuent également à garantir la conformité aux exigences réglementaires et aux normes industrielles en matière de protection des données et de continuité des activités.
Nous espérons que l'expérience réussie de notre client décrite ici vous encouragera à envisager les options de haute disponibilité et de reprise après sinistre disponibles dans votre infrastructure. Comme nous l'avons déjà indiqué, il doit s'agir d'une solution adaptée au niveau local, en fonction de vos capacités et des ressources dont vous disposez. De cette manière, vous pourrez non seulement maintenir l'accès des clients dans toutes les situations imprévisibles, mais aussi maximiser la confiance des clients dans votre entreprise et répondre aux exigences les plus strictes en matière de disponibilité et de sécurité des données.
Contactez notre équipe dès aujourd'hui pour discuter de la manière de renforcer votre stratégie HA/DR et de maintenir votre entreprise avec Navixy On-premise en activité, quoi qu'il arrive.