diff --git a/doc/install/install-kubernetes.md b/doc/install/install-kubernetes.md new file mode 100644 index 000000000..22a6568fc --- /dev/null +++ b/doc/install/install-kubernetes.md @@ -0,0 +1,118 @@ +# Install Kuadrant on a Kubernetes cluster + +> [!NOTE] +> You must perform these steps on each Kubernetes cluster where you want to use Kuadrant. + + +## Prerequisites + +- Access to a Kubernetes cluster, with `kubeadmin` or an account with similar permissions + +## Procedure + +If you are installing locally, consider running the kind & Kubernetes [quickstart script](https://docs.kuadrant.io/0.7.0/getting-started-single-cluster/). + +### Install Gateway API + +```bash +kubectl apply -f https://github.com/kubernetes-sigs/gateway-api/releases/download/v1.1.0/standard-install.yaml +``` + +### Install [OLM](https://olm.operatorframework.io/) + +```bash +curl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/v0.23.1/install.sh | bash -s v0.23.1 +``` + +### Install Istio as a Gateway API provider + +> [!NOTE] +> There are several ways to install Istio (via `istioctl`, Helm chart or Operator) - this is just an example for starting from a bare Kubernetes cluster. + + +```bash +curl -sSL https://istio.io/downloadIstio | ISTIO_VERSION=1.20.7 sh - +./istio-1.20.7/bin/istioctl install --set profile=minimal -y +./istio-1.20.7/bin/istioctl operator init +kubectl apply -f https://raw.githubusercontent.com/Kuadrant/kuadrant-operator/main/config/dependencies/istio/istio-operator.yaml +``` + +### Install Kuadrant + +```bash +kubectl create -f https://operatorhub.io/install/kuadrant-operator.yaml +``` + +### Request a Kuadrant instance + +```bash +kubectl create namespace kuadrant-system +kubectl -n kuadrant-system apply -f - <