Deployment Configuration
Deployment configuration is the process of setting up how you want your applications (its builds) to be deployed and where and when.
A deployment configuration is made up of several elements which are described in the following chapters. A deployment configuration always begins with a Deployment Environment.
Schematic deployment configuration overview
Prerequisites
Before you can create a Deployment Configuration, you must first create an Application with at least one ApplicationBuild.
Please refer to the Application Management and Application Build Management chapters for more information on creating these elements.
Deployment Environment
The DeploymentEnvironment element sits at the top of a deployment configuration. This is a simple element with just a name. We recommend creating a Deployment Environment for each game / title you host on our platform. Though during e.g. development of your software you could also create environments meant for testing. This way you can create environments for different purposes.
Fleet
The Fleet element is on the second layer within the deployment configuration hierarchy. It is a direct descendant of the DeploymentEnvironment element and is essentially just a sub-divisor of said element. Its children are the Deployement Templates and Deployment Profile.
Deployment Templates
Deployment Templates represent which applications (builds) will be deployed within a fleet. There are two types of templates: Game Deployment Templates and Utility Deployment Templates.
Utility Deployment Template
The Utility Deployment Template indicates which utility / utilities you want to deploy onto each host. A utility, also known as a sidecar, is always deployed once per host. You can indicate whether a utility should be deployed only on bare metal servers or virtual machines, or both.
When a new host is selected for deployment of game servers, the utility will be the first thing to be deployed onto the host. Reversely, when a host has been freed from any game server applications, the utilities will be removed again, cleaning up the host.
Game Deployment Template
The Game Deployment Template indicates which game server builds you want to have deployed within a fleet.
Deployment Profile
The DeploymentProfile element - also known as a Scaling Profile - defines where and how your Application will be deployed. It contains all the Deployment Regions which in turn contain all the individual data center (DC) locations within said regions. Cloud VMs and their creation specifications are also indicated here.
Deployment Region
The DeploymentRegion element defines a geographical region that contains one or more i3D.net DC locations. You must have bare metal servers rented in these locations in order to add them.
Deployment Locations
The DeploymentContainer and DeploymentContainerLocation elements define cloud (DC) locations to burst towards when your bare metal pool runs dry.
Maximum number of instances on a host
The automatic deployment mechanism needs to know how many game instances it can deploy on a given host. Without giving the system any hints, it will default to deploying one instance per physical core. To deviate from this default you must create a HostCapacity template.
HostCapacityTemplate
With the HostCapacityTemplate element you can define how many game instances you want deployed on any specified BM instance types and / or VM instance types. The actual definitions of the instance types and capacities themselves are defined in the InstanceTypeCapacity elements, which are assigned to this HostCapacityTemplate upon creation.