Agones Kubernetes API
Packages:
agones.dev/v1
Package v1 is the v1 version of the API.
Resource Types:Fleet
Fleet is the data structure for a Fleet resource
Field | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion
string |
agones.dev/v1
|
||||||||||||
kind
string
|
Fleet |
||||||||||||
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||||
spec
FleetSpec
|
|
||||||||||||
status
FleetStatus
|
GameServer
GameServer is the data structure for a GameServer resource.
It is worth noting that while there is a GameServerStatus
Status entry for the GameServer
, it is not
defined as a subresource - unlike Fleet
and other Agones resources.
This is so that we can retain the ability to change multiple aspects of a GameServer
in a single atomic operation,
which is particularly useful for operations such as allocation.
Field | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion
string |
agones.dev/v1
|
||||||||||||||||||||
kind
string
|
GameServer |
||||||||||||||||||||
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||||||||||||
spec
GameServerSpec
|
|
||||||||||||||||||||
status
GameServerStatus
|
GameServerSet
GameServerSet is the data structure for a set of GameServers. This matches philosophically with the relationship between Deployments and ReplicaSets
Field | Description | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion
string |
agones.dev/v1
|
||||||||||
kind
string
|
GameServerSet |
||||||||||
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||
spec
GameServerSetSpec
|
|
||||||||||
status
GameServerSetStatus
|
AggregatedCounterStatus
(Appears on: FleetStatus, GameServerSetStatus)
AggregatedCounterStatus stores total and allocated Counter tracking values
Field | Description |
---|---|
allocatedCount
int64
|
|
allocatedCapacity
int64
|
|
count
int64
|
|
capacity
int64
|
AggregatedListStatus
(Appears on: FleetStatus, GameServerSetStatus)
AggregatedListStatus stores total and allocated List tracking values
Field | Description |
---|---|
allocatedCount
int64
|
|
allocatedCapacity
int64
|
|
count
int64
|
|
capacity
int64
|
AggregatedPlayerStatus
(Appears on: FleetStatus, GameServerSetStatus)
AggregatedPlayerStatus stores total player tracking values
Field | Description |
---|---|
count
int64
|
|
capacity
int64
|
AllocationOverflow
(Appears on: FleetSpec, GameServerSetSpec)
AllocationOverflow specifies what labels and/or annotations to apply on Allocated GameServers
if the desired number of the underlying GameServerSet
drops below the number of Allocated GameServers
attached to it.
Field | Description |
---|---|
labels
map[string]string
|
(Optional)
Labels to be applied to the |
annotations
map[string]string
|
(Optional)
Annotations to be applied to the |
CounterStatus
(Appears on: GameServerAllocationStatus, GameServerSpec, GameServerStatus)
CounterStatus stores the current counter values and maximum capacity
Field | Description |
---|---|
count
int64
|
|
capacity
int64
|
Eviction
(Appears on: GameServerSpec, GameServerStatus)
Eviction specifies the eviction tolerance of the GameServer
Field | Description |
---|---|
safe
EvictionSafe
|
Game server supports termination via SIGTERM: - Always: Allow eviction for both Cluster Autoscaler and node drain for upgrades - OnUpgrade: Allow eviction for upgrades alone - Never (default): Pod should run to completion |
EvictionSafe
(string
alias)
(Appears on: Eviction)
EvictionSafe specified whether the game server supports termination via SIGTERM
FleetSpec
(Appears on: Fleet)
FleetSpec is the spec for a Fleet
Field | Description |
---|---|
replicas
int32
|
Replicas are the number of GameServers that should be in this set. Defaults to 0. |
allocationOverflow
AllocationOverflow
|
(Optional)
Labels and/or Annotations to apply to overflowing GameServers when the number of Allocated GameServers is more
than the desired replicas on the underlying |
strategy
Kubernetes apps/v1.DeploymentStrategy
|
Deployment strategy |
scheduling
agones.dev/agones/pkg/apis.SchedulingStrategy
|
Scheduling strategy. Defaults to “Packed”. |
priorities
[]Priority
|
(Optional)
[Stage: Beta]
[FeatureFlag:CountsAndLists]
Priority of sorting is in descending importance. I.e. The position 0 For For |
template
GameServerTemplateSpec
|
Template the GameServer template to apply for this Fleet |
FleetStatus
(Appears on: Fleet, FleetAutoscaleRequest)
FleetStatus is the status of a Fleet
Field | Description |
---|---|
replicas
int32
|
Replicas the total number of current GameServer replicas |
readyReplicas
int32
|
ReadyReplicas are the number of Ready GameServer replicas |
reservedReplicas
int32
|
ReservedReplicas are the total number of Reserved GameServer replicas in this fleet. Reserved instances won’t be deleted on scale down, but won’t cause an autoscaler to scale up. |
allocatedReplicas
int32
|
AllocatedReplicas are the number of Allocated GameServer replicas |
players
AggregatedPlayerStatus
|
(Optional)
[Stage:Alpha] [FeatureFlag:PlayerTracking] Players are the current total player capacity and count for this Fleet |
counters
map[string]agones.dev/agones/pkg/apis/agones/v1.AggregatedCounterStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Counters provides aggregated Counter capacity and Counter count for this Fleet. |
lists
map[string]agones.dev/agones/pkg/apis/agones/v1.AggregatedListStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Lists provides aggregated List capacityv and List values for this Fleet. |
GameServerPort
(Appears on: GameServerSpec)
GameServerPort defines a set of Ports that are to be exposed via the GameServer
Field | Description |
---|---|
name
string
|
Name is the descriptive name of the port |
range
string
|
(Optional)
(Alpha, PortRanges feature flag) Range is the port range name from which to select a port when using a ‘Dynamic’ or ‘Passthrough’ port policy. |
portPolicy
PortPolicy
|
PortPolicy defines the policy for how the HostPort is populated.
Dynamic port will allocate a HostPort within the selected MIN_PORT and MAX_PORT range passed to the controller
at installation time.
When |
container
string
|
(Optional)
Container is the name of the container on which to open the port. Defaults to the game server container. |
containerPort
int32
|
ContainerPort is the port that is being opened on the specified container’s process |
hostPort
int32
|
HostPort the port exposed on the host for clients to connect to |
protocol
Kubernetes core/v1.Protocol
|
Protocol is the network protocol being used. Defaults to UDP. TCP and TCPUDP are other options. |
GameServerSetSpec
(Appears on: GameServerSet)
GameServerSetSpec the specification for GameServerSet
Field | Description |
---|---|
replicas
int32
|
Replicas are the number of GameServers that should be in this set |
allocationOverflow
AllocationOverflow
|
(Optional)
Labels and Annotations to apply to GameServers when the number of Allocated GameServers drops below
the desired replicas on the underlying |
scheduling
agones.dev/agones/pkg/apis.SchedulingStrategy
|
Scheduling strategy. Defaults to “Packed”. |
priorities
[]Priority
|
(Optional)
[Stage: Beta]
[FeatureFlag:CountsAndLists]
Priority of sorting is in descending importance. I.e. The position 0 For For |
template
GameServerTemplateSpec
|
Template the GameServer template to apply for this GameServerSet |
GameServerSetStatus
(Appears on: GameServerSet)
GameServerSetStatus is the status of a GameServerSet
Field | Description |
---|---|
replicas
int32
|
Replicas is the total number of current GameServer replicas |
readyReplicas
int32
|
ReadyReplicas is the number of Ready GameServer replicas |
reservedReplicas
int32
|
ReservedReplicas is the number of Reserved GameServer replicas |
allocatedReplicas
int32
|
AllocatedReplicas is the number of Allocated GameServer replicas |
shutdownReplicas
int32
|
ShutdownReplicas is the number of Shutdown GameServers replicas |
players
AggregatedPlayerStatus
|
(Optional)
[Stage:Alpha] [FeatureFlag:PlayerTracking] Players is the current total player capacity and count for this GameServerSet |
counters
map[string]agones.dev/agones/pkg/apis/agones/v1.AggregatedCounterStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Counters provides aggregated Counter capacity and Counter count for this GameServerSet. |
lists
map[string]agones.dev/agones/pkg/apis/agones/v1.AggregatedListStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Lists provides aggregated List capacity and List values for this GameServerSet. |
GameServerSpec
(Appears on: GameServer, GameServerTemplateSpec)
GameServerSpec is the spec for a GameServer resource
Field | Description |
---|---|
container
string
|
Container specifies which Pod container is the game server. Only required if there is more than one container defined |
ports
[]GameServerPort
|
Ports are the array of ports that can be exposed via the game server |
health
Health
|
Health configures health checking |
scheduling
agones.dev/agones/pkg/apis.SchedulingStrategy
|
Scheduling strategy. Defaults to “Packed” |
sdkServer
SdkServer
|
SdkServer specifies parameters for the Agones SDK Server sidecar container |
template
Kubernetes core/v1.PodTemplateSpec
|
Template describes the Pod that will be created for the GameServer |
players
PlayersSpec
|
(Optional)
(Alpha, PlayerTracking feature flag) Players provides the configuration for player tracking features. |
counters
map[string]agones.dev/agones/pkg/apis/agones/v1.CounterStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Counters provides the configuration for tracking of int64 values against a GameServer. Keys must be declared at GameServer creation time. |
lists
map[string]agones.dev/agones/pkg/apis/agones/v1.ListStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Lists provides the configuration for tracking of lists of up to 1000 values against a GameServer. Keys must be declared at GameServer creation time. |
eviction
Eviction
|
(Optional)
Eviction specifies the eviction tolerance of the GameServer. Defaults to “Never”. |
GameServerState
(string
alias)
(Appears on: GameServerSelector, GameServerStatus)
GameServerState is the state for the GameServer
GameServerStatus
(Appears on: GameServer)
GameServerStatus is the status for a GameServer resource
Field | Description |
---|---|
state
GameServerState
|
GameServerState is the current state of a GameServer, e.g. Creating, Starting, Ready, etc |
ports
[]GameServerStatusPort
|
|
address
string
|
|
addresses
[]Kubernetes core/v1.NodeAddress
|
(Optional)
Addresses is the array of addresses at which the GameServer can be reached; copy of Node.Status.addresses. |
nodeName
string
|
|
reservedUntil
Kubernetes meta/v1.Time
|
|
players
PlayerStatus
|
(Optional)
[Stage:Alpha] [FeatureFlag:PlayerTracking] |
counters
map[string]agones.dev/agones/pkg/apis/agones/v1.CounterStatus
|
(Optional)
(Beta, CountsAndLists feature flag) Counters and Lists provides the configuration for generic tracking features. |
lists
map[string]agones.dev/agones/pkg/apis/agones/v1.ListStatus
|
(Optional) |
eviction
Eviction
|
(Optional)
Eviction specifies the eviction tolerance of the GameServer. |
GameServerStatusPort
(Appears on: GameServerAllocationStatus, GameServerStatus)
GameServerStatusPort shows the port that was allocated to a GameServer.
Field | Description |
---|---|
name
string
|
|
port
int32
|
GameServerTemplateSpec
(Appears on: FleetSpec, GameServerSetSpec)
GameServerTemplateSpec is a template for GameServers
Field | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||||||||||||
spec
GameServerSpec
|
|
Health
(Appears on: GameServerSpec)
Health configures health checking on the GameServer
Field | Description |
---|---|
disabled
bool
|
Disabled is whether health checking is disabled or not |
periodSeconds
int32
|
PeriodSeconds is the number of seconds each health ping has to occur in |
failureThreshold
int32
|
FailureThreshold how many failures in a row constitutes unhealthy |
initialDelaySeconds
int32
|
InitialDelaySeconds initial delay before checking health |
ListStatus
(Appears on: GameServerAllocationStatus, GameServerSpec, GameServerStatus)
ListStatus stores the current list values and maximum capacity
Field | Description |
---|---|
capacity
int64
|
|
values
[]string
|
PlayerStatus
(Appears on: GameServerStatus)
PlayerStatus stores the current player capacity values
Field | Description |
---|---|
count
int64
|
|
capacity
int64
|
|
ids
[]string
|
PlayersSpec
(Appears on: GameServerSpec)
PlayersSpec tracks the initial player capacity
Field | Description |
---|---|
initialCapacity
int64
|
PortPolicy
(string
alias)
(Appears on: GameServerPort)
PortPolicy is the port policy for the GameServer
Priority
(Appears on: FleetSpec, GameServerAllocationSpec, GameServerSetSpec)
Priority is a sorting option for GameServers with Counters or Lists based on the available capacity, i.e. the current Capacity value, minus either the Count value or List length.
Field | Description |
---|---|
type
string
|
Type: Sort by a “Counter” or a “List”. |
key
string
|
Key: The name of the Counter or List. If not found on the GameServer, has no impact. |
order
string
|
Order: Sort by “Ascending” or “Descending”. “Descending” a bigger available capacity is preferred. “Ascending” would be smaller available capacity is preferred. The default sort order is “Ascending” |
SdkServer
(Appears on: GameServerSpec)
SdkServer specifies parameters for the Agones SDK Server sidecar container
Field | Description |
---|---|
logLevel
SdkServerLogLevel
|
LogLevel for SDK server (sidecar) logs. Defaults to “Info” |
grpcPort
int32
|
GRPCPort is the port on which the SDK Server binds the gRPC server to accept incoming connections |
httpPort
int32
|
HTTPPort is the port on which the SDK Server binds the HTTP gRPC gateway server to accept incoming connections |
SdkServerLogLevel
(string
alias)
(Appears on: SdkServer)
SdkServerLogLevel is the log level for SDK server (sidecar) logs
allocation.agones.dev/v1
Package v1 is the v1 version of the API.
Resource Types:GameServerAllocation
GameServerAllocation is the data structure for allocating against a set of
GameServers, defined selectors
selectors
Field | Description | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion
string |
allocation.agones.dev/v1
|
||||||||||||||||||
kind
string
|
GameServerAllocation |
||||||||||||||||||
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||||||||||
spec
GameServerAllocationSpec
|
|
||||||||||||||||||
status
GameServerAllocationStatus
|
CounterAction
(Appears on: GameServerAllocationSpec)
CounterAction is an optional action that can be performed on a Counter at allocation.
Field | Description |
---|---|
action
string
|
(Optional)
Action must to either “Increment” or “Decrement” the Counter’s Count. Must also define the Amount. |
amount
int64
|
(Optional)
Amount is the amount to increment or decrement the Count. Must be a positive integer. |
capacity
int64
|
(Optional)
Capacity is the amount to update the maximum capacity of the Counter to this number. Min 0, Max int64. |
CounterSelector
(Appears on: GameServerSelector)
CounterSelector is the filter options for a GameServer based on the count and/or available capacity.
Field | Description |
---|---|
minCount
int64
|
(Optional)
MinCount is the minimum current value. Defaults to 0. |
maxCount
int64
|
(Optional)
MaxCount is the maximum current value. Defaults to 0, which translates as max(in64). |
minAvailable
int64
|
(Optional)
MinAvailable specifies the minimum capacity (current capacity - current count) available on a GameServer. Defaults to 0. |
maxAvailable
int64
|
(Optional)
MaxAvailable specifies the maximum capacity (current capacity - current count) available on a GameServer. Defaults to 0, which translates to max(int64). |
GameServerAllocationSpec
(Appears on: GameServerAllocation)
GameServerAllocationSpec is the spec for a GameServerAllocation
Field | Description |
---|---|
multiClusterSetting
MultiClusterSetting
|
MultiClusterPolicySelector if specified, multi-cluster policies are applied. Otherwise, allocation will happen locally. |
required
GameServerSelector
|
Deprecated: use field Selectors instead. If Selectors is set, this field is ignored. Required is the GameServer selector from which to choose GameServers from. Defaults to all GameServers. |
preferred
[]GameServerSelector
|
Deprecated: use field Selectors instead. If Selectors is set, this field is ignored.
Preferred is an ordered list of preferred GameServer selectors
that are optional to be fulfilled, but will be searched before the |
priorities
[]Priority
|
(Optional)
[Stage: Beta]
[FeatureFlag:CountsAndLists]
Priority of sorting is in descending importance. I.e. The position 0 For For |
selectors
[]GameServerSelector
|
Ordered list of GameServer label selectors. If the first selector is not matched, the selection attempts the second selector, and so on. This is useful for things like smoke testing of new game servers. Note: This field can only be set if neither Required or Preferred is set. |
scheduling
agones.dev/agones/pkg/apis.SchedulingStrategy
|
Scheduling strategy. Defaults to “Packed”. |
metadata
MetaPatch
|
MetaPatch is optional custom metadata that is added to the game server at allocation You can use this to tell the server necessary session data |
counters
map[string]agones.dev/agones/pkg/apis/allocation/v1.CounterAction
|
(Optional)
[Stage: Beta] [FeatureFlag:CountsAndLists] Counter actions to perform during allocation. |
lists
map[string]agones.dev/agones/pkg/apis/allocation/v1.ListAction
|
(Optional)
[Stage: Beta] [FeatureFlag:CountsAndLists] List actions to perform during allocation. |
GameServerAllocationState
(string
alias)
(Appears on: GameServerAllocationStatus)
GameServerAllocationState is the Allocation state
GameServerAllocationStatus
(Appears on: GameServerAllocation)
GameServerAllocationStatus is the status for an GameServerAllocation resource
Field | Description |
---|---|
state
GameServerAllocationState
|
GameServerState is the current state of an GameServerAllocation, e.g. Allocated, or UnAllocated |
gameServerName
string
|
|
ports
[]GameServerStatusPort
|
|
address
string
|
|
addresses
[]Kubernetes core/v1.NodeAddress
|
|
nodeName
string
|
|
source
string
|
If the allocation is from a remote cluster, Source is the endpoint of the remote agones-allocator. Otherwise, Source is “local” |
metadata
GameServerMetadata
|
|
counters
map[string]agones.dev/agones/pkg/apis/agones/v1.CounterStatus
|
|
lists
map[string]agones.dev/agones/pkg/apis/agones/v1.ListStatus
|
GameServerMetadata
(Appears on: GameServerAllocationStatus)
GameServerMetadata is the metadata from the allocated game server at allocation time
Field | Description |
---|---|
labels
map[string]string
|
|
annotations
map[string]string
|
GameServerSelector
(Appears on: GameServerAllocationSpec)
GameServerSelector contains all the filter options for selecting a GameServer for allocation.
Field | Description |
---|---|
LabelSelector
Kubernetes meta/v1.LabelSelector
|
(Members of See: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ |
gameServerState
GameServerState
|
GameServerState specifies which State is the filter to be used when attempting to retrieve a GameServer via Allocation. Defaults to “Ready”. The only other option is “Allocated”, which can be used in conjunction with label/annotation/player selectors to retrieve an already Allocated GameServer. |
players
PlayerSelector
|
(Optional)
[Stage:Alpha] [FeatureFlag:PlayerAllocationFilter] Players provides a filter on minimum and maximum values for player capacity when retrieving a GameServer through Allocation. Defaults to no limits. |
counters
map[string]agones.dev/agones/pkg/apis/allocation/v1.CounterSelector
|
(Optional)
[Stage: Beta] [FeatureFlag:CountsAndLists] Counters provides filters on minimum and maximum values for a Counter’s count and available capacity when retrieving a GameServer through Allocation. Defaults to no limits. |
lists
map[string]agones.dev/agones/pkg/apis/allocation/v1.ListSelector
|
(Optional)
[Stage: Beta] [FeatureFlag:CountsAndLists] Lists provides filters on minimum and maximum values for List capacity, and for the existence of a value in a List, when retrieving a GameServer through Allocation. Defaults to no limits. |
ListAction
(Appears on: GameServerAllocationSpec)
ListAction is an optional action that can be performed on a List at allocation.
Field | Description |
---|---|
addValues
[]string
|
(Optional)
AddValues appends values to a List’s Values array. Any duplicate values will be ignored. |
capacity
int64
|
(Optional)
Capacity updates the maximum capacity of the Counter to this number. Min 0, Max 1000. |
ListSelector
(Appears on: GameServerSelector)
ListSelector is the filter options for a GameServer based on List available capacity and/or the existence of a value in a List.
Field | Description |
---|---|
containsValue
string
|
(Optional)
ContainsValue says to only match GameServers who has this value in the list. Defaults to “”, which is all. |
minAvailable
int64
|
(Optional)
MinAvailable specifies the minimum capacity (current capacity - current count) available on a GameServer. Defaults to 0. |
maxAvailable
int64
|
(Optional)
MaxAvailable specifies the maximum capacity (current capacity - current count) available on a GameServer. Defaults to 0, which is translated as max(int64). |
MetaPatch
(Appears on: GameServerAllocationSpec)
MetaPatch is the metadata used to patch the GameServer metadata on allocation
Field | Description |
---|---|
labels
map[string]string
|
|
annotations
map[string]string
|
MultiClusterSetting
(Appears on: GameServerAllocationSpec)
MultiClusterSetting specifies settings for multi-cluster allocation.
Field | Description |
---|---|
enabled
bool
|
|
policySelector
Kubernetes meta/v1.LabelSelector
|
PlayerSelector
(Appears on: GameServerSelector)
PlayerSelector is the filter options for a GameServer based on player counts
Field | Description |
---|---|
minAvailable
int64
|
|
maxAvailable
int64
|
autoscaling.agones.dev/v1
Package v1 is the v1 version of the API.
Resource Types:FleetAutoscaler
FleetAutoscaler is the data structure for a FleetAutoscaler resource
Field | Description | ||||||
---|---|---|---|---|---|---|---|
apiVersion
string |
autoscaling.agones.dev/v1
|
||||||
kind
string
|
FleetAutoscaler |
||||||
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||
spec
FleetAutoscalerSpec
|
|
||||||
status
FleetAutoscalerStatus
|
ActivePeriod
(Appears on: SchedulePolicy)
ActivePeriod defines the time period that the policy is applied.
Field | Description |
---|---|
timezone
string
|
Timezone to be used for the startCron field. If not set, startCron is defaulted to the UTC timezone. |
startCron
string
|
StartCron defines when the policy should be applied. If not set, the policy is always to be applied within the start and end time. This field must conform to UNIX cron syntax. |
duration
string
|
Duration is the length of time that the policy is applied. If not set, the duration is indefinite. A duration string is a possibly signed sequence of decimal numbers, (e.g. “300ms”, “-1.5h” or “2h45m”). The representation limits the largest representable duration to approximately 290 years. Valid time units are “ns”, “us” (or “µs”), “ms”, “s”, “m”, “h”. |
Between
(Appears on: SchedulePolicy)
Between defines the time period that the policy is eligible to be applied.
Field | Description |
---|---|
start
Kubernetes meta/v1.Time
|
Start is the datetime that the policy is eligible to be applied. This field must conform to RFC3339 format. If this field not set or is in the past, the policy is eligible to be applied as soon as the fleet autoscaler is running. |
end
Kubernetes meta/v1.Time
|
End is the datetime that the policy is no longer eligible to be applied. This field must conform to RFC3339 format. If not set, the policy is always eligible to be applied, after the start time above. |
BufferPolicy
(Appears on: FleetAutoscalerPolicy)
BufferPolicy controls the desired behavior of the buffer policy.
Field | Description |
---|---|
maxReplicas
int32
|
MaxReplicas is the maximum amount of replicas that the fleet may have. It must be bigger than both MinReplicas and BufferSize |
minReplicas
int32
|
MinReplicas is the minimum amount of replicas that the fleet must have If zero, it is ignored. If non zero, it must be smaller than MaxReplicas and bigger than BufferSize |
bufferSize
k8s.io/apimachinery/pkg/util/intstr.IntOrString
|
BufferSize defines how many replicas the autoscaler tries to have ready all the time Value can be an absolute number (ex: 5) or a percentage of desired gs instances (ex: 15%) Absolute number is calculated from percentage by rounding up. Example: when this is set to 20%, the autoscaler will make sure that 20% of the fleet’s game server replicas are ready. When this is set to 20, the autoscaler will make sure that there are 20 available game servers Must be bigger than 0 Note: by “ready” we understand in this case “non-allocated”; this is done to ensure robustness and computation stability in different edge case (fleet just created, not enough capacity in the cluster etc) |
ChainEntry
ChainEntry defines a single entry in the ChainPolicy.
Field | Description |
---|---|
id
string
|
ID is the unique identifier for a ChainEntry. If not set the identifier will be set to the index of chain entry. |
FleetAutoscalerPolicy
FleetAutoscalerPolicy
|
(Members of Policy is the name of the policy to be applied. Required field. |
ChainPolicy
([]agones.dev/agones/pkg/apis/autoscaling/v1.ChainEntry
alias)
(Appears on: FleetAutoscalerPolicy)
ChainPolicy controls the desired behavior of the Chain autoscaler policy.
CounterPolicy
(Appears on: FleetAutoscalerPolicy)
CounterPolicy controls the desired behavior of the Counter autoscaler policy.
Field | Description |
---|---|
key
string
|
Key is the name of the Counter. Required field. |
maxCapacity
int64
|
MaxCapacity is the maximum aggregate Counter total capacity across the fleet. MaxCapacity must be bigger than both MinCapacity and BufferSize. Required field. |
minCapacity
int64
|
MinCapacity is the minimum aggregate Counter total capacity across the fleet. If zero, MinCapacity is ignored. If non zero, MinCapacity must be smaller than MaxCapacity and bigger than BufferSize. |
bufferSize
k8s.io/apimachinery/pkg/util/intstr.IntOrString
|
BufferSize is the size of a buffer of counted items that are available in the Fleet (available capacity). Value can be an absolute number (ex: 5) or a percentage of desired gs instances (ex: 5%). An absolute number is calculated from percentage by rounding up. Must be bigger than 0. Required field. |
FixedIntervalSync
(Appears on: FleetAutoscalerSync)
FixedIntervalSync controls the desired behavior of the fixed interval based sync.
Field | Description |
---|---|
seconds
int32
|
Seconds defines how often we run fleet autoscaling in seconds |
FleetAutoscaleRequest
(Appears on: FleetAutoscaleReview)
FleetAutoscaleRequest defines the request to webhook autoscaler endpoint
Field | Description |
---|---|
uid
k8s.io/apimachinery/pkg/types.UID
|
UID is an identifier for the individual request/response. It allows us to distinguish instances of requests which are otherwise identical (parallel requests, requests when earlier requests did not modify etc) The UID is meant to track the round trip (request/response) between the Autoscaler and the WebHook, not the user request. It is suitable for correlating log entries between the webhook and apiserver, for either auditing or debugging. |
name
string
|
Name is the name of the Fleet being scaled |
namespace
string
|
Namespace is the namespace associated with the request (if any). |
status
FleetStatus
|
The Fleet’s status values |
FleetAutoscaleResponse
(Appears on: FleetAutoscaleReview)
FleetAutoscaleResponse defines the response of webhook autoscaler endpoint
Field | Description |
---|---|
uid
k8s.io/apimachinery/pkg/types.UID
|
UID is an identifier for the individual request/response. This should be copied over from the corresponding FleetAutoscaleRequest. |
scale
bool
|
Set to false if no scaling should occur to the Fleet |
replicas
int32
|
The targeted replica count |
FleetAutoscaleReview
FleetAutoscaleReview is passed to the webhook with a populated Request value, and then returned with a populated Response.
Field | Description |
---|---|
request
FleetAutoscaleRequest
|
|
response
FleetAutoscaleResponse
|
FleetAutoscalerPolicy
(Appears on: ChainEntry, FleetAutoscalerSpec, SchedulePolicy)
FleetAutoscalerPolicy describes how to scale a fleet
Field | Description |
---|---|
type
FleetAutoscalerPolicyType
|
Type of autoscaling policy. |
buffer
BufferPolicy
|
(Optional)
Buffer policy config params. Present only if FleetAutoscalerPolicyType = Buffer. |
webhook
WebhookPolicy
|
(Optional)
Webhook policy config params. Present only if FleetAutoscalerPolicyType = Webhook. |
counter
CounterPolicy
|
(Optional)
[Stage:Beta] [FeatureFlag:CountsAndLists] Counter policy config params. Present only if FleetAutoscalerPolicyType = Counter. |
list
ListPolicy
|
(Optional)
[Stage:Beta] [FeatureFlag:CountsAndLists] List policy config params. Present only if FleetAutoscalerPolicyType = List. |
schedule
SchedulePolicy
|
(Optional)
[Stage:Dev] [FeatureFlag:ScheduledAutoscaler] Schedule policy config params. Present only if FleetAutoscalerPolicyType = Schedule. |
chain
ChainPolicy
|
(Optional)
[Stage:Dev] [FeatureFlag:ScheduledAutoscaler] Chain policy config params. Present only if FleetAutoscalerPolicyType = Chain. |
FleetAutoscalerPolicyType
(string
alias)
(Appears on: FleetAutoscalerPolicy)
FleetAutoscalerPolicyType is the policy for autoscaling for a given Fleet
FleetAutoscalerSpec
(Appears on: FleetAutoscaler)
FleetAutoscalerSpec is the spec for a Fleet Scaler
Field | Description |
---|---|
fleetName
string
|
|
policy
FleetAutoscalerPolicy
|
Autoscaling policy |
sync
FleetAutoscalerSync
|
(Optional)
Sync defines when FleetAutoscalers runs autoscaling |
FleetAutoscalerStatus
(Appears on: FleetAutoscaler)
FleetAutoscalerStatus defines the current status of a FleetAutoscaler
Field | Description |
---|---|
currentReplicas
int32
|
CurrentReplicas is the current number of gameserver replicas of the fleet managed by this autoscaler, as last seen by the autoscaler |
desiredReplicas
int32
|
DesiredReplicas is the desired number of gameserver replicas of the fleet managed by this autoscaler, as last calculated by the autoscaler |
lastScaleTime
Kubernetes meta/v1.Time
|
(Optional)
lastScaleTime is the last time the FleetAutoscaler scaled the attached fleet, |
ableToScale
bool
|
AbleToScale indicates that we can access the target fleet |
scalingLimited
bool
|
ScalingLimited indicates that the calculated scale would be above or below the range defined by MinReplicas and MaxReplicas, and has thus been capped. |
FleetAutoscalerSync
(Appears on: FleetAutoscalerSpec)
FleetAutoscalerSync describes when to sync a fleet
Field | Description |
---|---|
type
FleetAutoscalerSyncType
|
Type of autoscaling sync. |
fixedInterval
FixedIntervalSync
|
(Optional)
FixedInterval config params. Present only if FleetAutoscalerSyncType = FixedInterval. |
FleetAutoscalerSyncType
(string
alias)
(Appears on: FleetAutoscalerSync)
FleetAutoscalerSyncType is the sync strategy for a given Fleet
ListPolicy
(Appears on: FleetAutoscalerPolicy)
ListPolicy controls the desired behavior of the List autoscaler policy.
Field | Description |
---|---|
key
string
|
Key is the name of the List. Required field. |
maxCapacity
int64
|
MaxCapacity is the maximum aggregate List total capacity across the fleet. MaxCapacity must be bigger than both MinCapacity and BufferSize. Required field. |
minCapacity
int64
|
MinCapacity is the minimum aggregate List total capacity across the fleet. If zero, it is ignored. If non zero, it must be smaller than MaxCapacity and bigger than BufferSize. |
bufferSize
k8s.io/apimachinery/pkg/util/intstr.IntOrString
|
BufferSize is the size of a buffer based on the List capacity that is available over the current aggregate List length in the Fleet (available capacity). It can be specified either as an absolute value (i.e. 5) or percentage format (i.e. 5%). Must be bigger than 0. Required field. |
SchedulePolicy
(Appears on: FleetAutoscalerPolicy)
SchedulePolicy controls the desired behavior of the Schedule autoscaler policy.
Field | Description |
---|---|
between
Between
|
Between defines the time period that the policy is eligible to be applied. |
activePeriod
ActivePeriod
|
ActivePeriod defines the time period that the policy is applied. |
policy
FleetAutoscalerPolicy
|
Policy is the name of the policy to be applied. Required field. |
WebhookPolicy
(Appears on: FleetAutoscalerPolicy)
WebhookPolicy controls the desired behavior of the webhook policy. It contains the description of the webhook autoscaler service used to form url which is accessible inside the cluster
Field | Description |
---|---|
url
string
|
(Optional)
The Please note that using The scheme must be “https”; the URL must begin with “https://”. A path is optional, and if present may be any string permissible in a URL. You may use the path to pass an arbitrary string to the webhook, for example, a cluster identifier. Attempting to use a user or basic auth e.g. “user:password@” is not allowed. Fragments (“#…”) and query parameters (“?…”) are not allowed, either. |
service
Kubernetes admissionregistration/v1.ServiceReference
|
(Optional)
If the webhook is running within the cluster, then you should use |
caBundle
[]byte
|
(Optional)
|
multicluster.agones.dev/v1
Package v1 is the v1 version of the API.
Resource Types:GameServerAllocationPolicy
GameServerAllocationPolicy is the Schema for the gameserverallocationpolicies API
Field | Description | ||||||
---|---|---|---|---|---|---|---|
apiVersion
string |
multicluster.agones.dev/v1
|
||||||
kind
string
|
GameServerAllocationPolicy |
||||||
metadata
Kubernetes meta/v1.ObjectMeta
|
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||
spec
GameServerAllocationPolicySpec
|
|
ClusterConnectionInfo
(Appears on: GameServerAllocationPolicySpec)
ClusterConnectionInfo defines the connection information for a cluster
Field | Description |
---|---|
clusterName
string
|
Optional: the name of the targeted cluster |
allocationEndpoints
[]string
|
The endpoints for the allocator service in the targeted cluster. If the AllocationEndpoints is not set, the allocation happens on local cluster. If there are multiple endpoints any of the endpoints that can handle allocation request should suffice |
secretName
string
|
The name of the secret that contains TLS client certificates to connect the allocator server in the targeted cluster |
namespace
string
|
The cluster namespace from which to allocate gameservers |
serverCa
[]byte
|
The PEM encoded server CA, used by the allocator client to authenticate the remote server. |
ConnectionInfoIterator
ConnectionInfoIterator an iterator on ClusterConnectionInfo
Field | Description |
---|---|
currPriority
int
|
currPriority Current priority index from the orderedPriorities |
orderedPriorities
[]int32
|
orderedPriorities list of ordered priorities |
priorityToCluster
map[int32]map[string][]*agones.dev/agones/pkg/apis/multicluster/v1.GameServerAllocationPolicy
|
priorityToCluster Map of priority to cluster-policies map |
clusterBlackList
map[string]bool
|
clusterBlackList the cluster blacklist for the clusters that has already returned |
GameServerAllocationPolicySpec
(Appears on: GameServerAllocationPolicy)
GameServerAllocationPolicySpec defines the desired state of GameServerAllocationPolicy
Field | Description |
---|---|
priority
int32
|
|
weight
int
|
|
connectionInfo
ClusterConnectionInfo
|
Generated with gen-crd-api-reference-docs
.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.
Last modified November 28, 2024: Set externalTrafficPolicy as Local for agones-allocator (#4022) (08bc4c0)