Avec Agones de Google, Ubisoft se la joue Kubernetes

Google se lance dans l’hébergement de serveurs de jeux multijoueurs via un projet Open Source baptisé Agones et basé sur la plateforme d’orchestration de conteneurs, Kubernetes.

Dans ce cadre, la firme de Mountain View s’est associée avec l’éditeur français de jeux vidéo Ubisoft. Ce projet se définit comme « Open Source basé sur Kubernetes pour l’hébergement et la mise à l’échelle des serveurs dédiés aux jeux ». Habituellement, les éditeurs de jeux vidéo utilisent leur propre logiciel pour augmenter le nombre de serveurs de jeux. Une tâche difficile, longue et coûteuse explique Mark Mandel, développeur chez Google sur le blog de Cloud Platform.

Gérer la complexité des serveurs dédiés de jeux

Pour le spécialiste, les serveurs de jeux sont des systèmes très complexes, avec une durée de vie courte (quelques minutes ou quelques heures), nécessitant un gestionnaire de serveurs de jeux connecté à des services intermédiaires regroupant les joueurs en fonction d’un niveau de compétences similaires pour qu’une partie soit équilibrée. « Les serveurs de jeux dédiés ont également besoin d’une connexion directe aux process hébergeant les IP et les ports, plutôt que de passer par des équilibreurs de charge », écrit Mark Mandel.

Il ajoute, « ces jeux en temps réel sont extrêmement sensibles à la latence et un load balancer ne fait qu’en ajouter. De plus, comme tous les joueurs sont connectés à un serveur de jeu, ils partagent en même temps la simulation du jeu en mémoire, il est donc plus facile de les connecter à la même machine ».

Kubernetes pour simplifier et optimiser

 

C’est là qu’intervient le projet Open Source Agones, qui signifie en grec compétition ou regroupement. Il a pour objectif de supprimer la complexité décrite ci-dessus en fournissant à Kubernetes des capacités pour créer, exécuter, gérer et monter en charge des processus de serveurs de jeux dédiés directement dans les clusters managés par Kubernetes. Les développeurs peuvent s’appuyer sur les outils de la plateforme de gestion des clusters et des API, comme celle de Kubernetes pour connecter les serveurs intermédiaires avec Agones.

projet Agones

Le projet supporte par ailleurs les services liés aux jeux, comme les marketplace, les inventaires ou la gestion des comptes. En hébergeant ces services sur la même plateforme que le serveur dédié, les développeurs voient leur travail faciliter en réduisant les besoins de connaissances opérationnelles.

Du côté d’Ubisoft, Carl Dione, directeur du développement des activités en ligne, souligne « notre objectif est de trouver continuellement de nouveaux moyens pour fournir à nos joueurs des services de haute qualité. Agones rend plus flexible l’exécution des serveurs dédiés de jeux au sein des datacenters et donne à nos équipes plus de contrôle sur les ressources nécessaires. Cette collaboration a été rendue possible en combinant l’expertise de Google sur le cloud et le déploiement de Kubernetes avec notre forte connaissance des technologies liées aux jeux ».

Le projet Agone débute et une version alpha de la 0.1 est disponible en téléchargement sur GitHub.