Overview

Agones is a library for hosting, running and scaling dedicated game servers on Kubernetes.

Agones, is derived from the Greek word agōn which roughly translates to “contest”, “competition at games” and “gathering” (source).

Disclaimer

This software is currently alpha, and subject to change. Not to be used in production systems.

Why does this project exist?

Agones replaces usual bespoke or proprietary cluster management and game server scaling solutions with a Kubernetes cluster that includes the Agones custom Kubernetes Controller and matching Custom Resource Definitions for GameServers, Fleets and more.

With Agones, Kubernetes gets native abilities to create, run, manage and scale dedicated game server processes within Kubernetes clusters using standard Kubernetes tooling and APIs. This model also allows any matchmaker to interact directly with Agones via the Kubernetes API to provision a dedicated a game server.

For more details on why this project was written, read the announcement blog post.

Major Features

  • Define a single GameServer, and/or large game server Fleets within Kubernetes - either through yaml or via the API
  • Manage GameServer lifecycles - including health checking and connection information.
  • Fleet Autoscaling capabilities that integrate with Kubernetes’ native cluster autoscaling
  • Gameserver specific metric exports and dashboards for ops teams

Requirements

Code of Conduct

Participation in this project comes under the Contributor Covenant Code of Conduct

This all sounds great, but can you explain Docker and/or Kubernetes to me?

Docker

Kubernetes