Service Definition
TheAllocationService provides game server allocation capabilities through a gRPC interface.
Allocate
Allocates a game server from the available fleet based on the specified criteria.Request: AllocationRequest
The Kubernetes namespace hosting the target fleet of game servers to be allocated.
Configuration for multi-cluster allocation. If specified, multi-cluster policies are applied. Otherwise, allocation happens locally within the cluster.
The scheduling strategy for selecting nodes. Available strategies:
Packed(0): Allocates game servers on the least number of nodes to maximize resource efficiencyDistributed(1): Spreads allocations across nodes for load distribution
Custom metadata (labels and annotations) to add to the game server at allocation time. Use this to pass session-specific data to the server.
Ordered list of game server label selectors. The allocator tries each selector in order until a match is found. Useful for smoke testing new game server versions or implementing fallback logic.
[Stage: Beta] [FeatureFlag: CountsAndLists]Priority configuration for sorting game servers. Priorities are evaluated in descending order of importance (position 0 is checked first).
- For Packed strategy: Acts as a tie-breaker within least-utilized infrastructure
- For Distributed strategy: Determines the complete sort order for allocation
[Stage: Beta] [FeatureFlag: CountsAndLists]Actions to perform on Counters during allocation.
[Stage: Beta] [FeatureFlag: CountsAndLists]Actions to perform on Lists during allocation.
Deprecated: Use
gameServerSelectors instead. This field is ignored if gameServerSelectors is set.Deprecated: Use
gameServerSelectors instead. This field is ignored if gameServerSelectors is set.Deprecated: Use
metadata instead. This field is ignored if metadata is set.Response: AllocationResponse
The name of the allocated game server resource.
The network ports exposed by the allocated game server.
The primary IP address at which the game server can be reached.
All addresses at which the game server can be reached (copy of Node.Status.addresses).
The name of the Kubernetes node hosting the game server.
The source cluster if multi-cluster allocation was used.
The metadata of the allocated game server.
[Beta, CountsAndLists feature flag]Status of Counters on the allocated game server.
[Beta, CountsAndLists feature flag]Status of Lists on the allocated game server.
Supporting Types
MultiClusterSetting
Specifies settings for multi-cluster allocation.If set to true, multi-cluster allocation is enabled.
Selects which multi-cluster allocation policies to apply. If not specified, all policies are applied.
MetaPatch
Metadata to patch the game server at allocation time.Labels to add or update on the game server.
Annotations to add or update on the game server.
