Bootstrap

Prepare to deploy Kubernetes clusters

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.

Bootstrap Cluster Lifecycle Services

  1. If an HTTP proxy is required for the bootstrap cluster, set the local http_proxy, https_proxy, and no_proxy environment variables. They are copied into the bootstrap cluster.

  2. Create a bootstrap cluster:

    dkp create bootstrap --kubeconfig $HOME/.kube/config
    
     ✓ Creating a bootstrap cluster
     ✓ Initializing new CAPI components
    

    Konvoy creates a bootstrap cluster using KIND as a library. Konvoy then deploys the following Cluster API providers on the cluster:

    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
    
    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            1           2m21s