Download presentation
Presentation is loading. Please wait.
1
Airskiff: Your on-ramp to Airship Development
Title slide and introductions (1 min) Airskiff: Your on-ramp to Airship Development
2
An architectural overview of Airship
Airship Overview “Airship is a collection of loosely coupled, but interoperable, open source tools that declaratively automate cloud provisioning.” High-level architectural overview (2 mins) “Airship is a collection of loosely coupled, but interoperable, open source tools that declaratively automate cloud provisioning.” Consumes collection of documents that define site (e.g. K8s manifests, baremetal provisioning, defining networks, etc) Documents live in git repository (Airship-Treasuremap) Containers are the primary mechanism of delivery Motivations Orchestration: Batteries included Singular Deployment Method Predictable Upgrades Repeatable Multi-site Deployments Resiliency An architectural overview of Airship
3
What Why How Airskiff: Origins and Motivations Development environment
Continuous-integration gate What Operator-scale hardware requirements Sizeable configuration documents Long deployment times Why Bootstrap Kubernetes with Minikube Bootstrap Airship components with deployment scripts Deploy OpenStack using Treasuremap documents How Airskiff what/why (3 min) Development environment AND continuous-integration gate Treasuremap gate Built with learning in mind Why? AIAB multinode hardware requirements Amount of documents Long deployment times How Deployment scripts that tell a story (Boostrap K8s, then Airship, then deploy OSH) OSH-Infra script can be used to deploy Kubeadm on bare metal (BYOK8s scenario)
4
Introducing Airskiff Skiff (n): Airskiff (n):
Introducing Airskiff (< 1 min, do not include in total) Skiff (n): a shallow, flat-bottomed open boat Airskiff (n): a learning, development, and gating environment for Airship
5
Airship-in-a-Bottle* * Refers to AIAB multi-node environment
Motivations The Airship-in-a-Bottle multi-node environment is the de facto standard of Airship development. In reality, Airskiff offers quicker deployment times, requires fewer documents, and supports more hardware than the multi-node Airship-in-a-Bottle environment. Airship-in-a-Bottle* Airskiff AIAB & Airskiff Challenges involved in running full Airship (5 min) Traditional Airship development environment is AIAB multinode - Developers tend to not use single node env - Originated as a demo - AIAB requires 4 vCPUs, 20GB of RAM, and has a runtime of > 1 hr Airskiff requires only 12 GB of RAM and has a runtime of < 1 hr AIAB has more documents than Airskiff (elaborate on layer and replace method) Airskiff OTOH can run on laptop, reduces documents from Airship-seaworthy site (mention layer and replace), and deploys in less than one hour With both, you get Armada, Deckhand, Pegleg, Shipyard Professional-grade hardware Many documents Deploy > 1 hour Standard hardware Fewer documents Deploy < 1 hour Armada Deckhand Pegleg Shipyard * Refers to AIAB multi-node environment
6
Airskiff Timeline CI Gate added Airskiff created
Airskiff site added to treasuremap CI Gate added Minikube Duplicate validations removed CI gate introduced Airskiff introduced on GitHub History (2 min) Run through the timeline. Global Airship charts integrated 8/1 11/10 12/4 3/22 4/26 ? Duplicate validations removed Minikube integration
7
Develop with Airskiff Clone Deployment Scripts Airship OpenStack
Intro to development with Airskiff (< 1 min) Really easy to get started developing with Airskiff Once you’ve cloned treasuremap, -ust a matter of deployment scripts that boostrap a single-node kubernetes cluster using Minikube, deploy Airship components using an Armada container, deploy OpenStack using those Airship components In the end, something that looks like hierarchy
8
Execute Bootstrap Script
Develop with Airskiff Deploying a code change Develop with Airskiff – Code Changes (2 min) Build images Each component has tooling (Makefile) Resulting image is tagged “latest” UCP charts have value overrides for images tagged “latest” Execute Bootstrap script” Pegleg renders Armada documents Armada documents mounted to Armada container and deployed Armada output streams to stdout Test Airship Changes Deploying OpenStack Utilize APIs directly Execute CLI commands using utility scripts ./ Build Images Execute Bootstrap Script Test Airship Changes Build images of the Airship components you wish to deploy. Re-run the Armada bootstrap script. An Armada container will deploy your changes. Test your Airship changes by exercising individual Airship components or deploying chart changes to OpenStack services.
9
Execute Bootstrap Script
Develop with Airskiff Deploying a chart change Develop with Airskiff – Chart Changes (2 min) Update charts (Makefile to lint) Bootstrap script Pegleg renders Armada documents Chart changes mounted to Armada container and deployed from source Armada output streams to stdout ./ Update Charts Execute Bootstrap Script Test Airship Changes Make changes to the charts you wish to deploy. Airship chart documents in the Airskiff site already point to local changes on disk. Re-run the Armada bootstrap script. An Armada container will deploy your changes. Test your Airship changes by exercising individual Airship components or deploying chart changes to OpenStack services.
10
CI with Airskiff Changes committed to several Airship repositories are verified by a Zuul job that deploys an Airskiff environment with Memcached. Demo Airskiff gating results Repositories verified by Airskiff Armada Deckhand Shipyard Treasuremap Debugging Airskiff CI jobs Helm release statuses K8s objects Pod logs Pod listings
11
Airskiff Demo Scale the pod replica count of the Armada API in a previously-deployed Airskiff environment. Before the Demo Show all running pods (NOTE: there are no MaaS, Drydock, or Promenade pods). Demonstrate that Minikube is running. Steps Change the replica count of the Armada API to two in the chart values file. Execute the bootstrap script to update the chart. Demonstrate that the values show two replicas using Helm. Demonstrate that the Armada API runs with two replicas.
12
Future Plans As Airskiff has evolved alongside the Treasuremap repository, it has become better-aligned with the rest of Airship to introduce new tools and functionality. Bring-your-own-bare-metal or K8s Cluster API Integration MetalKube project Planned enhancements (tracked on Treasuremap storyboard) Document labeling standards Single-node deployment type Airskiff lite Service layers
13
Elevate Your Infrastructure
Join the Community Mailing Lists: lists.airshipit.org Freenode IRC: #airshipit Website: Join the Foundation mailing list to stay up to date on all new projects!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.