Chapter 7. Enabling Apache Camel K to speed up Fuse Online deployments on OCP

You can install Apache Camel K Technology Preview as an optional add-on to Fuse Online to speed up deployment of integrations on OCP.

Important

Camel K is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production.

These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process. For more information about the support scope of Red Hat Technology Preview features, see https://access.redhat.com/support/offerings/techpreview.

The following topics introduce Apache Camel K and explain how to install it with Fuse Online:

7.1. About Apache Camel K

Apache Camel K is a lightweight cloud integration platform based on the Apache Camel framework for Enterprise Integration Patterns. Camel K runs natively on Kubernetes, OpenShift, and Knative, and is specifically designed and optimized for serverless and microservice architectures.

Camel K provides automation and performance optimizations when running integrations in the cloud. It uses the Kubernetes Operator SDK to deploy integrations (for example, automatically creating services and routes on OCP).

Camel K is a subproject of the Apache Camel open source community. For more details, see https://github.com/apache/camel-k.

7.2. Installing Apache Camel K with Fuse Online on OCP

The Camel K operator is available in Fuse Online to speed up turnaround times when deploying and redeploying integrations on OCP (for example, from 1-2 minutes to a few seconds). This section explains how to install and configure Camel K with Fuse Online from the Syndesis open source project.

Important

The Camel K runtime in the Technology Preview does not support Fuse Online extensions.

Prerequisites

  • You must be connected to the OCP cluster in which you want to install Fuse Online, or to a local cluster created for development.
  • You must have cluster administration privileges.
  • You must have the Docker client installed and the Docker daemon running to extract the Camel K client.
  • You must authenticate in Docker using the following command:

    $ docker login registry.redhat.io

Procedure

  1. Download and unzip the latest Fuse Online 1.7.x release: https://github.com/syndesisio/fuse-online-install/releases/tag/1.7
  2. Set up Fuse Online to use Camel K:

    $ bash install_ocp.sh --setup --camel-k

    This installs the Fuse Online and Camel K operators in your cluster.

  3. Install Fuse Online and Camel K in your cluster:

    $ bash install_ocp.sh --camel-k

    By default, this installs Fuse Online and the Camel K runtime engine in the current OCP project, and the script calculates the route by which Fuse Online is accessed. Only Camel K is installed if Fuse Online is already installed. For more details, see https://github.com/syndesisio/fuse-online-install.

  4. Update the ConfigMap object for syndesis-server-config to enable Camel K:

    $ oc get configmap syndesis-server-config -o yaml | sed 's/controllers:/controllers:\n      integration: camel-k/' | oc apply -f -

    Alternatively, you can manually edit this ConfigMap and add the following setting in the embedded application.yml section:

    controllers:
      integration: camel-k
  5. Restart the syndesis-server:

    Tip

    If existing integrations are running, it is best to stop them all in Fuse Online before restarting the server.

    $ oc delete pod -l syndesis.io/component=syndesis-server
Note

When camel-k is configured as the runtime engine, this replaces the classic Camel integration runtime of spring-boot.

More information

For more details, see Chapter 1, Installation of Fuse Online on OCP.