Pre-provisioned Air-gapped Bootstrap Cluster
Konvoy deploys all cluster lifecycle services to a bootstrap cluster, which deploys a workload cluster. When the workload cluster is ready, move the cluster lifecycle services to the workload cluster. The workload cluster then manages its own lifecycle.
To create Kubernetes clusters, Konvoy uses Cluster API (CAPI) controllers. These controllers run on a Kubernetes cluster. To get started, you need a bootstrap cluster. By default, Konvoy creates a bootstrap cluster for you in a Docker container using the Kubernetes-in-Docker (KIND) tool.
Prerequisites
Before you begin, you must:
Complete the steps in Prerequisites.
Ensure the
dkp
binary can be found in your $PATH.IF using a Registry Mirror even though you are not in an air-gapped environment, refer to the air-gapped section for loading images: Pre-provisioned Air-gapped Define Environment
Bootstrap Cluster Lifecycle Services
Review Universal Configurations for all Infrastructure Providers regarding settings, flags and other choices and then begin bootstrapping.
Create a bootstrap cluster:
CODEdkp create bootstrap --kubeconfig $HOME/.kube/config
Configuring an HTTP/HTTPS Proxy use
--http-proxy
,--https-proxy
, and--no-proxy
and their related values in this command for it to be successful.
Output:
✓ Creating a bootstrap cluster
✓ Initializing new CAPI components
Konvoy creates a bootstrap cluster using KIND as a library and deploys Cluster API providers on the cluster. Refer to Customizing CAPI Components for a Clusterfor more details.
Konvoy waits until the controller-manager and webhook deployments of these providers are ready. List these deployments using this command:
kubectl get --all-namespaces deployments -l=clusterctl.cluster.x-k8s.io
Output:
NAMESPACE NAME READY UP-TO-DATE AVAILABLE AGE
capa-system capa-controller-manager 1/1 1 1 2m8s
capi-kubeadm-bootstrap-system capi-kubeadm-bootstrap-controller-manager 1/1 1 1 2m10s
capi-kubeadm-control-plane-system capi-kubeadm-control-plane-controller-manager 1/1 1 1 2m10s
capi-system capi-controller-manager 1/1 1 1 2m11s
cappp-system cappp-controller-manager 1/1 1 1 2m6s
capv-system capv-controller-manager 1/1 1 1 2m5s
capz-system capz-controller-manager 1/1 1 1 2m7s
cert-manager cert-manager 1/1 1 1 2m21s
cert-manager cert-manager-cainjector 1/1 1 1 2m21s
cert-manager cert-manager-webhook 1/1 1
Konvoy creates a bootstrap cluster using KIND as a library. Konvoy then deploys the following Cluster API providers on the cluster: