polaris

module
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 13, 2024 License: GPL-3.0

README

Polaris

A Kubernetes operator for deploying dedicated video game servers.

Games available to host can be found in the registry.

Description

Bringing dedicated video game servers to the Kubernetes ecosystem.

Running game servers in containers is already useful for consistency and efficiency. This project takes things a step further by allowing the servers to be managed by an orchestrator.

In doing so, we can reap some of the benefits already built into Kubernetes:

  • Isolation - servers cannot access other instances
  • Self healing - if a failure occurs, servers automatically recover and resume within minutes
  • Platform agnostic - runs anywhere Kubernetes can; on any cloud

Not every Kubernetes component can be leveraged however, since game servers aren't compatible with some. Dedicated servers cannot have replicas, so cannot be highly available.

We believe that the benefits vastly outweigh the could have been's.

Supported versions

  • go version v1.21.0+
  • docker version 17.03+.
  • kubectl version v1.11.3+.
  • Access to a Kubernetes v1.11.3+ cluster.

Contributing

Rules for contributing to this repository.

We use VS Code as our IDE and Dev Containers to standardize our local environments.

Prerequisites
Steps
  1. Press F1 to open the command palette.
  2. Select Dev Containers: Clone Repository in Container Volume....
  3. Select or enter the url for this repository.
  4. Select the main branch.

Directories

Path Synopsis
v1alpha1
Package v1alpha contains API Schema definitions for the polaris v1 API group.
Package v1alpha contains API Schema definitions for the polaris v1 API group.
internal
pkg
client/clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
client/clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
client/clientset/versioned/typed/apis/v1alpha1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
client/clientset/versioned/typed/apis/v1alpha1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.
test

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL