Bye-bye on-prem deployment drama

On-prem deployments giving you a hard time? You can rely on Gravity, a Kubernetes packaging solution

Eirini-Eleni Papadopoulou
© Shutterstock / wickerwood  

Here’s something to help you put your feet on the ground! Gravity is an open source toolkit for creating “snapshots” of Kubernetes clusters. In this article, we take a closer look at its features and how it can be useful for your Kubernetes applications.

Gravity is a toolkit for creating “snapshots” of Kubernetes clusters and the applications running inside the clusters and got open sourced this fall by Gravitational.

According to its GitHub repo, those snapshots created with Gravity are called ‘application bundles’.

“An application bundle can be used to re-create full replicas of the original cluster in any environment where compliance and consistency matter, even in air-gapped server rooms. A bundle can run without human supervision, as a ‘Kubernetes appliance’.”

What are the benefits of using Gravity you ask? Good question. According to its GitHub repo, the benefits include

  • Idempotent clusters – Clusters created from the same bundle are always identical. There is no configuration drift over time; no “special snowflakes”.
  • Clusters are always “wrapped” with a privileged access gateway called Teleport – Unifies k8s and SSH authentication and keeps a detailed audit log for compliance purposes.
  • Includes tools to perform infrastructure validation prior to cluster provisioning – Allows cluster designers to prevent users from installing clusters on infrastructure that does not meet the system requirements.

Now, to give an overview of the features Gravity brings to this toolkit, here are the most interesting highlights:

  • Secure cluster snapshots
  • Automated installation wizard
  • Resource validation
  • Application publishing
  • Runs in clouds and on-premise
  • License creation / enforcement
  • Unified access management
  • Role-based access control
  • Security audit logging
  • Integrated certificate authority
  • Identity provider integrations
  • Session recording and playback
  • Multi-cluster control plane
  • Highly available architecture
  • Automated, in-place upgrades
  • Dynamic auto-scaling
  • Cluster logging aggregation
  • Monitoring and health checks

For further information on the features and characteristics of Gravity, make sure to check out the official documentation.

Getting started

If you are eager to give it a try, the Gravity team has created a Quick Start Guide. Here’s what you need to know.

Gravity is a Linux-based toolkit and, therefore, supports by default 64-bit versions of the Linux distributions specified here. What’s more, this guide requires Docker version 1.8 or newer. Run docker info before continuing to make sure you have Docker up and running on your system.

SEE ALSO: Kubernetes adoption hasn’t exploded yet, new study shows

If you are ready to go for the full deal, here’s how you get the tools. Gravity consists of three major components, namely:

  • tele: the CLI tool which is used for packaging and publishing applications.
  • tsh: the SSH client for establishing secure SSH connections between the Ops Center and the application instances running behind firewalls on private clouds. tsh is a part of Gravitational Teleport, a free open source SSH server developed, maintained and supported by Gravitational. It can be used independently from Gravity.
  • Ops Center: the Web UI for managing published applications and remotely accessing private cloud deployments.

For installing tele and tsh CLI tools onto your machine. You need to have sudo privileges:

# Download the latest version (this includes pre-releases and beta releases):
$ curl | bash

# ... or, if a specific version is needed:
$ curl | bash

Type tele version to make sure the installation was successful and then download the sample application Mattermost:

$ git clone

Eirini-Eleni Papadopoulou
Eirini-Eleni Papadopoulou was the editor for Coming from an academic background in East Asian Studies, she decided that it was time to go back to her high-school hobby that was computer science and she dived into the development world. Other hobbies include esports and League of Legends, although she never managed to escape elo hell (yet), and she is a guest writer/analyst for competitive LoL at TGH.

Inline Feedbacks
View all comments