Air-gapped Installation for Addon
If your environments don't have network access to https://addons.kubevela.net
or https://github.com/kubevela/catalog
, this guide will demonstrate how to install in the air-gapped environment.
Generally, you should git clone the repo which contained the addon configuration, you can specify a local addon directory when enable an addon for installation. While you should make sure all container images or helm charts are replaced by your private registry.
You can follow these steps as an example.
- Git clone the catalog repo to download these addon files. You can find all community addons in subdirectory
./addons/
and experimental addons in subdirectory./experimental/addons
.
- Sync the dependency container images in the addon to your private image registry, the sync command can be as following:
- Parts of addons may rely on helm charts, e.g.
terraform addon
. You should sync these helm charts to your private chart registry.
You can read the helm official docs to learn more about how to build your own helm registry.
Modify the values of addon by referring to your own image/chart registry. You can find all images/charts dependency in the files of subdirectory
resources/
, just modify the configuration. For example, you can modify the fluxcd addon filesaddons/fluxcd/resources/deployment/helm-controller.yaml
the deployment object's fieldspec.sepc.containers[0].image
to your own image repo.Use
vela cli
to enable an addon with specify a local addon dir to install offline.
#
Images or helm charts need to syncHere's a list about images or helm charts of all community addons that should be synced for air-gapped installation.
#
1. FluxCDYou need sync these images to your own image registry, and modify the related addon files to reference you own registry.
Images | files |
---|---|
fluxcd/helm-controller:v0.11.1 | fluxcd/resources/deployment/helm-controller.yaml |
fluxcd/image-automation-controller:v0.14.0 | fluxcd/resources/deployment/image-automation-controller.yaml |
fluxcd/image-reflector-controller:v0.11.0 | fluxcd/resources/deployment/image-reflector-controller.yaml |
fluxcd/kustomize-controller:v0.13.1 | fluxcd/resources/deployment/kustomize-controller.yaml |
fluxcd/source-controller:v0.15.3 | fluxcd/resources/deployment/source-controller.yaml |
#
2. OCMImages | files |
---|---|
quay.io/open-cluster-management/registration-operator:latest | ocm-cluster-manager/resources/operator/operator.yaml |
#
3. VelaUXThere is no need to modify the addon files for enabling this addon, you only need to sync these images and enable this addon with repo args to reference your own registry.
Images |
---|
oamdev/vela-apiserver:v1.2.3 |
oamdev/oamdev/velaux::v1.2.3 |
eg:
#
4. Terraform- Sync the image
oamdev/terraform-controller:0.3.5
to your own images registry. - Dowload the terraform helm chart.
- Extract the chart and modify the
values.yaml
changeimage.repository
to your own image registry.Then push it to your helm chart museum. - Modify the addon file
terraform/resources/terraform-controller.cue
changeoutput.properties.url
to your chart museum's url.
Other community addons needn't sync any resources.