Skip to content

Zarf-Based Installation

See Overview.

In addition to the prerequisites discussed on that page, you will require Zarf to be available on an Internet-connected machine (to retrieve the Zarf package) and, separately, will also require Zarf to be available in your air-gapped environment.

The installation process comprises the following steps:

  1. Determine the QHx release version to install.

  2. Retrieve the Zarf package for the chosen QHx release version.

  3. Transport the Zarf package to the air-gapped environment.

  4. Install the Zarf package in the air-gapped environment.

Retrieving the QHx Zarf package
# Save Zarf package into 'out'.
networked$ docker login oci.messier42.com
networked$ zarf package pull \
"oci://oci.messier42.com/qhx/packages/qhx-core:${VERSION}" \
-o out

Transport the Zarf package to the air-gapped environment

Section titled “Transport the Zarf package to the air-gapped environment”

You must now transfer the Zarf package file (out/zarf-package-qhx-core-<ARCH>-<VERSION>.tar.zst) to your air-gapped environment.

Install the Zarf package in the air-gapped environment

Section titled “Install the Zarf package in the air-gapped environment”

You can now deploy QHx in the air-gapped environment using Zarf:

Deploying QHx using Zarf
airgapped$ zarf package deploy ./zarf-package-qhx-core-*.tar.zst \
--set kubernetesVariant=unknown

The kubernetesVariant setting below should be set to a supported value, such as eks, kind, microk8s, or unknown.

You can pass --set to the above command to override additional Helm values. For more information, see the Zarf documentation.

After installation, QHx system components are installed into the qhx-system Kubernetes namespace. You can verify this:

Confirming installation of QHx components
$ kubectl get pods -n qhx-system