diff --git a/docs/deployment/kubernetes/installation.mdx b/docs/deployment/kubernetes/installation.mdx index 9680df532..594df7c3b 100644 --- a/docs/deployment/kubernetes/installation.mdx +++ b/docs/deployment/kubernetes/installation.mdx @@ -8,23 +8,28 @@ The recommended way to install Keep on Kubernetes is via Helm Chart.

Follow these steps to set it up. -## Prerequisites +# Prerequisites -### Helm CLI +## Helm CLI See the [Helm documentation](https://helm.sh/docs/intro/install/) for instructions about installing helm. -### Ingress Controller (Optional) +## Ingress Controller (Optional) You can skip this step if: 1. You already have **ingress-nginx** installed. 2. You don't need to expose Keep to the internet/network. -#### Overview +### Overview An ingress controller is essential for managing external access to services in your Kubernetes cluster. It acts as a smart router and load balancer, allowing you to expose multiple services through a single entry point while handling SSL termination and routing rules. -**Keep works the best with** [ingress-nginx](https://github.com/kubernetes/ingress-nginx) **but you can customize the helm chart for other ingress controllers too.** + +**Keep works best with both** [ingress-nginx](https://github.com/kubernetes/ingress-nginx) **and** [HAProxy Ingress](https://haproxy-ingress.github.io/) **controllers, but you can customize the helm chart for other ingress controllers too.** + + +### Nginx Ingress Controller + #### Check ingress-nginx Installed You check if you already have ingress-nginx installed: ```bash @@ -67,6 +72,34 @@ kubectl get configmap -n ingress-nginx ingress-nginx-controller -o yaml | grep a allow-snippet-annotations: "true" ``` +### HAProxy Ingress Controller + +#### Install ingress-haproxy + +To read about more installation options, see [haproxy-ingress installation docs](https://haproxy-ingress.github.io/docs/getting-started/). + + +```bash +# simplest way to install +helm upgrade --install haproxy-ingress haproxy-ingress \ + --repo https://haproxy-ingress.github.io/charts \ + --namespace ingress-haproxy --create-namespace +``` + +Verify installation: +```bash +kubectl get ingressclass +NAME CONTROLLER PARAMETERS AGE +haproxy haproxy-ingress.github.io/controller 4h19m +``` + +Verify if controller is running: +```bash +kubectl get pods -n ingress-haproxy -l app.kubernetes.io/instance=haproxy-ingress +NAME READY STATUS RESTARTS AGE +haproxy-ingress-controller-x4n2z 1/1 Running 0 4h19m +``` + ## Installation ### With Ingress-NGINX (Recommended) @@ -79,7 +112,17 @@ helm repo add keephq https://keephq.github.io/helm-charts helm install keep keephq/keep -n keep --create-namespace ``` -### Without Ingress-NGINX (Not Recommended) +### With Ingress-HAProxy (Recommended) + +```bash +# Add the Helm repository +helm repo add keephq https://keephq.github.io/helm-charts + +# Install Keep with ingress enabled +helm install keep keephq/keep -n keep --create-namespace --set global.ingress.className=haproxy +``` + +### Without Ingress (Not Recommended) ```bash # Add the Helm repository diff --git a/pyproject.toml b/pyproject.toml index 79267d83d..6ed27766c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "keep" -version = "0.28.10" +version = "0.29.0" description = "Alerting. for developers, by developers." authors = ["Keep Alerting LTD"] readme = "README.md"