Skip to main content
Agones Logo

Welcome to Agones

Agones is a library for hosting, running and scaling dedicated game servers on Kubernetes. Built by Google Cloud for Games, Agones extends Kubernetes with custom resources and controllers specifically designed for game server workloads.

Why Agones?

Agones replaces bespoke or proprietary cluster management solutions with a Kubernetes-native approach. With Agones, you get:
  • Native Kubernetes Integration - Manage game servers using standard Kubernetes APIs and tooling
  • Direct Matchmaker Integration - Any matchmaker can interact with Agones via the Kubernetes API
  • Production-Ready Scaling - Automatic fleet scaling with buffer and webhook-based policies
  • Multi-Cloud Support - Run on GKE, EKS, AKS, or any Kubernetes cluster

Quickstart

Get your first game server running on Kubernetes in minutes

Architecture

Learn how Agones extends Kubernetes for game servers

Installation

Install Agones on your Kubernetes cluster

API Reference

Explore the complete API documentation

Key Features

GameServer CRDs

Define and manage individual game server instances with Kubernetes custom resources

Fleet Management

Scale pools of game servers with Fleet resources and automatic replacement

Auto-Scaling

Configure buffer, webhook, and counter-based autoscaling policies

Allocation System

Integrate matchmakers with allocation endpoints for server assignment

Multi-Cluster

Deploy globally with multi-cluster allocation support

Client SDKs

Integrate with Go, C++, C#, Node.js, Rust, Unity, and Unreal SDKs

Getting Started

1

Install Agones

Deploy Agones to your Kubernetes cluster using Helm or Terraform
helm repo add agones https://agones.dev/chart/stable
helm install agones agones/agones --namespace agones-system --create-namespace
2

Create a GameServer

Define your first game server using a simple YAML manifest
apiVersion: agones.dev/agones/v1
kind: GameServer
metadata:
  name: simple-game-server
spec:
  ports:
  - name: default
    containerPort: 7654
  template:
    spec:
      containers:
      - name: simple-server
        image: us-docker.pkg.dev/agones-images/examples/simple-game-server:0.33
3

Integrate the SDK

Use the Agones SDK in your game server to report health and readiness
import "agones.dev/agones/sdks/go"

sdk, err := sdk.NewSDK()
sdk.Ready()

Community & Support

GitHub

Star the project and contribute on GitHub

Slack

Join the Agones community on Slack

Next Steps

Ready to dive deeper? Explore these resources:

Core Concepts

Understand GameServers, Fleets, and the Agones architecture

Game Server Integration

Learn how to integrate Agones SDK into your game server

Operations Guide

Monitor, troubleshoot, and operate Agones in production

Advanced Topics

Explore security, custom controllers, and performance tuning

Build docs developers (and LLMs) love