VynOps — AI-Powered Kubernetes Operations Platform
Real-time visibility, intelligent incident management, and autonomous remediation — in a single open-source platform your team owns.
Built on Next.js 15 · Groq Llama-4 · Prometheus · Loki · Jaeger · Alertmanager
Features
Everything, documented
Real-Time Cluster Visibility
Live pod, node, and namespace monitoring across every connected cluster. Drill from cluster health score down to individual container metrics in two clicks. Supports multi-cluster views with per-cluster and aggregate dashboards.
- Health scoring (0–100) based on pod restarts, resource pressure, and alert severity
- Real-time pod status: Running, Pending, CrashLoopBackOff, OOMKilled, Evicted
- Node resource utilisation: CPU, memory, storage per node
- Namespace-level breakdown: workload counts, resource quotas, cost estimates
- Live kubectl exec and log streaming via WebSocket
AI Copilot & Root Cause Analysis
Groq Llama-4-Scout-17b is the default for fastest available inference — OpenAI, Anthropic, Gemini, Azure OpenAI, Ollama and any OpenAI-compatible endpoint are also supported. The AI Copilot correlates Prometheus metrics, Loki logs, Kubernetes events, and alert history to surface the most likely root cause. Bring your own API key.
- Natural language queries: "What's broken in production right now?"
- Automatic event correlation across metrics, logs, and alerts
- Blast radius estimation before any remediation is applied
- Confidence scoring on all AI suggestions (0–100%)
- Persistent incident memory — learns from past incidents over time
- Sub-second inference via Groq ultra-fast LLM runtime (meta-llama/llama-4-scout-17b-16e-instruct)
Intelligent Alert Management
Ingests alerts from Prometheus Alertmanager via webhook. Automatically deduplicates, groups, and suppresses noise. Shows you the 3 alerts that actually need attention, not the 300 that are firing.
- Alertmanager webhook receiver — no agent installation needed
- Automatic deduplication and grouping by namespace, severity, and workload
- Suppression rules: silence by label, time window, or alert name
- Alert history and firing frequency analytics
- Escalation to email, Slack, Microsoft Teams or a custom webhook with configurable routing rules
Autonomous Remediation
The AI generates step-by-step remediation plans with kubectl and Helm commands. Each plan includes a dry-run preview, blast radius estimate, and risk rating. Nothing runs without explicit confirmation.
- Full kubectl command generation: patch, scale, delete, rollout restart
- Helm chart upgrade suggestions with diff preview
- Risk rating per remediation step: LOW / MEDIUM / HIGH
- Dry-run mode: see what will change before applying
- Full audit trail: who approved what, when, and what the outcome was
- Rollback instructions included in every remediation plan
SLA & On-Call Management
Built-in SLA tracking with configurable thresholds and automatic escalation policies. Manage on-call rotations, schedule overrides, and escalation tiers directly in VynOps.
- SLA definition by severity: Critical (<30 min), High (<2h), Medium (<8h), Low (<48h)
- Automatic escalation when SLA breach is imminent
- On-call schedule editor with rotation and override support
- Slack integration: alert notifications, @-mentions, and escalation messages
- SLA compliance reporting: breach rate, MTTR, MTTA by team and service
Cloud & Cost Analytics
Unified cost and infrastructure visibility across Kubernetes clusters and cloud nodes. Track compute spend, storage costs, and efficiency scores at namespace and workload level — with AI-generated optimisation recommendations.
- Node inventory: CPU cores, memory, pod count, uptime, instance type, OS, and arch
- Custom cost rate editor: USD/vCPU/hour, USD/GiB-hour, USD/GiB-month
- Namespace and workload cost breakdown with efficiency scores
- Over-provisioning detection: CPU/memory requests vs actual usage delta
- PVC storage inventory: capacity, usage %, storage class, and per-PVC cost
- Optimisation recommendations with kubectl right-size commands
- Monthly cost projection and wasted spend identification
Automation Runbooks
A library of pre-built runbooks for common Kubernetes operations. Each runbook is a step-by-step automated workflow — run from the UI with a single click, with full output visibility and run history.
- Diagnose CrashLoopBackOff: scan events, pull previous container logs, restart analysis
- OOMKilled patch: detect OOM pods, bump memory limit +256Mi, trigger rollout restart
- Rollback failed deployment: view revision history, execute rollback, post-health check
- Force delete stuck Terminating pods with gracePeriodSeconds=0
- Scale deployment replicas up or down with rollout watch
- Cleanup evicted/failed pods to free namespace quota
- Cordon & drain node: cordon, list evictable pods, generate drain command
- Audit TLS certificates: decode secrets, report expiry, renewal recommendations
- Debug ImagePullBackOff: surface pull errors, output fix commands
- Full run history with per-step output, duration, and pass/fail status
Installation
Quick Start
From zero to running cluster in under 10 minutes.
Clone the repository
Configure your environment
Install & run
Connect your first cluster
Requirements
Environment Variables
Full reference for .env.local. Copy from .env.local.example to start.
AUTH_SECRETRandom 32-byte secret for NextAuth session signingrequiredNEXTAUTH_URLFull URL of your VynOps deployment (incl. port)requiredGROQ_API_KEYGroq API key — free tier at console.groq.comrequiredK8S_API_URLKubernetes API server URL for default clusterrequiredK8S_TIMEOUT_MSRequest timeout for k8s API calls (default: 10000)optionalPROMETHEUS_URLPrometheus server URL for metrics queriesoptionalALERTMANAGER_URLAlertmanager URL for alert webhook receiveroptionalLOKI_URLLoki URL for log queries (enhances AI analysis)optionalJAEGER_QUERY_URLJaeger Query URL for distributed tracingoptionalGRAFANA_URLGrafana URL for dashboard deep-link integrationoptionalSLACK_WEBHOOK_URLSlack incoming webhook for alert notificationsoptionalALLOWED_DEV_ORIGINSComma-separated IPs for remote dev accessoptionalPORTHTTP port for the server.mjs process (default: 3030)optionalArchitecture
- Next.js 15 App Router
- React Server Components
- Zustand + React Query
- Framer Motion UI
- Next.js API Routes
- NextAuth v5 session
- Per-cluster header routing
- Node.js WebSocket server
- Kubernetes API server
- Prometheus HTTP API
- Loki query API
- Groq LLM inference
Each API call from the frontend passes X-Cluster-ID and X-Cluster-URL headers. The API layer uses these to route requests to the correct Kubernetes API server. No session-level cluster affinity — fully stateless.
Real-time pod log streaming and kubectl exec run through a custom Node.js server (server.mjs) that proxies WebSocket connections to the Kubernetes API. Must run via node server.mjs or PM2 — not npm start.
Tech Stack
Frontend
- Next.js 15App Router + RSC
- TypeScript 5.5Strict mode
- Tailwind CSSDark-first
- Framer MotionAnimations
- Zustand 5State management
- React QueryServer state
Auth & API
- NextAuth v5AUTH_SECRET
- Node.js server.mjsWebSocket host
- PM2Process manager
AI & Inference
- Groq AILLM inference
- Llama-4-Scout-17bModel
Observability
- PrometheusMetrics
- LokiLogs
- JaegerTraces
- GrafanaDashboards
- AlertmanagerAlert routing
Troubleshooting
Production Deployment
Deploy in 10 minutes
No account. No cloud signup. Clone, configure, connect your cluster, and go.