Prepare your environment to run DKP with VMware vSphere
Fulfilling the prerequisites involves completing these two areas:
Before using DKP to create a vSphere cluster, verify that you have:
An x86_64-based Linux® or macOS® machine.
Download DKP binaries and Konvoy Image Builder (KIB) image bundle for Linux or macOS.
A Container engine/runtime installed is required to install DKP:
Version Docker® container engine version 18.09.2 or higher installed for Linux or MacOS - On macOS, Docker runs in a virtual machine which needs configured with at least 8 GB of memory.
Version 4.0 of Podman or higher for Linux. Host requirements found here: Host Requirements
You must have the container engine installed on the host where the DKP Konvoy CLI runs. For example, if you are installing Konvoy on your laptop, ensure the laptop has a supported version of Docker.
On macOS, Docker runs in a virtual machine. Configure this virtual machine with at least 8GB of memory.
kubectl 1.21.6 for interacting with the running cluster, installed on the host where the DKP Konvoy command line interface (CLI) runs.
A valid VMware vSphere account with credentials configured.
localvolumeprovisioner as the default storage provider. However,
localvolumeprovisioner is not suitable for production use. You should use a Kubernetes CSI compatible storage that is suitable for production.
You can choose from any of the storage options available for Kubernetes. To disable the default that Konvoy deploys, set the default StorageClass
localvolumeprovisioner as non-default. Then set your newly created StorageClass to be the default by following the commands in the Kubernetes documentation called Changing the Default Storage Class.
VMware vSphere Prerequisites
Before installing, verify that your VMware vSphere Client environment meets the following basic requirements:
Access to a bastion VM, or other network connected host, running vSphere Client version v6.7.x with Update 3 or later version.
You must be able to reach the vSphere API endpoint from where the Konvoy command line interface (CLI) runs.
vSphere account with credentials configured - this account must have Administrator privileges.
A RedHat® subscription with user name and password for downloading DVD ISOs.
For air-gapped environments, a bastion VM host template with access to a configured Docker registry. VMWare site has more information on vSphere Bastion Hosts. The recommended template naming pattern is
../folder-name/dkp-e2e-bastion-templateor similar. Each infrastructure provider has its own set of bastion host instructions. Refer to your provider’s site for details - Azure, AWS, GCP, or vSphere.
Valid vSphere values for the following:
vCenter API server URL.
Zone name that contains ESXi hosts for your cluster’s nodes.
Datastore name for the shared storage resource to be used for the VMs in the cluster.
Use of PersistentVolumes in your cluster depends on Cloud Native Storage (CNS), available in vSphere v6.7.x with Update 3 and later versions. CNS depends on this shared Datastore’s configuration.
Datastore URL from the datastore record for the shared datastore you want your cluster to use.
You need this URL value to ensure that the correct Datastore is used when DKP creates VMs for your cluster in vSphere.
Base template name, such as base-rhel-8, or base-rhel-7.
Name of a Virtual Network that has DHCP enabled for both air-gapped and non-air-gapped environments.
Resource Pools - at least one resource pool needed, with every host in the pool having access to shared storage, such as VSAN.
Each host in the resource pool needs access to shared storage, such as NFS or VSAN, to make use of MachineDeployments and high-availability control planes.
Non-air-gapped Create a Base OS image in vSphere
Air-gapped Create a Base Air-gapped OS VM Image