Améliorations des infrastructures Kubernetes chez Reddit

Découvrez comment Reddit a transformé sa gestion des infrastructures Kubernetes pour améliorer la performance et réduire les temps d'arrêt. Des solutions innovantes et une automatisation accrue sont en jeu.

Reddit, la plateforme de discussion en ligne, a récemment entrepris d’importantes améliorations de son infrastructure Kubernetes pour faire face aux défis croissants de gestion et de fiabilité.

Une transition nécessaire face aux défis opérationnels

Le 13 mars 2022, Reddit a connu une panne majeure, connue sous le nom de “panne du Pi Day”, qui a duré 314 minutes. Cet incident a mis en lumière la nécessité d’une gestion plus efficace de l’infrastructure, suite à une mise à niveau de Kubernetes 1.23 à 1.24 qui a entraîné des comportements imprévisibles. En réponse, l’équipe d’ingénieurs de Reddit a reconnu qu’une transformation opérationnelle était indispensable.

Expansion et défis croissants

Avec l’expansion de sa pile de serveurs à travers plusieurs régions pour une fiabilité accrue, Reddit se préparait également à une introduction en bourse. Karan Thukral, ingénieur logiciel senior chez Reddit, a souligné que le besoin d’une nouvelle abstraction de plateforme était critique pour continuer à opérer efficacement au fur et à mesure que l’entreprise grandissait.

Une nouvelle abstraction de plateforme

Lors de la récente KubeCon+CloudNativeCon en Amérique du Nord, Thukral et son collègue Harvey Xia ont expliqué comment l’équipe d’infrastructure a développé une nouvelle abstraction de plateforme. Cela leur a permis de passer d’une approche réactive à une planification proactive.

« Grâce à nos investissements des dernières années, nous avons pu résoudre des problèmes plus complexes avec moins de personnes », a déclaré Thukral.

Problèmes de gestion des espaces de noms

Complexités de la création d’espaces de noms

En 2022, Reddit gérait 20 clusters de production basés sur Kubernetes avec 92 ingénieurs d’infrastructure, contre 706 ingénieurs d’application. Une grande partie de leur travail consistait à aider les développeurs d’application, notamment en ce qui concerne la création d’espaces de noms. Les erreurs dans ce processus entraînaient des retards considérables dans les revues d’applications, augmentant le temps nécessaire pour mettre en œuvre des changements.

Défis liés à la dérive des configurations

Les configurations des clusters déviaient souvent des spécifications initiales, rendant leur gestion difficile. Xia a décrit cette situation comme un “cycle d’inefficacité auto-renforcé”, où l’équipe devait constamment lutter pour maintenir le bon fonctionnement des infrastructures.

Choix de Reddit : des contrôleurs Kubernetes au lieu d’IaC

Abstraction de la complexité par les contrôleurs Kubernetes

Plutôt que d’utiliser un outil d’infrastructure en tant que code (IaC), Reddit a choisi d’implémenter une plateforme via des API déclaratives soutenues par des processus de contrôle Kubernetes. Ces ressources personnalisées permettent une gestion plus dynamique et précise des clusters.

Avantages des contrôleurs Kubernetes

Les contrôleurs Kubernetes garantissent que l’état actuel des clusters est toujours aligné avec l’état désiré, facilitant ainsi la gestion des opérations de cycle de vie.

Réduction du temps de gestion des clusters

Une gestion simplifiée

Aujourd’hui, les ingénieurs d’infrastructure chez Reddit passent moins de temps à gérer les clusters, grâce à des API qui centralisent la gestion. Ils ont deux types de clusters : le cluster de contrôle, qui génère des configurations, et les clusters de charge de travail, qui sont facilement remplaçables.

Gain de temps significatif

Le temps nécessaire pour créer un nouveau cluster est désormais réduit à environ deux heures, tandis qu’une mise à jour peut être effectuée en une heure. Cela représente un succès considérable pour l’équipe d’ingénieurs.

Résultats et perspectives d’avenir

Améliorations notables

Reddit observe déjà des résultats positifs, avec une gestion des espaces de noms simplifiée et une sécurité accrue. L’entreprise a commencé l’année avec quatre contrôleurs Kubernetes en production et en compte désormais douze, chacun gérant des aspects clés de l’infrastructure.

Conclusion : investir dans l’avenir

« Investir dans des abstractions de plateforme a déjà porté ses fruits », a déclaré Xia. Cela a permis à Reddit de remplacer de nombreux processus manuels par de l’automatisation, permettant à l’équipe de se concentrer sur des problèmes d’impact à long terme.

Source

Leave a Reply

Your email address will not be published. Required fields are marked *