Hypergiant Logo
Industry: Public Sector
Location: USA
Download Full Story

Hypergiant: Putting Managed Compute Power in Space with K3s

Highlights

  • 80% reduction in deployment time compared to manual methodology — from weeks to days.
  • World first: Kubernetes clusters in space for the first time.
  • Creating a long-term commercial future for space hardware.
  • K3s clusters created in minutes.
  • Simple remote update and patching.

Products

Hypergiant Industries focuses on solving humanity’s most challenging problems by delivering best in class artificial intelligence solutions and products. The company cre­ates emerging AI-driven technologies for Fortune 500 and government clients work­ing in a host of sectors, including space science and exploration, satellite commu­nications, aviation, defense, health care, transportation and more.

Previously a Cyber Transport Journeyman in the U.S. Air National Guard, Bren Briggs is used to being deployed to the most hostile environments to design and run command and control communications. Now respon­sible for DevOps and Cybersecurity at Hy­pergiant, Briggs draws on his military back­ground, bringing expertise in designing and building repeatable, secure deployments of Kubernetes and other infrastructure to support Hypergiant’s AI and machine learning (ML) applications and customers.

Briggs is one member of a wider team of experts working for the U.S. Department of Defense’s official DevSecOps enter­prise services platform, DOD PlatformONE. Briggs works alongside SUSE RGS’s co-founder and Kubernetes Edge Architect Chris Nuber, and Hypergiant’s Space Sys­tems Architect Chris Tacke. Together, they are on track to achieve the impossible in the most hostile environment of all—put­ting K3s clusters to work in orbit on military satellites for the very first time.

Overview

Leveraging Rancher Prime’s lightweight and compact Kubernetes solution, K3s, Hypergiant aims to deploy the modern, lightweight software systems that will drive the next evolution and commoditization of the satellite industry.

The Journey to Kubernetes

Hypergiant and SUSE RGS are work­ing together with DOD PlatformONE to demonstrate the benefits of DevSecOps, Kubernetes and AI/ML apps in remote and often disconnected environments. Work­ing with K3s (recently accepted as a CNCF Sandbox project), the team is developing and integrating their software pipeline with the EdgeONE and SatelliteONE missions, in­cluding the launch of Hypergiant’s Kuber­netes-embedded satellite planned for the first quarter of 2021.

Briggs started working with Kubernetes several years ago to solve the problem of managing multiple Docker containers. At that time, containers were built and shipped like virtual machines (VMs) — updated and managed in Puppet. With a growing need for consistency, Kubernetes became an im­portant way to reliably network the estate of containers and manage them centrally.

In 2019, Briggs brought this experience to Hy­pergiant, where he noticed repetition in ex­isting development methods. He recognized the need for a platform that would allow de­velopers to deploy repeatable patterns with less manual effort. They needed a cloud that could run anywhere, and so Briggs suggest­ed Kubernetes as a way to automate the cre­ation of repeatable workloads. In early 2020, the team started rolling out Kubernetes on several internal systems. As they ran on AWS, EKS was initially deployed to orchestrate the first cluster, but soon, K3s entered the team’s consciousness.

With a mandate to find a way to run Ku­bernetes in space, Briggs, Tacke and Nuber began investigating. Briggs was impressed. K3s was designed as a lightweight, com­pact version of Kubernetes that could run in remote, low-power, hostile environments. Available ‘off the shelf,’ K3s was easy to in­stall and avoided the need for Briggs and the team to ‘roll their own’ lightweight dis­tribution. Crucially, Briggs estimates de­ploying a cluster takes just a day using K3s, compared to weeks in a manual methodol­ogy. The cluster itself builds in 10 minutes using Ansible plays. Provisioning base ser­vices takes another 30 minutes. Production can be ready before launch once the auto­mation has been written.

There isn’t another version of Kubernetes that can meet our use case. K3s has allowed us to build infrastructure suitable for use in space without the need to create our edge distribution.

A World First: Putting Kubernetes Clusters in Orbit

The satellite industry faces several prob­lems. Firstly, space-rated hardware is cost­ly. Software development and delivery pro­cesses are slow. And it’s cold — really cold. On-orbit satellite software updates are often not possible or incredibly time-con­suming and expensive. As a result, AI/ML capabilities are far behind those currently available on earth.

Satellite connectivity and bandwidth are poor, which makes downloading large im­ages and other data difficult. The Satel­liteONE mission has been designed to solve this problem. The project will demonstrate DevSecOps in space by leveraging Platfor­mONE’s CI/CD pipeline alongside Kuber­netes provisioning and deployment. Impor­tantly, it will evaluate the use of lower-cost hardware on satellite payloads, show how the rapid delivery of software updates in space can be done and demonstrate the use of AI/ML software in orbit.

The U.S. Department of Defense, along with governments worldwide, are looking for ways to build longevity and sustainability into satellite fleets. They want to modern­ize their entire fleets to be managed, main­tained, and, crucially, reconfigured for vari­ous use cases for the long term. This is a massive shift, but investment in moderniza­tion will create agile technology stacks that can be more easily updated and replaced in the future.

Because K3s is packaged as a single <40MB binary, it reduces the dependencies and steps needed to install, run and auto-up­date a production Kubernetes cluster. Sup­porting both ARM64 and ARMv7, K3s works just as well on a Raspberry Pi as it does with an AWS a1.4xlarge 32GiB server. K3s is en­abling Hypergiant to deploy the modern, lightweight software systems that will drive the next evolution and commoditization of the satellite industry.

Deploying K3s to Achieve the Impossible

SatelliteONE’s initial mission is an important one — to take a picture of Baby Yoda. While this doesn’t sound particularly groundbreak­ing, this exercise’s primary purpose is to dem­onstrate the ability to capture images and perform AI and ML workloads at the edge.

This is an important milestone given the bandwidth constraints experienced in space. When dealing with a link, measured in kilobits per second, only available for a few minutes at a time during a flyover win­dow, transfer efficiency is the ultimate goal. In this use case, the team wants to transfer the minimum amount of information.

The architecture consists of two Raspberry Pi server nodes, independent of each oth­er, with one being a warm backup. There are two Raspberry Pi 4 worker nodes, each loaded with a Pi camera, and another Raspberry Pi 4 with an accelerometer and light sensor. Finally, there is a Jetson nano module (developed by NVIDIA), a $99 IOT AI processor mounted on the satellite and used to capture and process the image of Baby Yoda.

The two master nodes have an addition­al ethernet adapter attached to another switch and have connectivity to the Cygnus device and external network, allowing com­munication with the ground (Cygnus is the vehicle the team is hitching a ride on cour­tesy of Northrop Grumman). There are two independent K3s server nodes in place. This is critical should one server device fail in orbit — the team can quickly communicate with the server node, automatically failover, or run scripts to rebuild the cluster in a mat­ter of minutes. Since the clusters are logi­cally separated, all the K3s images and the application workloads are stored locally on each node — less overhead and one less point of failure.

Importantly, this is about sending analysis rather than the raw image itself. Ultimate­ly, a human can still make decisions as to which photos to downlink. However, the focus here is to process decisions at the edge, sending analysis and results instead of the raw dataset.

The team is also conducting a temperature experiment to observe how the Jetson be­haves in a vacuum under a heavy compu­tational load. Why, though, would the team put a whole satellite in space to take a few pictures of Baby Yoda and conduct tem­perature measurements?

By proving these basic processes work, the team can highlight the use case for Kuber­netes in orbit. Industries of all kinds that rely on satellite communications and imaging want to create modern satellite fleets that can be used for longer and have less envi­ronmental impact.

By deploying novel compute technologies, like K3s on orbiting devices, their longevity and ongoing usability are assured. Working with K3s, Hypergiant, SUSE RGS and DOD PlatformONE are creating a commer­cial future for data processing in space.