Platform Tools Guide
Overview
The platform comes with a variety of tools that can be managed and configured through our values files structure. These tools help in managing, monitoring, and operating your Kubernetes clusters.
Tools Configuration Structure
Main Configuration
- Tools are primarily defined in the
app-of-apps/values.yaml
file - Additional tools can be found in the
more-tools
folder
Platform-Specific Configuration
You can customize tools for specific platforms (like AKS, GKE, etc.) using platform-specific value files:
- Example:
values-aks.yaml
,values-gke.yaml
- These files allow you to:
- Enable or disable specific tools
- Override tool properties
- Configure platform-specific settings
Values Structure
The values for tools are organized in two main locations:
- Default Values (
values/defaults/
)- Contains base configuration values
- Applied across all platforms
- Serves as the foundation for tool configuration
- Platform-Specific Values (
values/platformName/
)- Override default values for specific platforms
- Example:
values/aks/
,values/dev/
- Takes precedence over default values
Tool Implementation
Most tools are implemented as dependency charts within the templates
folder. This approach:
- Ensures consistent deployment across platforms
- Makes maintenance and updates easier
- Allows for centralized configuration management
Example Configuration Flow
# app-of-apps/values.yaml
ArgocdApplications:
external-dns:
enabled: false
# Global tool configuration
# app-of-apps/values-aks.yaml
ArgocdApplications:
external-dns:
enabled: true # Enable for AKS
# values/defaults/platform/external-dns/values.yaml
# Default configuration for external-dns
# values/aks/platform/external-dns/values.yaml
# AKS-specific overrides for external-dns
Add new tool
How to add new tool to the platform
Nginx Ingress Controller
In the Kuberise project, the Nginx Ingress Controller is utilized to efficiently route traffic within the Kubernetes cluster and to external clients. Two instances of the ingress-nginx controller are deployed, one for internal traffic and another for external traffic.