Skip to content

Kubernetes Helm Chart to deploy a pre-configured monitoring stack which can be used to monitor Cognigy software applications.

License

Notifications You must be signed in to change notification settings

Cognigy/cognigy-monitoring-helm-chart

Repository files navigation

Cognigy.AI banner

Cognigy Monitoring Stack Helm Chart

This chart installs Cognigy Monitoring Stack which is based on kube-prometheus-stack

Prerequisites

  • Kubernetes cluster running one or more of Cognigy Products
  • kubectl utility connected to the kubernetes cluster
  • Helm v.3.10-v.3.12

Installation

  1. To deploy a Helm Release for Monitoring Stack you need to create a separate file with Helm release values. You can use values_prod.yaml as a baseline, we recommend to start with it. Make a copy of values_prod.yaml into a new file and name it accordingly, we refer to it as YOUR_VALUES_FILE.yaml later in this document.
  2. Set the essential parameters in YOUR_VALUES_FILE.yaml, see the comments inside the file.
  3. Install Monitoring Stack Helm Release:
  • Installing from Cognigy Container Registry (recommended), specify proper HELM_CHART_VERSION (check CHANGELOG for details) and YOUR_VALUES_FILE.yaml:
    • Login into Cognigy helm registry (provide your Cognigy Container Registry credentials):
    helm registry login cognigy.azurecr.io \
    --username <your-username> \
    --password <your-password>
    • Install Helm Chart into a separate monitoring namespace:
    helm upgrade --install --create-namespace -n monitoring monitoring-stack oci://cognigy.azurecr.io/helm/cognigy-monitoring --version HELM_CHART_VERSION --values YOUR_VALUES_FILE.yaml
  • Alternatively you can install it from the local chart (not recommended):
    helm upgrade --install --create-namespace -n monitoring monitoring-stack ./cognigy-monitoring --values YOUR_VALUES_FILE.yaml 
  1. If Grafana ingress is disabled you can access the grafana directly by using kubectl port-forwarding: kubectl port-forward svc/monitoring-stack-grafana 3000:80. Then access Grafana via http://localhost:3000. Use Grafana credentials you have set in YOUR_VALUES_FILE.yaml
  2. If Grafana ingress is enabled, add Grafana hostname to DNS and access Grafana via browser.
  3. Enable Prometheus Monitors for Cognigy products in respective Helm Charts:
    • For MongoDB Helm Chart set metrics.serviceMonitor.enabled: true in values.yaml of MongoDB Helm Release.
    • For Cognigy.AI Helm Chart set podMonitors.enabled: true and podMonitors.namespace: "monitoring" in values.yaml of Cognigy.AI Helm Release.
    • For Live Agent Helm Chart set monitoring.enabled: true in values.yaml of Cognigy LA Helm Release.
    • For Voice Gateway Helm Chart set podMonitors.enabled: true and podMonitors.namespace: "monitoring" in values.yaml of Cognigy VG Helm Release.
    • To enable additional ServiceMonitor for databases and backends included as dependencies in the Cognigy Helm Charts (AI, LA, VG) enable serviceMonitor according to the values.yaml of the respective Chart.

Upgrading Chart

helm upgrade -n monitoring monitoring-stack oci://cognigy.azurecr.io/helm/cognigy-monitoring --version HELM_CHART_VERSION --values YOUR_VALUES_FILE.yaml

From 1.22.x to 1.23.x

This update includes breaking changes. Check here for detail instruction.

Upgrading from legacy Monitoring Stack

To upgrade from our legacy Monitoring stack, check upgrade from legacy stack guide.

Uninstalling and Clean-up

To uninstall the monitoring stack execute following steps. IMPORTANT: all objects in monitoring namespace and Prometheus CRDs will be lost! If you have other objects in monitoring namespace created, make sure you have a corresponding backup!

  1. To remove the monitoring stack execute:
helm uninstall -n monitoring monitoring-stack
kubectl delete namespace monitoring
kubectl delete MutatingWebhookConfiguration monitoring-stack-kubeproms-admission
kubectl delete validatingwebhookconfigurations.admissionregistration.k8s.io monitoring-stack-kubeproms-admission
  1. (Optionally): For a complete clean-up, delete kube-prometheus-stack CRDs:
kubectl delete crd alertmanagerconfigs.monitoring.coreos.com
kubectl delete crd alertmanagers.monitoring.coreos.com
kubectl delete crd podmonitors.monitoring.coreos.com
kubectl delete crd probes.monitoring.coreos.com
kubectl delete crd prometheuses.monitoring.coreos.com
kubectl delete crd prometheusrules.monitoring.coreos.com
kubectl delete crd servicemonitors.monitoring.coreos.com
kubectl delete crd thanosrulers.monitoring.coreos.com

About

Kubernetes Helm Chart to deploy a pre-configured monitoring stack which can be used to monitor Cognigy software applications.

Resources

License

Stars

Watchers

Forks

Packages

No packages published