HAPTIC Helm Chart¶
Overview¶
This Helm chart deploys HAPTIC (HAProxy Template Ingress Controller), which manages HAProxy configurations dynamically based on Kubernetes resources.
HAPTIC:
- Watches Kubernetes Ingress and/or Gateway API resources
- Renders Scriggo templates to generate HAProxy configurations
- Deploys configurations to HAProxy pods via Dataplane API
- Supports cross-namespace HAProxy pod management
- Template library system for modular feature support
- Conditional resource watching based on enabled features
For controller architecture and behavior documentation, see the controller docs.
Prerequisites¶
- Kubernetes 1.19+
- Helm 3.0+
- HAProxy 3.0 or newer (the chart deploys HAProxy by default; template libraries require 3.0+ for SSL/TLS features)
Note
The haproxyVersion value controls both the controller image tag and the HAProxy image tag, ensuring version compatibility between the two. See the configuration reference for details.
Installation¶
helm install my-controller oci://registry.gitlab.com/haproxy-haptic/haptic/charts/haptic --version 0.1.0
With custom values:
helm install my-controller oci://registry.gitlab.com/haproxy-haptic/haptic/charts/haptic \
--version 0.1.0 \
-f my-values.yaml
What's in This Chart¶
The chart deploys:
- Controller Deployment -- the operator that watches resources and generates configurations
- HAProxy Deployment (optional) -- the load balancers that serve your traffic, with Dataplane API sidecars
- HAProxyTemplateConfig CRD -- merged template library configuration that drives config rendering
- IngressClass and GatewayClass -- routing API integration for Ingress and Gateway API resources
- RBAC, NetworkPolicy, and ServiceAccount -- permissions and network security
- Optional ServiceMonitor -- Prometheus integration for metrics scraping
- Optional admission webhook -- configuration validation before deployment
If you are new to HAPTIC, start with the Getting Started guide to deploy your first template-driven configuration, then come back here for chart-specific topics.
Documentation Sections¶
Use this chart to find what you need:
| I want to… | See |
|---|---|
| Configure ingress class or filter namespaces | Configuration |
| Set up TLS/HTTPS | SSL Certificates |
| Use Ingress annotations (auth, rate limiting, etc.) | Annotations |
| Tune HAProxy resource limits or service type | HAProxy Deployment |
| Enable or disable template libraries | Template Libraries |
| Run multiple controller replicas | High Availability |
| Set up Prometheus scraping | Monitoring |
| Restrict network access with NetworkPolicy | Networking |
| Diagnose problems | Troubleshooting |
Upgrading¶
helm upgrade my-controller oci://registry.gitlab.com/haproxy-haptic/haptic/charts/haptic \
--version 0.1.0
Uninstalling¶
This removes all resources created by the chart.