Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
GAMEOPS02-BP01 Adopter une stratégie multi-comptes pour isoler les différents jeux et applications dans leurs propres comptes
Concevez une structure de compte qui orienterait le déploiement de l'infrastructure afin de répondre aux besoins opérationnels, de sécurité et d'isolation de chaque environnement. Il est essentiel d'isoler l'environnement en restreignant l'accès à celui-ci et en autorisant uniquement l'utilisation des AWS services requis, les environnements de production étant verrouillés, tandis que les environnements de développement et de test sont indulgents pour permettre l'expérimentation. Il est fortement recommandé d'isoler davantage les principaux sous-systèmes de chaque environnement, ainsi que les services communs utilisés par plusieurs environnements pour être hébergés et gérés de manière autonome Comptes AWS .
Niveau d’exposition au risque si cette bonne pratique n’est pas respectée : élevé
Directives d’implémentation
Adoptez une stratégie multi-comptes AWS en isolant les différents environnements (tels que le développement, les tests, la mise en scène, la production et les services partagés) au cas par cas Comptes AWS, afin de réduire la portée des incidents. AWS Organizations Envisagez de gérer de manière centralisée la hiérarchie de vos opérations Comptes AWS afin de simplifier davantage les opérations, ainsi que de définir et d'appliquer de manière sélective des politiques au niveau du compte et de l'unité organisationnelle (au niveau de l'unité organisationnelle). En concevant une UO et une Compte AWS structure adaptées à vos besoins de développement et de flux de production, vous pouvez optimiser vos coûts et améliorer l'évolutivité.
-
Adoptez une stratégie multi-comptes : isolez les environnements pour réduire le rayon d'incidents et simplifier les opérations.
-
Utilisation AWS Organizations : Gérez les comptes de manière hiérarchique, appliquez des politiques et activez une gouvernance centralisée.
-
Planifiez l'évolutivité : concevez des structures de comptes précises et mettez en œuvre des mesures de réduction des coûts pour la croissance future.
Étapes d’implémentation
Un système de jeu déployé dans AWS doit utiliser plusieurs comptes organisés de manière logique pour assurer une isolation adéquate, ce qui réduit la portée des problèmes et simplifie les opérations à mesure que votre infrastructure de jeu évolue. Comptes AWS cette infrastructure de jeu hôte est généralement regroupée dans les environnements logiques suivants :
-
Les environnements de développement de jeux sont utilisés par les développeurs pour développer les logiciels et les systèmes du jeu.
-
Les environnements de test ou d'assurance qualité (QA) sont utilisés pour effectuer des tests d'intégration, des tests d'assurance qualité manuels et d'autres tests automatisés qui doivent être effectués.
-
Les environnements de mise en scène ou de pré-production sont utilisés pour héberger le logiciel complet afin que des tests de charge et de fumée puissent être effectués avant le lancement en production.
-
Les environnements live ou de production sont utilisés pour héberger le logiciel et l'infrastructure en direct et pour gérer le trafic de production provenant des joueurs.
-
Les environnements de services ou d'outils partagés donnent accès à des systèmes, logiciels et outils communs utilisés par de nombreuses équipes différentes. Par exemple, un référentiel de contrôle de source central auto-hébergé et une ferme de création de jeux peuvent être hébergés dans un compte de services partagés.
-
Les environnements de sécurité sont utilisés pour consolider les journaux centralisés et les technologies de sécurité utilisées par les équipes qui se concentrent sur la sécurité du cloud.
En ce qui concerne l'infrastructure de jeu AWS, il est recommandé de créer des comptes distincts pour chaque environnement de jeu (développement, test, mise en scène et production), ainsi que des comptes pour la sécurité, la journalisation et les services partagés centralisés.
Généralement, les petits studios de développement de jeux qui gèrent un nombre limité de ressources d'infrastructure, généralement quelques centaines de serveurs ou moins, peuvent en créer un Compte AWS pour chacun de ces environnements (par exemple, un compte de production, un compte de développement et un compte intermédiaire). Toutefois, au fur et à mesure que votre infrastructure de jeu ou la taille de votre équipe s'agrandit au fil du temps, ce modèle simplifié risque de ne pas bien évoluer.
Lorsque vous configurez ces environnements, tenez compte du fait que de nombreux AWS services partagent les ressources et les Quotas de Service au niveau de l'API pour l'ensemble d'un compte au sein d'une région donnée. Cela doit être pris en compte lors de la détermination de la manière d'organiser les comptes de manière logique. Comptes AWS n'entraînent des coûts que pour la consommation des services qui y sont déployés. Cela permet donc de réduire efficacement la contention des ressources et les quotas de service, en particulier à mesure que votre jeu grandit et que de plus en plus de développeurs ont besoin d'y accéder pour créer et gérer des ressources.
Sur la base de notre expérience de travail avec de grands studios de développement de jeux qui exploitent généralement des milliers de serveurs avec des centaines de développeurs accédant aux ressources, nous vous recommandons de concevoir une structure de compte plus fine dans laquelle les applications prenant en charge votre jeu disposent de leurs propres comptes de développement, de test, de mise en scène et de production. Comme il est difficile et fastidieux de repenser votre stratégie AWS multicompte une fois que vous avez lancé votre jeu en raison de la complexité de la planification et de la migration des systèmes live, tenez compte de vos futurs besoins d'évolutivité lorsque vous déterminez la bonne structure multicompte.
Vous pouvez l'utiliser AWS Organizations
AWS Control Tower
Cette isolation vous aide à configurer des autorisations et des garde-fous personnalisés ou individuels pour chaque environnement de jeu. Les comptes de production doivent disposer des garde-fous, des restrictions d'accès, des outils de surveillance et d'alerte et de sécurité nécessaires, tandis que les comptes hors production peuvent ne pas nécessiter le même niveau de garde-fous et d'autorisations. Les environnements hors production peuvent être automatisés pour arrêter les ressources en dehors des heures de bureau et réduire les coûts. La séparation des comptes à ce niveau de granularité facilite le suivi des coûts d'infrastructure pour chacun des environnements supportant un jeu.
Voici un exemple de structure multi-comptes pour une société de jeux vidéo utilisant AWS Organizations des unités organisationnelles (OUs) pour se regrouper logiquement Comptes AWS dans des environnements et des studios distincts. Dans cet exemple, OUs sont utilisés pour regrouper des comptes en fonction de leur environnement, puis en fonction du studio qui gère l'environnement. Cela montre comment vous pouvez créer une hiérarchie imbriquée pour permettre à des applications et à des jeux distincts d'être déployés dans leurs propres comptes au sein de leur environnement (illustré par OUs), ce qui peut être utile si vous développez et exploitez plusieurs jeux. Consultez la documentation et les livres blancs fournis dans la section des ressources de ce pilier pour en savoir plus sur les stratégies supplémentaires que vous pouvez envisager pour organiser votre stratégie multi-comptes.
Sur la base de la discussion ci-dessus, l'exemple de schéma ci-dessous suppose un studio de jeu (organisation) doté d'un pipeline de développement composé de 4 étapes (développement, test, mise en scène et production). Pour un jeu donné (game1), chacun des environnements (UO) possède des services de jeu individuels Comptes AWS , des serveurs de jeu dédiés, des services sociaux et des serveurs Web. Les ressources qui s'exécutent dans chacun Compte AWS sont pertinentes pour les sous-systèmes respectifs. En général, chaque jeu utilisant ce type de pipeline de développement reproduirait cette structure ou une structure similaire pour le sien Comptes AWS.
Outre cet environnement centré sur le jeu OUs, il existe également l'unité d'organisation des services partagés et l'unité d'organisation de sécurité. Ils OUs devraient être applicables à l'ensemble de l'organisation, et non à chaque jeu individuel. De cette façon, les jeux consommeraient les services partagés pour les outils de développement, les données et les analyses, comme dans cet exemple. Envoyez ensuite les journaux de l'application et du système à la Compte AWS configuration des journaux dans l'unité d'organisation de sécurité.
Exemple de structure de compte pour les environnements de jeu