Although the name brings to mind a dirigible, Airship is a actually collection of loosely coupled, interoperable open-source tools that are nautically themed. It’s got a stellar crew working together — AT&T, South Korea Telecom, Intel and the OpenStack Foundation — with the aim of making life cycle management for open infrastructure repeatable and predictable.
Here’s a stem-to-stern rundown of what it is and what it can do for you.
What is Airship?
Airship provides for automated cloud provisioning and life cycle management in a declarative, predictable way, says AT&T’s lead cloud architect Alan Meadows. The telecom giant has been building on the foundation laid by the OpenStack-Helm project since 2017. Airship components help create sites, perform minor updates, make configuration changes and manage major software uplifts like OpenStack upgrades. The focus of the project has been on the implementation of a declarative platform to introduce OpenStack on Kubernetes and the life cycle management of the resulting cloud. “Simply put,” says Meadows, “the goal is to take bare mental infrastructure from data center loading dock to a functioning OpenStack cloud and then care for it beyond.”
Why use Airship?
Airship comes from the perspective that all site definitions should be completely declarative. Teams can manage YAML documents and submit them to the site where they are fully realized by software. End users don’t have to necessarily know what has changed in a YAML document. The full document bundle is submitted, then Airship figures out what needs to be done, whether that’s an initial site deployment or a simple update to the already existing site. Airship uses containers to deliver software, providing a required level of simultaneous coexistence and separation, letting teams handle any number of isolated dependency requirements. It also lets them progress containers that we release through development testing and finally production without changing them so they know what’s being deployed every time.
Airship allows for a single workflow for all life cycle management. That lets teams interact with the system in the exact same way whether it’s during the initial site deployment or future upgrades to live sites. Finally, Airship is a flexible solution. It’s a single platform that can support large cloud installations, small edge sites, and different software-defined-networks. It can also manage more than just OpenStack installations.
What tools make up the Airship project?
It must have been fun to bestow all of these projects with such swashbuckling names: Treasure Map is a documentation project. It outlines the various sub-projects and provides a reference architecture for the platform. Drydock is the bare-metal provisioning engine that works with Promenade to label and join the host to a Kubernetes cluster.
Divingbell is a lightweight solution for bare metal configuration for when elements of an operating system needs some extra non-containerized configuration. Deckhand acts like a centralized site design document storage back-end, keeping revision history of all site designs and changes. That allows teams to reuse common site design settings across different types of sites (and keeps the YAML documents compact with reusable elements). Armada is the enterprise solution, letting teams articulate every piece of software to run in a site, where to pull those charts from, in what order that will to be deployed, how to group them, how to test them, and how to roll them back if there’s a failure — all in a set of documents that teams can life cycle. Airship also uses Berth as a Kubernetes virtual machine runner, Promenade as a resilient, production-ready Kubernetes cluster generator and Pegleg, a tool to manage, build, aggregate, validate and test YAML documents for Airship document sets. You can check out the entire repository here.
What does an Airship-built cloud look like?
The image above shows during the presentation visually explains how Airship manages the entire life cycle of a project. Starting at the bottom and working up, there’s a bare metal host and a host operating system and network and storage configuration that is declared and laid down by Drydock. Promenade handles effectively two aspects of Kubernetes management: the manufacturing of the cluster and its life cycle, then it handles docker and Kubla configurations on new hosts as well as joining them to the cluster and labeling them appropriately so they receive the right workloads.
Airship then instantiates SEF and Calico using Helm parts orchestrated by Armada to provide storage and network capabilities to Kubernetes and the rest of the Airship components. Finally, OpenStack-Helm is used to provide a functioning OpenStack installation. It also logs, monitors, and handles alerts. “The entire stack is installed and life cycled in the exact same way,” says Meadows, “including Airship itself.”
You can see the entire presentation from the OpenStack Summit Vancouver including Rodolfo Pacheco’s explanatory animations and Seungkyu Ahn’s case study from South Korea, below.