Appearance
Appearance
Metaplay SDK ships with a pre-configured cloud infrastructure stack. It is the same stack we use internally to host and manage your development environments, and allows you to customize and deploy as many environments as you need for your game team. Building on top of our infrastructure stack allows you to benefit from all the hand-tuning and best practices we’ve spent years perfecting, as well as making future SDK updates easy.
Metaplay SDK’s cloud infrastructure is run in the AWS cloud. We leverage many of their managed services to keep the operational complexity low. For example, the game servers and their associated services are deployed as containers on AWS’ managed Kubernetes platform, EKS.
Metaplay SDK’s cloud infrastructure is delivered as scripts to make it both highly portable as well as easy to manage:
The infrastructure components and dependencies are regularly updated in Metaplay SDK’s releases to keep them secure and compatible with the wider infrastructure ecosystem!
TIP
Pro tip: The infrastructure provisioning scripts are modular and extensible to easily customize the infrastructure for your game’s or studio’s specific needs.
Metaplay SDK’s cloud infrastructure follows a two-tier architecture that is highly available, self-healing, and secure. The core game services are complemented by a selection of specialized services, such as file storage, load balancers, content delivery, authentication, observability, backups and more.
Each part of the service stack is designed to be highly efficient and scalable. The load balancer, CDN, and file storage are already inherently scalable, managed AWS services. The Kubernetes and RDS clusters can be scaled both vertically (more powerful VMs) and horizontally (more VMs).
The Metaplay game server’s software architecture is distributed and scales extremely well with both more and faster cores. This gives you flexibility in picking the best suited (and cost optimized) instance types for your various deployments!
Effective daily operations require the right tools. We’ve built and tuned the full stack of industry standard “DevOps” tools that cover all the necessary use-cases from initial provisioning, configuration and deployments to the daily monitoring of 100+ million DAU games.
The Metaplay SDK’s application layer is run as containers within Kubernetes. All application data is transient and persisted outside of Kubernetes, so the application containers (or even the whole cluster) can be destroyed without losing data.
We have extended the base Kubernetes resource types with Metaplay resource types and an operator, which allows for easier control of the life cycle of game payloads. All Kubernetes payloads can be split into three main categories: game server resources, supporting service resources and cluster tooling. The applications between these categories are segregated and can be managed in separate life cycles and cadences.
Our provisioning scripts also handle the provisioning of tightly controlled service accounts, secrets management and environment specific runtime configuration of the clusters’ services.
Game server resources are services directly related to the game server application.
The game server cluster has dedicated endpoints for the various sub-services.
Supporting services resources are services that help observe and manage the game server.
Cluster tooling contains the “necessary evil” services of running a Kubernetes cluster securely and efficiently. The services in this category generally require the least customization for Metaplay’s needs.
INFO
Something missing? The whole Metaplay cloud infrastructure stack is extendable by design, meaning that you can replace our “sensible defaults” with your own solutions for specific areas, or to add additional services onto the cluster easily!
The Metaplay SDK implements modern cloud security best practices:
No amount of best practices can replace the continuous monitoring of the online security landscape and frequent updates to keep all system up-to-date. We ship regular updates to our infrastructure and help you roll those out into your self-hosted environments!
We also understand that in some cases games may prefer to stick with older Metaplay versions; in these cases we can work with you to prevent possible security vulnerabilities by backporting critical security fixes as needed.