Seaworthy: Production-grade Airship
Airship Seaworthy is a multi-node site deployment reference and continuous integration pipeline.
The site manifests are available at site/seaworthy.
Pipeline
Airship Seaworthy pipeline automates deployment flow documented in Site Authoring and Deployment Guide.
The pipeline is implemented as Jenkins Pipeline (Groovy), see code for the pipeline at Jenkinsfile.
Versions
The manifest overrides (versions.yaml) are setup to deploy OpenStack Ocata.
The versions are kept up to date via updater.py, a utility that updates versions.yaml latest charts and (selected) images.
Due to the limited capacity of a test environment, only Ubuntu-based images are used at the moment.
The pipeline attempts to uplift and deploy latest versions on daily bases.
Hardware
While HW configuration is flexible, Airship Seaworthy reference manifests reflect full HA deployment, similar to what might be expected in production.
Reducing number of control/compute nodes will require site overrides to align parts of the system such as Ceph replication, etcd, etc.
Airship Seaworthy site has 6 DELL R720xd bare-metal servers: 3 control, and 3 compute nodes. See host profiles for the servers here.
- Control (masters)
cab23-r720-11
cab23-r720-12
cab23-r720-13
- Compute (workers)
cab23-r720-14
cab23-r720-17
cab23-r720-19
Network
Physical (underlay) networks are described in Drydock site configuration here. It defines OOB (iLO/IPMI), untagged PXE, and multiple tagged general use networks.
Calico overlay for k8s POD networking uses IPIP mesh.
BGP peering is supported but not enabled in this setup, see Calico chart.