Creating an ArmadaSet
In this section, you will learn how to create an ArmadaSet for session-based or match-based game servers.
Understanding Hosting Models
ArmadaSets are designed for session-based games where a matchmaker allocates game servers on demand. If your game uses persistent servers or server browsers, consider using Formations and Vessels instead. See the hosting models guide for more details.
Prerequisites
In order to follow this guide, make sure you have the following:
- User credentials to access your GameFabric UI and environment of choice
- A container image that has been pushed to a branch in the registry
- Basic understanding of Agones SDK integration for proper game server lifecycle
Log into the GameFabric UI before proceeding.
Create an ArmadaSet
Choose an environment for your ArmadaSet, then navigate to Armadas > ArmadaSets in the UI and click "Create ArmadaSet" to begin.
General
Specify a unique name for your ArmadaSet. You can also add a description to help identify its purpose.
Regions
You configure scaling for your ArmadaSet in the Regions step. Unlike Vessels, which deploy to a single region, ArmadaSets automatically create an Armada in each region you configure.
Configure the following scaling settings for each Region and Region Type (e.g., Bare Metal or Cloud):
| Setting | Description |
|---|---|
| Min Replicas | The minimum number of game server replicas to maintain, even when there is no demand. |
| Max Replicas | The maximum number of game server replicas that can be scaled up to meet demand. |
| Buffer | The number of unallocated (ready) game servers to keep available for incoming allocation requests. |
Scaling Configuration
For detailed guidance on configuring replicas and buffer size, including examples and best practices, see the Armada replicas and buffer guide.
Volumes
Volumes allow you to share data between multiple containers within the same pod. This is an advanced feature. Skip this step for now.
Containers
The Containers section defines your game server configuration. This includes the container image, environment variables, ports, commands, ConfigFiles, resources, and sidecars.
The configuration options are identical to those for Vessels. For detailed explanations of each setting, see the Containers section in the Vessel guide.
Key configuration areas:
- Image: Select the container image from your branch
- Environment variables: Define static key/value pairs or expose pod metadata
- Ports: Configure dynamic or passthrough ports for game traffic
- Command and arguments: Override the container's default command if needed
- ConfigFiles: Mount configuration files into your container
- Resources: Set CPU and memory requests and limits
- Sidecars: Add additional containers (e.g., Allocator sidecar)
Allocator Sidecar
For session-based games using the Allocator service, you typically add an Allocator sidecar container. See Sidecar Containers for setup details and the Server Allocation Overview for when this is required.
Advanced
The Advanced section contains options for profiling, health checks, and termination grace periods. These settings work the same way as for Vessels.
For detailed explanations, see the Advanced options section in the Vessel guide.
Key settings:
- Profiling: Enable continuous profiling to analyze CPU usage patterns
- Health checks: Configure thresholds for game server health monitoring
- Termination grace periods: Set time limits for graceful shutdown during maintenance, spec changes, or user-initiated terminations
Health Checks
Health checks are disabled by default for initial testing. To ensure unresponsive game servers are automatically detected and cleaned up, enable health checks for production.
Visualize and configure
After creating the ArmadaSet, it appears in the Armadas section of the UI. The ArmadaSet automatically creates an Armada for each configured region.
Click on an ArmadaSet to view its details, including:
- The Armadas created in each region
- Current replica counts and allocation status
- Configuration details and revision history
You can also view individual Armadas to see aggregated information about the game servers within them.
Next steps
Now that your ArmadaSet is running, you can:
- Set up server allocation: Learn how to allocate game servers from your Armadas in the Server Allocation Overview and Allocating from Armadas guides
- Configure scaling: Fine-tune your replicas and buffer settings using the Armada replicas and buffer guide
- Manage lifecycle: Learn how to terminate ArmadaSets in the Terminating ArmadaSets guide