github devops-ia/helm-cruise-control v2.0.0

latest releases: v2.3.0, v2.2.0, v2.1.2...
10 months ago

A Helm chart to deploy Cruise Control for Apache Kafka

BREAKING CHANGE

  • split server and ui with multiple clusters

What's Changed

Major changes:

  • Introduced clustersDefaults and clusters configuration structure for better multi-cluster management
  • Added support for multiple Kafka clusters with shared defaults and per-cluster overrides
  • Implemented UI deployment with nginx reverse proxy for multi-cluster access
  • Created comprehensive helper templates for configuration merging and inheritance

Configuration structure:

  • New clustersDefaults section for shared configuration across all clusters
  • Individual cluster definitions with inheritance and override capabilities
  • Support for JAAS, capacity, cluster config, log4j, and Cruise Control properties per cluster
  • Automatic ConfigMap generation per cluster with merged configurations

Helpers:

  • Added cruise-control.cluster.config helper for configuration merging
  • Added cruise-control.cluster.fullname for cluster-specific resource naming
  • Added cruise-control.cluster.labels for consistent cluster labeling
  • Enhanced configmap.yaml to support both legacy and multi-cluster configurations
  • Created ui/ templates for reverse proxy deployment (deployment, service, configmap, ingress)

Examples:

  • Completely updated all 9 existing examples to use new configuration structure
  • Created 10-multi-cluster-simple.yaml for simple multi-cluster setup example
  • Added comprehensive examples/README.md with documentation and patterns
  • Removed deprecated env variable usage in favor of structured configuration
  • Added clear section comments (METADATA CLIENT, LOAD MONITOR, ANALYZER, etc.)

Examples coverage:

  • 01-basic-configuration.yaml: standard single cluster setup
  • 02-high-availability.yaml: HA with anti-affinity and PDB
  • 03-secure-tls.yaml: TLS and security features with JAAS
  • 04-custom-advanced.yaml: advanced JBOD and self-healing
  • 05-development.yaml: dev environment with debug logging
  • 06-production.yaml: multi-environment (dev/staging/prod) setup
  • 07-multi-region.yaml: multi-region deployment (3 regions)
  • 08-performance-tuned.yaml: performance optimized configuration
  • 09-minimal.yaml: absolute minimum configuration
  • 10-multi-cluster-simple.yaml: simple 2-cluster management

Features:

  • Backward compatible with single cluster deployments
  • Configuration inheritance: clustersDefaults -> cluster-specific overrides
  • Automatic UI deployment for multi-cluster scenarios
  • Group classification for clusters (development, staging, production, etc.)
  • Per-cluster capacity configuration (capacity, capacityCores, capacityJBOD)
  • Per-cluster JAAS authentication settings
  • Per-cluster log4j configuration
  • Ingress routing by cluster name (/cluster-name/)

Documentation:

  • Added migration guide from old env-based configuration
  • Included configuration patterns and best practices
  • Provided testing commands for validation
  • Created comparison table for all examples

Full Changelog: v1.4.3...v2.0.0

Don't miss a new helm-cruise-control release

NewReleases is sending notifications on new releases.