Skip to content

Installation

This guide covers how to install Kure Monitor on your Kubernetes cluster. Kure ships as a Helm chart; raw k8s/ manifests are no longer maintained.

  • Kubernetes cluster (1.20+)
  • kubectl configured to access your cluster
  • Helm 3.x
  • Cluster admin permissions
Terminal window
helm repo add kure-monitor https://nan0c0de.github.io/kure-monitor/
helm repo update
Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)"
Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)" \
--set frontend.service.type=LoadBalancer
Terminal window
git clone https://github.com/Nan0C0de/kure-monitor.git
cd kure-monitor
helm install kure-monitor ./helm \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)"
Terminal window
kubectl get pods -n kure-system

Expected:

NAME READY STATUS RESTARTS AGE
kure-monitor-agent-xxxxx 1/1 Running 0 1m
kure-monitor-backend-xxxxx 1/1 Running 0 1m
kure-monitor-frontend-xxxxx 1/1 Running 0 1m
kure-monitor-security-scanner-xxxxx 1/1 Running 0 1m
postgresql-xxxxx 1/1 Running 0 1m

Port-forward (development):

Terminal window
kubectl port-forward svc/kure-monitor-frontend 8080:8080 -n kure-system
# http://localhost:8080

NodePort:

Terminal window
kubectl get svc kure-monitor-frontend -n kure-system
# http://<node-ip>:30080

LoadBalancer:

Terminal window
helm upgrade kure-monitor kure-monitor/kure \
--set frontend.service.type=LoadBalancer \
-n kure-system

Ingress:

Terminal window
helm upgrade kure-monitor kure-monitor/kure \
--set ingress.enabled=true \
--set ingress.hosts[0].host=kure.example.com \
-n kure-system

On first visit, the dashboard prompts you to create the initial admin account (username + password). After signing in, go to Admin → Users to invite further users with read, write, or admin roles.

Authentication is always on in 2.3+ and is wired up automatically by the Helm chart — there is nothing to configure at install time. The legacy auth.apiKey single-key model was removed in 2.3.0. See Authentication and the 2.2 → 2.3 migration guide for details.

  1. Open the dashboard
  2. Go to Admin Panel → AI Configuration
  3. Pick a provider (OpenAI, Anthropic, Groq, Gemini, GitHub Copilot, or Ollama)
  4. Enter your API key
  5. Pick a model
  6. Click Test Connection, then Save

See LLM Providers for the full list of supported models.

Terminal window
helm repo update
helm upgrade kure-monitor kure-monitor/kure -n kure-system
Terminal window
helm uninstall kure-monitor -n kure-system
kubectl delete namespace kure-system # removes all data
Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)" \
--set frontend.service.type=LoadBalancer \
--set frontend.service.annotations."service\.beta\.kubernetes\.io/aws-load-balancer-type"=nlb

Requires the AWS Load Balancer Controller for LoadBalancer services.

Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)" \
--set frontend.service.type=LoadBalancer
Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)" \
--set frontend.service.type=LoadBalancer
Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)"
minikube service kure-monitor-frontend -n kure-system
Terminal window
helm install kure-monitor kure-monitor/kure \
--namespace kure-system \
--create-namespace \
--set postgresql.password="$(openssl rand -hex 24)"
kubectl port-forward svc/kure-monitor-frontend 8080:8080 -n kure-system