HackedA K8s-based game where you seek out and destroy...

A K8s-based game where you seek out and destroy pods in a shootem’ up style

-

- Advertisment -

Kube Chaos is a twin-stick style shmup game in the style of chaos engineering. The game interfaces with your Kubernetes cluster and allows you to explore your cluster nodes and destroy live, running pods on those nodes. The game logic is written in C# and is powered by the Unity engine.


kube-chaos-quick-demo-1.mp4


Read more about kube-chaos’ beginnings here

Requirements

  • kubectl and a working kube context to your cluster. Kubectl must be in your system path too.
  • A namespace with running pods (that you don’t mind destroying via the game)
  • Decent enough hardware to run the game. (It uses Unity engine)

Downloading and Running

Source

You can compile the source and build your own executable yourself. You’ll need Unity version 2019.4 or later. When doing this you should be able to switch and build for multiple platforms. Linux and macOS builds should work fine in addition to Windows.

Release

- Advertisement -

You can download a pre-compiled release (Windows/macOS) from the Releases page. Unzip and run the executable to get started.

Building

To build from source, install Unity 2019.4 or later. The default installation will allow you to target PC, macOS or Linux Standalone.

  • Launch the Unity Editor or Unity Hub and load the project from the root folder level of this repository.
  • On first load, Unity will generate the library assets. Be patient as this can take a few minutes sometimes.
  • Go to File -> Build Settings (or CTRL/CMD-SHIFT-B). Make sure the settings and Scenes In Build look like the below:

  • Configure the Target Platform to the platform you want to build for. E.g. Windows / macOs / Linux.
  • Optionally configure Window resolution and other settings using the Player Settings button. The defaults should be fine though.
  • Click Build and choose a location for the output build. Once complete the executable to launch the game will be placed in this location.
  • The build will take a few moments to complete…

- Advertisement -

  • Open the executable to run the game.

Game Configuration

The starting screen will allow you to enter your:

  • Kube context name. Default kubernetes-admin@kubernetes.
  • Namespace to target (find and destroy pods). Default demo.
  • Name of your kubectl executable/binary. Default kubectl

Note for macOS: Enter the full / absolute path to kubectl in the textbox in the main menu. Click Start. If your nodes don’t appear in the spawn area, then quit the game (CMD + Q) and try again. There seems to be a time related bug around the game executing the kubectl process in the background on initial start (where KubeManager.cs should load the node info to begin with in a thread).

Other

The game is really just a POC, and I hacked it together pretty quickly. In an ideal world I would have got the C# kubernetes-client library working with Unity and used the kube API. NuGet and Unity don’t play nicely together so for a quick hack solution I went with calling out to the kubectl process from in-game. These processes are launched in separate threads to keep the game smooth and pause-free. I don’t do any fancy thread lifecycle management, so threads are aborted/killed randomly during the game. Performance still seems fine for the demo.

There may be small issues here and there. Feel free to raise them as issues and/or fix them and submit PRs.

Join the pack! Join 8000+ others registered users, and get chat, make groups, post updates and make friends around the world!
www.knowasiak.com/register/
Read More

- Advertisement -

1 Comment

  1. Ha, an agency i worked at years ago did very similar with some Azure container service.

    We actually hosted the game in the pods, so if you took them all down simultaneously and refreshed you could get a brief 404 as they were spinning back up.

You might also likeRELATED
Recommended to you

Microsoft to Acquire Activision Blizzard

Legendary games, immersive interactive entertainment and publishing expertise accelerate growth in Microsoft’s Gaming business across mobile, PC, console and cloud. Microsoft announced plans to acquire Activision Blizzard, a leader in game development and an interactive entertainment content publisher. The planned acquisition includes iconic franchises from the Activision, Blizzard and King studios like “Warcraft,” “Diablo,” “Overwatch,”…

Contemporary EU recordsdata blockage as German court docket would ban many cookie management services

On Dec. 1, the Wiesbaden Administrative Court issued a first-of-its-kind decision holding that companies cannot use a cookie management provider that relies on a U.S.-based service to collect data, irrespective of whether the data actually ever leaves the EU. Because cookie management requirements apply for EU websites generally, EU-wide adoption of this case’s theories would…

Seconds before a 6.2 earthquake rattled California, phones got a vital warning

In the moments before a 6.2-magnitude earthquake struck the northern California coast on Monday, roughly half a million phones...

The Canas (Low-cost Ass Network Associated Storage)

Overview I wanted a NAS for my home network. I could have just built a PC and shoved some hard drives in it. I wasn’t really interested in that approach at this time, because hardware prices are very high right now. Also size, noise, and power consumption is higher than a dedicated NAS. I also…
- Advertisement -

DIY Raspberry Pi Spectrometer Guide

Update 2021-10-30 The software works well on the new...

Cryptocurrency Is a Giant Ponzi Scheme

Cryptocurrency is a scam. All of it, full stop — not just the latest pump-and-dump “shitcoin” schemes, in which fraudsters hype a little-known cryptocurrency before dumping it in unison, or “rug pulls,” in which a new cryptocurrency’s developers abandon the project and run off with investor funds. All cryptocurrency and the industry as a whole…

Must read

Show HN: Galeras – Detect AI generated images vs. authentic photos

Live Demo Choose image (Maximum file size 1MB): Synthetic vs Authentic Can you spot them? Synthetic Authentic Synthetic Authentic Synthetic Authentic Synthetic Authentic Synthetic Authentic Synthetic Authentic Try Live Demo Stay in the loop Your email:I'd like beta API access.

Two Sides of the Digital Coin

The year 2021 proved to be a tough one for anyone affected by the COVID-19 pandemic, though it was awesome for crime involving cryptocurrencies. Last year, illicit blockchain addresses received a whopping $14bn in ill-gotten gains, almost twice the $7.8bn unlawfully obtained in 2020. That's according to Chainalysis, a blockchain data firm. More than half…
- Advertisement -