Skip to content

Import and Upgrade Multi-Arch Helm Apps

In a multi-arch cluster, it is common to use Helm charts that support multiple architectures to address deployment issues caused by architectural differences. This guide will explain how to integrate single-arch Helm apps into multi-arch deployments and how to integrate multi-arch Helm apps.

Import

Import Single-arch

Prepare the offline package addon-offline-full-package-${version}-${arch}.tar.gz, which can be downloaded from the Download Center.

Specify the path in the clusterConfig.yml configuration file, for example:

addonPackage:
  path: "/home/addon-offline-full-package-v0.9.0-amd64.tar.gz"

Then run the import command:

~/dce5-installer cluster-create -c /home/dce5/sample/clusterConfig.yaml -m /home/dce5/sample/manifest.yaml -d -j13

Integrate Multi-arch

Prepare the offline package addon-offline-full-package-${version}-${arch}.tar.gz, which can be downloaded from the Download Center.

Take addon-offline-full-package-v0.9.0-arm64.tar.gz as an example and run the import command:

~/dce5-installer import-addon -c /home/dce5/sample/clusterConfig.yaml --addon-path=/home/addon-offline-full-package-v0.9.0-arm64.tar.gz

Upgrade

Upgrade Single-arch

Prepare the offline package addon-offline-full-package-${version}-${arch}.tar.gz, which can be downloaded from the Download Center.

Specify the path in the clusterConfig.yml configuration file, for example:

addonPackage:
  path: "/home/addon-offline-full-package-v0.11.0-amd64.tar.gz"

Then run the import command:

~/dce5-installer cluster-create -c /home/dce5/sample/clusterConfig.yaml -m /home/dce5/sample/manifest.yaml -d -j13

Multi-arch Integration

Prepare the offline package addon-offline-full-package-${version}-${arch}.tar.gz, which can be downloaded from the Download Center.

Take addon-offline-full-package-v0.11.0-arm64.tar.gz as an example and run the import command:

~/dce5-installer import-addon -c /home/dce5/sample/clusterConfig.yaml --addon-path=/home/addon-offline-full-package-v0.11.0-arm64.tar.gz

Notes

Disk Space

The offline package is quite large and requires sufficient space for decompression and loading of images. Otherwise, it may interrupt the process with a "no space left" error.

Retry after Failure

If the multi-arch fusion step fails, you need to clean up the residue before retrying:

rm -rf addon-offline-target-package

Registry Space

If the offline package for fusion contains registry spaces that are inconsistent with the imported offline package, an error may occur during the fusion process due to the non-existence of the registry spaces:

helm

Solution: Simply create the registry space before the fusion. For example, in the above error, creating the registry space "localhost" in advance can prevent the error.

Architecture Conflict

When upgrading to a version lower than 0.12.0 of the addon, the charts-syncer in the target offline package does not check the existence of the image before pushing, so it will recombine the multi-arch into a single architecture during the upgrade process. For example, if the addon is implemented as a multi-arch in v0.10, upgrading to v0.11 will overwrite the multi-arch addon with a single architecture. However, upgrading to v0.12.0 or above can still maintain the multi-arch.

Comments