|this part is evolving quickly during development of version 2 so it may be slightly inaccurate.|
To use Camel K operator with any architecture like
arm64 you must use Buildah as builder strategy.
Since version 2, Camel K is publishing an ARM64 architecture beside the default AMD64 architecture. You need to reference this as
apache/camel-k:<version>-arm64. You can build your particular architecture from source, following the guidelines in Local development.
Proceed with installation of kamel inside kubernetes cluster with the below command:
kamel install --operator-image=apache/camel-k:<version>-arm64 --build-publish-strategy Buildah --build-publish-strategy-option BuildahPlatform=linux/arm/v8 --registry ...
Build and run an integration
from('timer:tick?period=3000') .setBody().constant('Hello world from Camel K') .to('log:info')
Send the groovy file to kamel operator to build, publish and run it
kamel run hello.groovy
If you want change the default architecture of Buildah build strategy once this is installed, you must edit integration platform manually.
kubectl edit ip
This command will open the editor with the yaml of
IntegrationPlatform, to change the architecture you can fill inside
spec.pipeline.PublishStrategyOptions as below
spec: pipeline: PublishStrategyOptions: BuildahPlatform: linux/arm/v8
After few seconds the yaml will be updated and that field is imported inside status
status: pipeline: PublishStrategyOptions: BuildahPlatform: linux/arm/v8
|It’s important to know Buidah supports only amd64 and arm64|