-
-
Comment nous fiabilisons la disponibilité des services de nos clients chez APPSTUD ?

Comment nous fiabilisons la disponibilité des services de nos clients chez APPSTUD ?

Alors qu’on pensait les plus grosses structures infaillibles, l’Histoire nous a montré que même les plus grands pouvaient être victimes de défaillances pouvant impacter des millions d’utilisateurs pendant parfois plusieurs semaines. 

On peut mentionner les pannes de Facebook, mais aussi l’incendie qui a touché un centre de données et qui a provoqué une panne sans précédent. Chaque panne est frustrante pour les utilisateurs et coûte potentiellement des milliers d’euros aux entreprises. Pour prévenir les arrêts d’un système informatique, les notions d’évolutivité et de haute disponibilité deviennent de plus en plus populaires. La réduction des temps d’indisponibilité et l’élimination des points de défaillance uniques sont tout aussi importantes que la gestion de l’augmentation de la charge du système. 

La haute disponibilité est la qualité de l’infrastructure qui permet de les éliminer. Mais comment fiabilisons-nous la disponibilité des services de nos clients chez Appstud ?

Qu’est-ce qu’une solution de haute disponibilité ?

Dans le domaine de l’informatique, le terme de disponibilité est employé pour parler du temps pendant lequel un service est accessible ainsi que le temps nécessaire à un système pour répondre à une requête de l’utilisateur. La haute disponibilité est la caractéristique principale d’un système qui est capable de répondre à toutes les demandes dans un laps de temps très court.

Cette notion de disponibilité se mesure très souvent en pourcentage. Dans ce cas, une disponibilité de 100 % signifie que le système ne tombe jamais en panne. Par conséquent, un système qui assure une disponibilité de 99 % pendant un an peut avoir jusqu’à 3,65 jours de temps d’arrêt (1 %).

Pour calculer ces valeurs, différentes variables sont utilisées. On tient compte par exemple des temps effectifs des pannes, mais aussi du délai nécessaire en théorie pour résoudre les différents problèmes techniques qu’il est possible de rencontrer.

Pourquoi proposer une solution de haute disponibilité ?

L’un des buts de ce type d’architecture est de limiter le nombre de points de défaillance uniques (SPOF) du système informatique. Un SPOF est un élément de l’infrastructure dont la défaillance entraîne l’arrêt de l’ensemble du système ou l’indisponibilité des données ; en d’autres termes, tout composant matériel ou logiciel qui est dépendant d’un autre est potentiellement un SPOF.

Afin de réduire le nombre de SPOF, chaque partie de l’infrastructure doit être doublée. À titre d’exemple, imaginons que vous disposez d’un système équipé de deux serveurs web identiques et redondants avec un module permettant d’équilibrer le trafic. Les requêtes des clients sont réparties uniformément sur chaque machine. Mais si l’une des deux ne fonctionne plus, le trafic sera redirigé vers le second, grâce à l’équilibreur de charge.

Dans cette situation, le serveur web n’est pas un SPOF.

Mais que se passe-t-il si la panne concerne maintenant l’équilibreur de charge ?

Dans le scénario décrit, c’est l’équilibreur de charge qui est le point de défaillance unique.

Il n’est pas aisé de remédier à ce point de défaillance. Bien sûr, il est facile de configurer un équilibreur de charge supplémentaire pour assurer la redondance, mais il n’y a aucun composant dans le système en amont des équilibreurs de charge qui puisse prendre en charge la détection des pannes et la restauration du service.

La redondance seule ne peut pas garantir la haute disponibilité. Il doit y avoir des composants dédiés à la détection et à la réparation des défaillances de l’infrastructure.

Quels composants sont nécessaires pour prendre en charge la haute disponibilité ?

Pour mettre en place une haute disponibilité, il faut repenser intégralement l’architecture de son système. Par exemple, si tous les serveurs sont installés au même endroit, en cas d’inondation ou d’incendie, il est possible de provoquer une panne complète du système et une indisponibilité totale des sites des clients. 

Le fait d’avoir des serveurs dans différents centres de données et zones géographiques augmente drastiquement la tolérance aux pannes. Pour aller encore plus loin, le matériel choisi doit être résistant aux pannes électriques et aux défaillances matérielles. Les disques durs ainsi que les interfaces réseau choisies sont donc étudiés pour résister et être facilement changés. Les logiciels employés pour le pilotage et la gestion des défaillances sont aussi employés. 

Mais ce qui fait la force des infrastructures à haute disponibilité, c’est la stratégie globale définie par les prestataires pour proposer un service sans faille.

Comment appliquons-nous la haute disponibilité chez Appstud ?

Concrètement, nous déployons nos infrastructures sur deux zones différentes avec une bascule automatique en cas de défaillance. Toutes nos infrastructures sont surveillées grâce à des sondes qui envoient les informations sur un ELK et des sauvegardes automatisées sont appliquées. Toutes nos infrastructures possèdent une PRA pouvant être activée en moins d’une heure. Des surveillances de disponibilité, des journaux, et des mises à jour des outils sont mis en place pour assurer la proactivité dans la maintenance et le rétablissement d’un service qui est tombé.

Quels sont les avantages d’un service d’hébergement à haute disponibilité ?

On dit que le malheur des uns fait le bonheur des autres et c’est d’autant plus vrai lorsque des concurrents tombent en panne. La grande panne qu’a subie Facebook peut tout à fait être considérée comme un cas d’école. Pour se remémorer le contexte, le 4 octobre 2021, WhatsApp, Instagram et Facebook sont tombés en panne. L’ensemble des utilisateurs des différentes applications n’ont pu accéder à leur compte pendant 6 heures. Par réflexe, beaucoup se sont rendus sur Twitter afin d’une part de recueillir des informations sur la panne, mais aussi pour pouvoir communiquer à nouveau. 

C’est la frustration des utilisateurs qui les pousse à se rendre sur d’autres plateformes afin de combler un manque, qu’il soit d’ordre affectif ou informationnel. Et si le site de vos concurrents tombait en panne, les utilisateurs pourraient très certainement se ruer sur votre site qui serait toujours sur pied en raison de votre choix pour une infrastructure à haute disponibilité. Même en cas d’attaque, vos données sont sauvegardées, ce qui a pour effet de pouvoir restaurer en un temps record vos plateformes.

Pour finir, la haute disponibilité est en lien avec la fiabilité de l’infrastructure. Son objectif est de fournir aux utilisateurs les services qu’ils demandent aux moments où ils le souhaitent. Pour cela, des solutions à la fois techniques, mais aussi stratégiques, sont mises en place pour garantir l’accès en continu aux données. Appstud, en tant qu’agence numérique toulousaine de développement d’applications mobile iOS et Android et prestataire de services, est en mesure de vous proposer une solution de haute disponibilité. Contactez-nous pour en savoir plus.

Vous avez une idée, Appstud vous aide à la développer !

Product thinking • Design • Développement • Acquisition • Evolution de produits
Écrit par

Ces articles pourraient également vous intéresser

Qu’est-ce que le NoCode? Une révolution numérique. La possibilité de créer des solutions technologiques sans connaissances en programmation.
258
Les micro-interactions jouent un rôle essentiel dans l’optimisation UX. Ces détails interactifs, souvent discrets, façonnent l’expérience utilisateur (UX) de manière significative. En examinant leur importance, leur fonctionnement et leur conception efficace, nous découvrons comment ces micro-actions deviennent des éléments clés pour améliorer l’interaction entre utilisateur et interface.
281
Et s’il était possible de prévenir les pannes techniques avant la grande période des fêtes ?
295