L’équipe Microsoft Xbox adopte le rôle Ingénierie de la fiabilité des sites (SRE) pour créer un streaming de jeux

Découvrez comment l’équipe des opérations et les développeurs sont devenus des partenaires de confiance pour concevoir un déploiement Kubernetes distribué à l’échelle mondiale.

Le défi : Création d’un processus pour une mise à l’échelle mondiale

À l’instar de nombreuses équipes d’exploitation, l’équipe xREO (Xbox Reliability Engineering and Operations) consacrait énormément de temps à effectuer des tâches manuelles répétitives pour gérer les centres de données, à déployer de nouveaux codes et à réagir à des problèmes d’utilisation d’une architecture monolithique rigide préexistante. Ses efforts ont permis à des millions d’abonnés mensuels actifs dans plus de 40 pays et régions de continuer à bénéficier de ce service. Cependant, lorsque l’équipe a été chargée de prendre en charge le projet XCloud, une nouvelle expérience de streaming de jeux avec des exigences de latence extrêmement faibles pour les joueurs du monde entier, il est devenu évident qu’elle devait sortir de son rôle traditionnel d’ingénierie de service, supprimer les silos d’équipe et réinventer sa façon de travailler.

"Even small changes posed a significant risk, which meant we spent a lot of our time firefighting. Our mode of operation was mostly reactive, and we weren't really empowered to do much about it."

James Whitesides, chef de projets SRE , Xbox Reliability et Operations

Résolution des problèmes de mise à l’échelle via la collaboration et l’automatisation

Au début du projet, l’équipe de développement a reconnu qu’elle devait faire appel à xREO pour concevoir et construire une nouvelle architecture qui tirerait parti de la portée mondiale d’Azure. En commençant par des conteneurs pour découpler le code de service de l’infrastructure et Kubernetes comme le choix évident pour l’orchestration, les équipes ont choisi le service entièrement managé Azure Kubernetes Service (AKS) pour éliminer une grande partie de la complexité de la gestion.

Pourtant, même avec ce système rationalisé, le volume des tâches manuelles nécessaires pour créer chaque cluster Kubernetes a rapidement surchargé l’équipe xREO. Pour des raisons de répétabilité et d’automatisation, elle a décidé de construire un pipeline d'intégration continue et de livraison continue (CI/CD) avec Azure Pipelines, en utilisant des modèles Azure Resource Manager pour fournir rapidement les ressources.

"Now, in the SRE role, we build the platform with the devs, and we are part of their deployment process. We're really focused on building and improving rather than burning down checklists."

James Whitesides, chef de projets SRE , Xbox Reliability et Operations

Assumer un nouveau rôle avec une nouvelle mission

Aujourd’hui, le pipeline CI/CD déploie plus de 35 microservices basés sur AKS qui s’appuient sur plus de 100 ressources (par région) dans de nombreuses régions Azure, et d’autres sont en cours de déploiement. Pour déployer une nouvelle région, l’équipe ajoute six lignes de code et attend que les ressources s’imposent.

Le déploiement étant entièrement automatisé, l’équipe xREO est passée à un rôle d’ingénierie de la fiabilité des sites (SRE) et passe la plupart de son temps à créer des outils au lieu de résoudre des problèmes. Ils sont fréquemment consultés en tant que partenaires de confiance de l’équipe de développement, et ils se concentrent sur un travail proactif, de grande valeur et très gratifiant.

Examinez de plus près la transformation de l’équipe en un rôle SRE.

En savoir plus