Une année de progrès en matière d’infrastructure : mise à jour pour 2023 / 2024 de l’ingénieur chargé de la fiabilité des sites

En tant que Senior Site Reliability Engineer (SRE) de la Fondation OpenStreetMap, je me suis concentré sur l’efficacité, l’amélioration de la résilience et la mise à l’échelle de notre infrastructure pour soutenir la croissance continue du projet OpenStreetMap au cours de l’année écoulée. De la migration vers le cloud à la mise à niveau des serveurs, nous avons apporté plusieurs améliorations depuis l’année dernière afin de mieux positionner l’infrastructure d’OpenStreetMap pour répondre à ces défis de résilience et de croissance.

Améliorer les services aux utilisateurs

Services de rendu améliorés

L’infrastructure de rendu des tuiles a fait l’objet d’améliorations notables, notamment des optimisations matérielles et logicielles, une expiration plus rapide du cache des tuiles pour lutter contre le vandalisme, et l’automatisation pour bloquer les utilisateurs qui n’attribuent pas les tuiles OSM. Les tuiles à faible zoom sont désormais rendues quotidiennement, ce qui améliore les performances et permet un retour d’information plus rapide. Le service de tuiles est largement utilisé et répondre à la demande est un défi permanent.

Nouveau service d’imagerie aérienne

Lancement d’un nouveau service d’imagerie aérienne qui prend en charge les COG GeoTIFF. Le service héberge désormais aerial.openstreetmap.org.za qui s’appuie sur 16 To d’images à haute résolution. Le nouveau service facilite l’hébergement d’images supplémentaires à l’avenir.

Transition vers des alternatives à Gmail et Google Docs et réduction des spams

Après avoir été confronté à d’importants problèmes de spam avec l’espace de travail Google de l’OSMF, j’ai migré les services de messagerie électronique de l’OSMF vers mailbox.org. Cela a permis de réduire le volume de spam et d’améliorer l’efficacité administrative. Nous sommes également en train de transférer les données historiques d’OSMF sur Google Docs vers un service auto-hébergé.

Faire face aux attaques DDoS et au vandalisme

Cette année, nous avons été confrontés à plusieurs attaques par déni de service distribué (DDoS), y compris un incident majeur de DDoS contre rançon, qui a été signalé aux autorités policières. Ces attaques ont mis à l’épreuve notre infrastructure, mais nous avons mis en œuvre des mesures pour renforcer notre résilience et mieux nous protéger contre les menaces futures.

Nous avons également fait face à des actes de vandalisme à grande échelle qui ont affecté les services d’OpenStreetMap. Grâce à la réaction rapide et aux ajustements effectués par l’équipe des opérations, nous avons renforcé notre infrastructure afin de mieux gérer les abus et d’assurer un service continu.

Hébergement de Planet Data sur AWS S3

Avec l’équipe opérationnelle d’OpenStreetMap, j’ai transféré l’hébergement de nos données planet sur AWS S3 avec des miroirs dans l’UE et aux États-Unis, ce qui nous permet de rétablir complètement le catalogue des données historiques. Grâce au parrainage OpenData d’AWS, les différences de réplication et les données planet sont désormais plus accessibles.

Faciliter la gestion des systèmes

Gestion complète de l’infrastructure AWS avec OpenTofu

Avec l’équipe des opérations d’OpenStreetMap, j’ai réussi à migrer toutes les ressources AWS gérées manuellement vers l’Infrastructure-as-Code (IAC) en utilisant OpenTofu (anciennement Terraform). Cette transition nous a permis d’améliorer la rentabilité, de renforcer la sécurité en adoptant un modèle IAM à moindre privilège, et d’obtenir une meilleure visibilité sur les dépenses grâce à des étiquettes de facturation détaillées. En outre, nous avons intégré S3 Storage Analytics pour optimiser davantage nos coûts, mis en place des sauvegardes supplémentaires et implémenté des règles de cycle de vie améliorées.

Amélioration de l’alerte en cas d’interruption de service

Nous avons mis en place un système d’alerte par SMS pour les pannes de service critiques, ainsi qu’un compte PagerDuty sponsorisé. Ces améliorations garantissent des temps de réponse plus rapides et une meilleure coordination pendant les pannes, avec une intégration complète avec Prometheus/Alertmanager et Statuscake en cours de réalisation.

Réduction de la dette technique

Cette année, nous avons progressé dans la réduction de la dette technique en déplaçant plusieurs services hérités vers des solutions plus faciles à maintenir. Par exemple, nous avons conteneurisé d’anciens services, notamment les sites web des State of the Mapqui fonctionnaient auparavant avec des installations WordPress mal entretenues. Cette transition a permis d’améliorer l’évolutivité, la sécurité et la maintenabilité à long terme de ces services.

En outre, nous avons remplacé notre installation personnalisée d’OTRS par une installation de paquets Znunyde Debian. Ce changement simplifie les mises à jour et réduit la charge de maintenance, garantissant que le système reste à jour et sécurisé sans modifications personnalisées.

Assurer la résilience de l’infrastructure malgré les défaillances matérielles

Au cours de l’année écoulée, nous avons maintenu une infrastructure résiliente, même en cas de défaillance du matériel. Nous avons remplacé de nombreux disques et de la mémoire vive, ce qui a permis de minimiser les interruptions de service. Notre système de surveillance sur mesure nous permet de détecter les premiers signes de défaillance du matériel, ce qui nous permet d’agir rapidement et de remplacer les composants défectueux avant qu’ils ne causent des problèmes importants. Cette approche proactive a été essentielle pour maintenir la disponibilité et la fiabilité du système.

Modernisation des infrastructures

Réplication intersites des sauvegardes

Pour garantir une solide reprise après sinistre, j’ai mis en place une réplication inter-comptes et inter-régions pour les sauvegardes AWS S3, ce qui permet une reprise à point nommé. Cela permet de sauvegarder les données et les services essentiels, même en cas de défaillance majeure, et d’assurer une tranquillité d’esprit à long terme.

Infrastructure à haute disponibilité

Des mises à niveau matérielles importantes dans nos sites d’Amsterdam, de Dublin et de l’OSUOSL ont permis d’améliorer les performances, la capacité de stockage et la fiabilité du réseau. De nouveaux commutateurs ont été installés en 2022, et nous avons maintenant terminé la mise en place d’une configuration de haute disponibilité (HA) pour assurer un meilleur service, que nous avons continué à améliorer en passant à des liaisons montantes ISP doubles et diversifiées pour une meilleure résilience.

Migration vers Debian

Nous migrons d’Ubuntu à Debian 12 (Bookworm) comme distribution standard. Tous les nouveaux serveurs fonctionnent désormais sous Debian. La gestion de la configuration de notre chef a été mise à jour avec du code de test pour assurer une compatibilité continue. Cette transition marque un changement vers une plus grande stabilité et sécurité à long terme. Voici un essage sur Mastodon célébrant la transition.

Perspectives d’avenir

L’année à venir nous offre de nouvelles opportunités passionnantes en nous appuyant sur les progrès accomplis. Les principales priorités pour 2024 / 2025 sont les suivantes :

Engagement

Engagement communautaire et communication externe : nous chercherons à renforcer la collaboration avec le groupe de travail sur la communication (CWG) et améliorer notre communication avec le public sur l’état des services et les pannes.

Améliorer la documentation et l’intégration : nous améliorerons la documentation d’accueil et organiserons des sessions dédiées pour aider les nouveaux contributeurs à s’impliquer plus facilement dans les opérations. Il s’agit notamment d’améliorer la fiabilité et la couverture de nos processus de test, de garantir des contributions plus fluides et de réduire la courbe d’apprentissage pour les nouveaux membres de l’équipe.

Planification et optimisation

Planification de la capacité pour la croissance de l’infrastructure : au fur et à mesure qu’OpenStreetMap et la demande pour nos services augmenteront, nous nous assurerons que nous pouvons évoluer pour répondre à la demande. En anticipant les besoins futurs et en équilibrant les performances avec une croissance rentable, nous visons à maintenir la qualité de service et la disponibilité que notre communauté attend.

Optimisation continue des coûts: nous continuerons à trouver des moyens de réduire les coûts en tirant parti de parrainages tels que le programme AWS OpenData, afin de garantir des opérations durables.

Poursuite de la réduction de la dette technique : nous continuerons à simplifier notre infrastructure en réduisant la charge de maintenance des systèmes existants, notamment en augmentant l’utilisation des conteneurs. Cela contribuera à rationaliser les tâches de gestion et nous permettra de nous concentrer sur d’autres améliorations, rendant l’infrastructure plus efficace et plus évolutive au fil du temps.

Poursuivre l’amélioration des infrastructures

Mise en œuvre d’équilibreurs de charge à haute disponibilité : déploiement de la configuration HA (VRRP + LVS + DSR) pour les équilibreurs de charge afin d’améliorer la fiabilité du système et de réduire les temps d’arrêt potentiels.

Finalisation de l’intégration de Prometheus avec PagerDuty : achèvement de l’intégration de Prometheus pour la surveillance et de PagerDuty pour la rationalisation des alertes et de la réponse aux incidents.

Achever la transition vers un environnement Debian complet : migration de tous les services restants d’Ubuntu vers Debian pour une stabilité et une sécurité accrues.

Améliorer les stratégies de récupération et de sauvegarde en cas de catastrophe : continuer à affiner notre documentation sur la reprise et introduire des mesures de sauvegarde supplémentaires pour que les services essentiels soient protégés et puissent être récupérés en cas de panne.


This post is also available in: Anglais Ukrainien Grec moderne