Kubernetes Installer Comparison
Features | KubeOne | Kubespray | Kind | Kubeadm | OpenShift Origin | Airship |
---|---|---|---|---|---|---|
Declarative Cluster Configuration - describing the K8s cluster including infra components (eg. CRI, CNI), versions, number of nodes (master+worker), architecture, K8s certificates | Y | Y | N | N | Y | Y. Uses Kustomize for layering and substitution. |
Templated configuration | Y | Y | N | N | Y | Y. Uses Kustomize |
Centralized configuration model | Y | Y | Y | N | Y | Y |
Ability to use existing machines (from machine provisioning stage) | Y | Y | Y | Y | TBD. Recognizes the use case of "bring your own OS", but not committed to implementing in v2.0. | |
Ability to manage underlying infrastructure (i.e. to create and configure nodes for use by a cluster) | Y | N | unknown | N | depends on infra provider | Yes, integrates cluster-api-provider-metal3 |
Support for different architectures: Arm and x86 | Y | N | N | Y | unknown | N. ARM is out of scope for v2.0. Operators are welcome to step up and add the support. |
Y | Y | Y | Y | unknown | TBD, May run internally. | |
100% open source | Y | Y | Y | Y | Y | Y |
Support all CNCF-hosted projects | Y | unknown | Yes. Airship architecture allows users to deploy additional extensions and add-ons. If an extension has Helm charts, it can be optionally added to Airship life cycle management experience. | |||
Support for specific versions of K8s | Y | N | Y | Y | Y | Y |
Specific versions of K8s components | Y | Y | Y | |||
etcd | Y | Y | Y | Y | Y | Y |
Support for deploying from HEAD / `master` branch of K8s | Y | N | Y | Y | unknown | ? |
Container runtimes (containerd, cri-o) with specific versions | Y | Y | N | Y | Y | Y, uses cluster api kubeadm provider |
Kubernetes add-ons/extensions installation (e.g. CNI, CSI, Service Mesh, Ingress, LB, etc.) | partially | Y | ||||
Hybrid Support both VNF and CNF | Y | |||||
Customizable - pick and choose what and when to use for installation | Y | |||||