Skip to content

A Kubernetes Prometheus exporter that discovers all container images in your cluster and fetches their vulnerability scan results from any external source system.

License

Notifications You must be signed in to change notification settings

jfeddern/VulnRelay

Repository files navigation

VulnRelay

A production-ready Prometheus exporter that retrieves and exposes vulnerability information for container images deployed in Kubernetes clusters. VulnRelay supports multiple cloud providers and vulnerability sources with extensible architecture.

📖 Documentation

Topic Description Quick Links
Getting Started Installation, configuration, and first steps Mock ModeLocal ModeKubernetes
Configuration Complete configuration reference Environment VariablesAWS AuthExamples
API Reference Endpoints, metrics, and API documentation Health CheckMetricsVulnerabilities
Deployment Kubernetes, Helm, and production deployment Helm ChartAWS IAMDocker Compose
Development Contributing, testing, and extending VulnRelay SetupTestingAdding Providers

✨ Key Features

  • Multi-Cloud Support: Amazon EKS (GKE/AKS planned)
  • Multi-Source: AWS ECR scanning (Trivy/Grype planned)
  • Prometheus Integration: Comprehensive metrics and alerts
  • Production Ready: Security hardened, health checks, caching
  • Mock Mode: Local testing without external dependencies
  • Extensible: Pluggable architecture for new providers

🏗️ Architecture

┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│   Kubernetes    │    │    VulnRelay     │    │ Vulnerability   │
│   Cluster(s)    │◄───┤                  ├───►│    Sources      │
│                 │    │  Cloud Providers │    │                 │
│ - EKS           │    │  Vuln Engine     │    │ - AWS ECR       │
│ - GKE (planned) │    │  HTTP Server     │    │ - Trivy (plan.) │
│ - AKS (planned) │    │  /metrics        │    │ - Grype (plan.) │
└─────────────────┘    │  /health         │    └─────────────────┘
                       └──────────────────┘

📊 Example Metrics

# Vulnerability counts by severity
ecr_image_vulnerability_count{severity="CRITICAL",image_uri="...",namespace="production"} 2

# Detailed CVE information  
ecr_vulnerability_info{cve_name="CVE-2024-12345",severity="CRITICAL"} 1

# Fix availability
ecr_vulnerability_fix_available{fix_status="YES"} 1

🔗 Links

  • Container Images: ghcr.io/jfeddern/vulnrelay:latest
  • Helm Charts: oci://ghcr.io/jfeddern/vulnrelay/charts/vulnrelay
  • Issues: GitHub Issues
  • Discussions: GitHub Discussions

📄 License

See the LICENSE file for details.

About

A Kubernetes Prometheus exporter that discovers all container images in your cluster and fetches their vulnerability scan results from any external source system.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •