Check out what's in the latest release of Kabanero Learn More

Installing Kabanero Foundation

Kabanero version 0.7 has been tested on OpenShift Container Platform (OCP) 4.3. There is intent to expand testing to additional distributions, including upstream Kubernetes, in the future.

The Kabanero Open Project intends to build on open source distributions of Kubernetes; however, the current distribution of The Origin Community Distribution of Kubernetes (OKD) is lagging the commercial distributions. Due to a focus on building leading-edge capabilities and leveraging new features across the integrated open frameworks, the Kabanero Open Project is temporarily building on version 4 capabilities of the commercial distributions. When there is a comparable release of OKD, the Kabanero Open Project will return to it.

As a result of this temporary change in focus, there is no upgrade process from an installation built on OKD version 3.11 to an installation built on OCP 4.3.

Prerequisites

Installation

Kabanero uses Operator Lifecycle Manager (OLM) to manage its prerequisites. Several operators must be installed before Kabanero can be used. You can choose to perform a scripted installation or a manual installation. In the scripted installation, the provided installation script subscribes to and configures the prerequisite operators. If you prefer, the installation can be performed manually.

Scripted installation

  1. Obtain the installation script for the release of Kabanero that you wish to install.

  2. Review the install.sh script for any optional components that can be enabled by setting the required environment variable, or by editing the value in the script directly. Optional components are listed at the top of the script, below the section titled Optional components.

  3. As a cluster-admin, run the script:

    1. Ensure you are logged into your cluster with the oc login command

    2. If installing the optional kAppNav component, specify yes on the ENABLE_KAPPNAV environment variable. If not, specify no.

    3. ENABLE_KAPPNAV=yes|no ./install.sh

  4. As a cluster-admin, or as a user with create and update authority to the kabaneros.kabanero.io kind, create a custom resource (CR) instance. A sample oc apply command which applies the default instance for this release of Kabanero, including the default application stacks, is shown when the install.sh script finishes running. You can modify the CR instance to include the URL of an application stack and the GitHub information necessary to administer that application stack. For more information on customizing the CR instance, see the CR configuration reference.

Manual installation

  1. Install and configure the OpenShift Serverless Operator.

  2. Install the pipelines operator using the instructions to add an operator to your cluster. On the Create Operator Subscription page, select the dev-preview channel.

  3. Install the microservice deployment operator using the instructions to add an operator to your cluster. On the Create Operator Subscription page, select the default 'All namespaces on the cluster' and beta channel.

  4. Install the OLM CatalogSource containing the product operator. The following YAML can be used, after substituting the required version (the example uses version 0.7.0):

    apiVersion: operators.coreos.com/v1alpha1
    kind: CatalogSource
    metadata:
      name: kabanero-catalog
      namespace: openshift-marketplace
    spec:
      sourceType: grpc
      image: kabanero/kabanero-operator-registry:0.7.0
  5. Create the kabanero namespace using oc new-project kabanero

  6. Install the Che operator using the instructions to add an operator to your cluster. On the Create Operator Subscription page, select the kabanero namespace and stable channel.

  7. Install the product operator using the instructions to add an operator to your cluster. On the Create Operator Subscription page, select the kabanero namespace and release-0.4 channel.

  8. As a cluster-admin, or as a user with create and update authority to the kabaneros.kabanero.io kind, create a custom resource (CR) instance. A sample oc apply command which applies the default instance for this release of Kabanero, including the default application stacks, is shown when the install.sh script finishes running. You can modify the CR instance to include the URL of an application stack and the GitHub information necessary to administer that application stack. For more information on customizing the CR instance, see the CR configuration reference.

After installation

Important: Due to the addition of Triggers in Kabanero version 0.5, and an update to Triggers in Kabanero version 0.6, if you are upgrading to Kabanero version 0.5 or later from any previous version, you must delete any existing webhooks and create them again. See Connecting Kabanero to GitHub with Webhooks for instructions on deleting and creating webhooks.

The Kabanero Console is installed as part of the install process and is a good next step to go explore information about your Kabanero instance.

View the Console’s landing page

There are two ways to get the console’s URL
Using the oc CLI
  1. Open a terminal and run: oc get routes -n kabanero

  2. Find the result with the name kabanero-landing. The URL is displayed under HOST/PORT for that row.

Using the OpenShift Console
  1. Switch the project to kabanero

  2. Under Applications click Routes

  3. The landing page name is kabanero-landing, which should be in the list of routes; click the URL under Hostname to open the landing application

If the landing page is not responding

It might take some time for the landing page and other pods to be created and started. You can check the status of the product pods with oc get pods -n kabanero. Wait until they all have a status of Running.

NAME                                  READY     STATUS    RESTARTS   AGE
...
kabanero-landing-6dc5c798d4-ncg52     1/1       Running   0          11m

Configure OAuth for the Kabanero Console

You can add optional features to help you manage your application stacks, but it requires you setup OAuth for the console. To setup OAuth follow the instructions for Configuring OAuth for the product console.

View the Kabanero Guides

The quickest way to get started using Kabanero is by viewing our guides. Learn how to build and deploy applications, set up logging and monitoring, and more!

(Optional sample) Application deployment project with manual pipeline run

You can build and deploy a simple java-microprofile application using the default java-microprofile pipelines by following these steps:

  1. Retrieve the installation scripts from the kabanero-foundation repository

  2. Navigate to the scripts directory: cd kabanero-foundation/scripts

  3. Ensure that you are logged in to your cluster with the oc login command

  4. Create a persistent volume (PV) for the pipeline to use; a sample pv.yaml is provided. Update the IP address in the file to point to node that’s running your NFS server. This is typically the address of your infrastructure node. If you don’t have a NFS server setup on your cluster, setup an alternate persistent volume.

    • oc apply -f pv.yaml

  5. Create the pipeline and execute the example manual pipeline run

    • APP_REPO=https://github.com/kabanero-io/sample-java-microprofile ./example-tekton-pipeline-run.sh

  6. Access the application at http://sample-java-microprofile.kabanero.<MY_OPENSHIFT_MASTER_DEFAULT_SUBDOMAIN>;

    • By default, the application container image is built and pushed to the Internal Registry, and then deployed to the cluster.

  7. (Optional) Access the pipeline logs

    • oc logs $(oc get pods -l tekton.dev/pipelineRun=java-microprofile-manual-pipeline-run -n kabanero --output="jsonpath={.items[0].metadata.name}") -n kabanero --all-containers

  8. (Optional) Access the tekton dashboard to review more details of your pipelinerun.

Edit This Page