This procedure describes how to use the Konvoy Image Builder (KIB) to create a Cluster API compliant Amazon Machine Image (AMI). AMI images contain configuration information and software to create a specific, pre-configured, operating environment. KIB uses variable overrides to specify base image and container images to use in your new AMI.
Create an Air-gapped AMI
Create an Image using Konvoy Image Builder (KIB) for use in an air-gapped cluster
Before you begin, you must:
Check the DKP Supported Kubernetes Versions.
Download the KIB bundle for your version of DKP prefixed with
konvoy-image-bundlefor your OS.
Create a working Docker or other registry setup.
Ensure you have met the minimal set of permissions from the AWS Image Builder Book.
A Minimal IAM Permissions for KIB to create an Image for an AWS account using Konvoy Image Builder.
The default AWS image is not recommended for use in production. We suggest using Konvoy Image Builder to create an AWS Air-gapped AMI to take advantage of enhanced cluster operations. Explore the KIB with AWS topics for more options.
Using KIB, you can build an AMI without requiring access to the internet by providing an additional
Assuming you have downloaded
dkp-air-gapped-bundle_v2.5.2_linux_amd64.tar.gz, extract the tarball to a local directory:CODE
tar -xzvf dkp-air-gapped-bundle_v2.5.2_linux_amd64.tar.gz && cd dkp-v2.5.2/kib
Follow the instructions below to build an AMI.
Depending on which version of DKP you are running, steps and flags will be different. To deploy in a region where CAPI images are not provided, you need to use KIB to create your own image for the region. For a list of supported AWS regions, refer to the Published AMI information from AWS.
Execute the following to begin image creation:
konvoy-image command to build and validate the image.
konvoy-image build aws images/ami/centos-79.yaml --overrides overrides/offline.yaml
By default it builds in the
us-west-2 region. to specify another region set the
konvoy-image build aws --region us-east-1 images/ami/centos-79.yaml --overrides overrides/offline.yaml
When the command is complete the
ami id is printed and written to