
AWS GameLift sera abandonné au profit de la conteneurisation

Publié à l’origine le 26 août 2021. Cet article reflète l’état du marché au moment de sa rédaction. AWS a depuis annoncé l’abandon des flottes gérées GameLift ; les observations architecturales ci-dessous restent pertinentes pour les studios qui évaluent des alternatives conteneurisées.
—
Au cours des dernières années, AWS GameLift a été une solution dominante pour les studios de jeux à la recherche d’une infrastructure fiable et hautement évolutive pour leurs serveurs de jeu. Cependant, la conteneurisation permet désormais aux studios de reproduire et d’étendre ce que GameLift présentait auparavant comme son avantage concurrentiel.
AWS GameLift est arrivé au bon moment pour les studios de jeux
Il ne fait aucun doute qu’AWS GameLift est l’une des solutions les plus utilisées par les grands comme les petits studios de jeux. Sa domination s’explique par l’avantage réel qu’elle offrait aux studios à un moment où ils en avaient besoin.
Si l’on remonte quelques années en arrière, les studios de jeux étaient laissés de côté dans la grande vague de migration des infrastructures vers le cloud à cause de problèmes de coûts. Contrairement à la plupart des applications, le trafic de jeu peut être multiplié de 2 à 10 pendant une heure de pointe par rapport au niveau bas d’une journée moyenne. En combinant cela avec le fait que les serveurs de jeu nécessitent une bonne quantité de CPU et de mémoire pour fonctionner de manière constante, l’industrie du jeu ne pouvait tout simplement pas justifier le passage des serveurs bare metal au cloud computing en raison de ses coûts intrinsèquement plus élevés.
AWS GameLift répondait à un besoin réel des Directeurs Techniques et des CTO. Vous pouviez désormais faire évoluer votre infrastructure à la demande en fonction du trafic, et ne payer que pour la capacité utilisée à chaque instant. Il suffisait de configurer votre environnement de serveur de jeu à répliquer, de demander de nouveaux serveurs lorsque la demande augmentait, puis d’arrêter des serveurs quand votre base de joueurs retournait à l’école après une nuit blanche passée à jouer à votre jeu génial.
Pour les développeurs familiers avec l’infrastructure moderne, ces avantages devraient vous dire quelque chose :
Cohérence des déploiements – VALIDÉ
Mise à l’échelle en fonction du trafic – VALIDÉ
Coût basé sur l’usage réel – VALIDÉ
C’est essentiellement ce que fait un conteneur. Pourquoi les studios de jeux n’ont-ils pas plutôt construit une infrastructure basée sur des conteneurs ?
Les conteneurs n’avaient tout simplement pas le taux d’adoption qu’ils connaissent aujourd’hui lorsque GameLift a été lancé. Mais les choses ont progressivement changé.
Là où la conteneurisation va plus loin que GameLift
Le produit de flotte gérée de GameLift exécute les binaires des serveurs de jeu dans des VM plutôt que dans des conteneurs, ce qui limite la portabilité et la flexibilité de mise à l’échelle. Une solution basée sur des conteneurs bénéficierait aussi de :
Mobilité : prenez votre conteneur et vous pouvez l’exécuter partout, pas seulement sur AWS.
Fiabilité grâce à une infrastructure de type "cattle" : si quelque chose ne fonctionne pas, tuez-le automatiquement et lancez-en un nouveau.
Efficacité de mise à l’échelle : les conteneurs peuvent être lancés en quelques secondes. Le modèle de flotte gérée de GameLift nécessite de préchauffer la capacité, ce qui signifie maintenir des serveurs en attente qui ne servent pas activement les joueurs.
Mises à jour et retours arrière faciles : les conteneurs sont facilement versionnés, en conservant toutes les configurations et dépendances en interne. Il est facile d’avoir plusieurs versions exécutées en même temps, et simple de revenir en arrière en cas de problème.
Conteneurs : la montée en capacité suit précisément la courbe de demande des joueurs.
Cloud (GameLift) : une capacité supplémentaire inutilisée doit toujours être disponible en cas d’augmentation de la demande des joueurs.
Cloud hybride : une base moins coûteuse de serveurs bare metal est utilisée, restant inactive lorsque la demande est faible, et l’extension supplémentaire se fait dans le cloud, là encore avec une capacité inutilisée en surplus.
Bare metal : la capacité est fixe, et doit donc pouvoir gérer le pic de joueurs, ce qui entraîne une forte surcapacité pendant la majeure partie de la journée.
Avec les bons outils, les conteneurs rendent les choses plus fluides pour les développeurs et meilleures pour les joueurs
Les conteneurs sont excellents en eux-mêmes, mais avec les bons outils et les bons partenaires, vous pouvez commencer à voir certaines des capacités d’avant-garde que la conteneurisation permet :
Multi-cloud, multi-edge ou hybride : la mobilité signifie que vous pouvez exécuter vos conteneurs n’importe où. Alors pourquoi ne pas les exécuter partout ? Il est facile de rapprocher vos serveurs de jeu de vos joueurs avec une approche multi-fournisseurs, ce qui peut entraîner une latence plus faible et une meilleure expérience utilisateur. Vous pouvez même réaliser des économies en choisissant l’emplacement le plus rentable parmi différents fournisseurs dans la même ville.
Distribution mondiale sans coûts mondiaux : vous ne savez pas si votre jeu aura du succès au Moyen-Orient ? Vous n’êtes pas certain que les joueurs de Corée du Sud trouveront votre personnage principal culturellement pertinent ? Ce n’est pas grave. Vous n’avez pas besoin de déployer des serveurs de jeu dans le vague espoir que quelques joueurs se connectent, et d’engager des coûts juste pour tester un nouveau marché. Les conteneurs peuvent être déployés en quelques secondes lorsque les joueurs veulent jouer, là où ils veulent jouer.
Visibilité précise sur tout déploiement : l’une des préoccupations courantes concernant l’infrastructure cloud est son manque de transparence. Avec les conteneurs, les studios disposent d’une observabilité complète sur le comportement de leur application à tout moment en termes d’utilisation des ressources, de performance, de traçabilité des déploiements, et plus encore.
Gestion automatisée : plus de régions à gérer, plus de provisionnement de serveurs, auto-régulation des serveurs, ce qui se traduit par moins de personnes et de ressources à mobiliser pour gérer le backend.
Alors, quel avenir pour AWS GameLift ?
AWS GameLift a comblé un véritable vide du marché, mais la conteneurisation a depuis introduit des capacités qui n’étaient pas disponibles lors du lancement de GameLift et qui reflètent la direction prise par l’industrie. AWS Fargate est une solution basée sur des conteneurs qui pourrait être utilisée par les studios de jeux, bien que les temps de démarrage à froid puissent varier considérablement selon la configuration et la taille de l’image, et puissent ne pas répondre aux exigences de latence des sessions multijoueur en temps réel. Azure et Google ont tous deux introduit des produits d’hébergement de serveurs de jeu dans les années qui ont suivi l’essor de GameLift, bien qu’aucun n’ait atteint le même niveau d’adoption dans l’espace des serveurs de jeu gérés. Google Agones adopte une approche conteneurisée, bien qu’elle s’appuie toujours sur une mise à l’échelle basée sur des flottes gérées par le studio, ce qui réintroduit une partie de la surcharge opérationnelle que l’orchestration de conteneurs vise à réduire. La combinaison d’Azure Container Instances et de Playfab représente une voie potentielle pour l’avenir, bien que l’intégration entre les deux pour l’orchestration des serveurs de jeu soit encore en phase de maturation.
Quelques solutions émergent pour faciliter la transition d’AWS GameLift vers une solution d’orchestration basée sur des conteneurs. La direction que prend l’industrie est claire, et les studios qui évaluent aujourd’hui leurs options d’infrastructure disposent de plus d’alternatives conteneurisées conçues spécifiquement pour leurs besoins que jamais auparavant.
—
Publié à l’origine le 26 août 2021. Cet article reflète l’état du marché au moment de sa rédaction. AWS a depuis annoncé l’abandon des flottes gérées GameLift ; les observations architecturales ci-dessous restent pertinentes pour les studios qui évaluent des alternatives conteneurisées.
Écrit par
l'équipe Edgegap







