[[installation]]
= Installation

Camel K allows us to run integrations directly on a Kubernetes or OpenShift cluster.
To use it, you need to be connected to a cloud environment or to a local cluster created for development purposes.

[[requirements]]
== Requirements

Camel K installation is usually straightforward, but for certain cluster types you need to apply specific configuration settings
before installing it. Customized instructions are needed for the following cluster types:

- xref:installation/minikube.adoc[Minikube]
- xref:installation/minishift.adoc[Minishift]
- xref:installation/crc.adoc[Red Hat CodeReady Containers (CRC)]
- xref:installation/gke.adoc[Google Kubernetes Engine (GKE)]
- xref:installation/openshift.adoc[OpenShift]
- xref:installation/iks.adoc[IBM Kubernetes Services (IKS)]
- xref:installation/k3s.adoc[K3s]

Other cluster types (such as OpenShift clusters) should *not need* prior configuration.

[[procedure]]
== Procedure

To start using Camel K you need the **"kamel"** CLI tool, that can be used to both configure the cluster and run integrations.
Look into the https://github.com/apache/camel-k/releases[release page] for the latest version of the *camel-k-client* tool for your specific platform.

Download and uncompress the archive. It contains a small binary file named `kamel` that you should put into your system path.
For example, if you're using Linux, you can put `kamel` in `/usr/bin`.

Once you have put the "kamel" CLI in the path, log into your cluster using the standard "oc" (OpenShift) or "kubectl" (Kubernetes) client tool and execute the following command to install Camel K:

[source]
----
kamel install
----

This will configure the cluster with the Camel K custom resource definitions and install the operator on the current namespace.

IMPORTANT: Custom Resource Definitions (CRD) are cluster-wide objects and you need admin rights to install them. Fortunately, this
operation can be done *once per cluster*. So, if the `kamel install` operation fails, you'll be asked to repeat it when logged as admin.
For Minishift, this means executing `oc login -u system:admin` then `kamel install --cluster-setup` only for the first-time installation.

You're now ready to xref:running/running.adoc[run some integrations].

[[helm]]
== Installation via Helm

Camel K is also available in Helm Hub for installation.
Follow the instructions on the https://hub.helm.sh/charts/camel-k/camel-k[Camel K] page for more information.
