Skip to content

Monitoring

Menatic AI provides built-in monitoring on the Dashboard and integrates with standard Kubernetes observability tools for production deployments.

Menatic AI provides built-in monitoring on the Dashboard:

  • Node metrics — real-time CPU and memory per node (requires metrics-server)
  • Workload metrics — per-notebook and per-MCP-server CPU and memory usage
  • Resource allocation — cluster-wide CPU, memory, and GPU allocation charts

The Kubernetes metrics-server aggregates resource usage from the kubelet on each node. It powers:

  • kubectl top nodes / kubectl top pods
  • Dashboard node monitoring
  • Workload usage columns
Terminal window
kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml

For k3d (disable TLS verification):

Terminal window
kubectl patch deployment metrics-server -n kube-system \
--type=json \
-p='[{"op":"add","path":"/spec/template/spec/containers/0/args/-","value":"--kubelet-insecure-tls"}]'
Terminal window
kubectl top nodes
kubectl top pods -n apps

For production deployments, integrate with Prometheus and Grafana for historical metrics, alerting, and dashboards.

Terminal window
# Install kube-prometheus-stack (includes Prometheus + Grafana + Alertmanager)
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install prometheus prometheus-community/kube-prometheus-stack \
--namespace monitoring --create-namespace
MetricDescription
container_cpu_usage_seconds_totalCPU usage per container
container_memory_working_set_bytesMemory usage per container
kube_deployment_status_replicas_readyReady replicas per deployment
kube_pod_status_phasePod phase (Running, Pending, etc.)

Collect logs from all platform components using a standard Kubernetes log stack:

Terminal window
# Install Loki + Grafana Agent
helm install loki grafana/loki-stack \
--namespace logging --create-namespace

Then query logs from the Grafana UI or with LogQL.

Configure alerts for:

  • Node CPU/memory above 80% for 5 minutes
  • Any notebook pod in CrashLoopBackOff
  • Database connection failures
  • Platform backend not responding