# castai/helm-charts architecture

> Architecture diagram of the GitHub repository castai/helm-charts, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-27). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/castai/helm-charts
- Repository: https://github.com/castai/helm-charts

## Overview

This repository is a catalog of CAST AI Helm charts for deploying Kubernetes agents, controllers, optimization features, and supporting services. The principal workflow is an operator using Helm to install a chart (or the umbrella chart), which renders Kubernetes resources into a cluster. Chart names and directories indicate the available domains; source excerpts were unavailable, so the graph does not assert internal runtime calls or unsampled chart wiring.

Main entry points: [`charts/castai-umbrella`](https://github.com/castai/helm-charts/tree/main/charts/castai-umbrella) (CAST AI umbrella), [`charts/castai-kentroller`](https://github.com/castai/helm-charts/tree/main/charts/castai-kentroller) (Kentroller), [`charts/castai-evictor`](https://github.com/castai/helm-charts/tree/main/charts/castai-evictor) (Evictor), [`charts/castai-workload-autoscaler`](https://github.com/castai/helm-charts/tree/main/charts/castai-workload-autoscaler) (Workload autoscaler)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_core["Cluster optimization"]
  node_umbrella["CAST AI umbrella"]
  node_kentroller["Kentroller"]
  node_evictor["Evictor"]
end

subgraph group_workload["Workload features"]
  node_workloadautoscaler["Workload autoscaler"]
  node_workloadexporter["Autoscaler exporter"]
  node_lifecycle["Pod lifecycle"]
  node_scheduling["Scheduling policies"]
  node_hibernate["Cluster hibernation"]
  node_hostedmodel["Hosted models"]
end

subgraph group_database["Database services"]
  node_dboptimizer["DB optimizer"]
  node_dbproxy["DB proxy"]
  node_dbagent["DB agent"]
end

subgraph group_support["Platform support"]
  node_auditlogs["Audit log receiver"]
  node_cloudproxy["Cloud proxy"]
  node_egress["Egress collector"]
  node_gpumetrics["GPU metrics"]
  node_chartupgrader["Chart upgrader"]
  node_temporal["Temporal services"]
end

node_operator(("Cluster operator"))
node_helm["Helm"]
node_cluster["Kubernetes cluster"]

node_operator -->|"runs"| node_helm
node_helm -->|"installs"| node_umbrella
node_helm -->|"installs"| node_kentroller
node_helm -->|"installs"| node_evictor
node_helm -->|"installs"| node_workloadautoscaler
node_helm -->|"installs"| node_workloadexporter
node_helm -->|"installs"| node_lifecycle
node_helm -->|"installs"| node_scheduling
node_helm -->|"installs"| node_hibernate
node_helm -->|"installs"| node_hostedmodel
node_helm -->|"installs"| node_dboptimizer
node_helm -->|"installs"| node_dbproxy
node_helm -->|"installs"| node_dbagent
node_helm -->|"installs"| node_auditlogs
node_helm -->|"installs"| node_cloudproxy
node_helm -->|"installs"| node_egress
node_helm -->|"installs"| node_gpumetrics
node_helm -->|"installs"| node_chartupgrader
node_helm -->|"installs"| node_temporal
node_umbrella -->|"renders resources"| node_cluster
node_kentroller -->|"renders resources"| node_cluster
node_evictor -->|"renders resources"| node_cluster
node_workloadautoscaler -->|"renders resources"| node_cluster
node_workloadexporter -->|"renders resources"| node_cluster
node_lifecycle -->|"renders resources"| node_cluster
node_scheduling -->|"renders resources"| node_cluster
node_hibernate -->|"renders resources"| node_cluster
node_hostedmodel -->|"renders resources"| node_cluster
node_dboptimizer -->|"renders resources"| node_cluster
node_dbproxy -->|"renders resources"| node_cluster
node_dbagent -->|"renders resources"| node_cluster
node_auditlogs -->|"renders resources"| node_cluster
node_cloudproxy -->|"renders resources"| node_cluster
node_egress -->|"renders resources"| node_cluster
node_gpumetrics -->|"renders resources"| node_cluster
node_chartupgrader -->|"renders resources"| node_cluster
node_temporal -->|"renders resources"| node_cluster

click node_umbrella "https://github.com/castai/helm-charts/tree/main/charts/castai-umbrella"
click node_kentroller "https://github.com/castai/helm-charts/tree/main/charts/castai-kentroller"
click node_evictor "https://github.com/castai/helm-charts/tree/main/charts/castai-evictor"
click node_workloadautoscaler "https://github.com/castai/helm-charts/tree/main/charts/castai-workload-autoscaler"
click node_workloadexporter "https://github.com/castai/helm-charts/tree/main/charts/castai-workload-autoscaler-exporter"
click node_lifecycle "https://github.com/castai/helm-charts/tree/main/charts/castai-pod-node-lifecycle"
click node_scheduling "https://github.com/castai/helm-charts/tree/main/charts/castai-scheduling-policies-controller"
click node_hibernate "https://github.com/castai/helm-charts/tree/main/charts/castai-hibernate"
click node_hostedmodel "https://github.com/castai/helm-charts/tree/main/charts/castai-hosted-model"
click node_dboptimizer "https://github.com/castai/helm-charts/tree/main/charts/castai-db-optimizer"
click node_dbproxy "https://github.com/castai/helm-charts/tree/main/charts/castai-db-proxy"
click node_dbagent "https://github.com/castai/helm-charts/tree/main/charts/castai-db-agent"
click node_auditlogs "https://github.com/castai/helm-charts/tree/main/charts/castai-audit-logs-receiver"
click node_cloudproxy "https://github.com/castai/helm-charts/tree/main/charts/castai-cloud-proxy"
click node_egress "https://github.com/castai/helm-charts/tree/main/charts/egressd"
click node_gpumetrics "https://github.com/castai/helm-charts/tree/main/charts/gpu-metrics-exporter"
click node_chartupgrader "https://github.com/castai/helm-charts/tree/main/charts/castai-chart-upgrader"
click node_temporal "https://github.com/castai/helm-charts/tree/main/charts/temporal"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_umbrella,node_kentroller,node_evictor toneBlue
class node_workloadautoscaler,node_workloadexporter,node_lifecycle,node_scheduling,node_hibernate,node_hostedmodel toneAmber
class node_dboptimizer,node_dbproxy,node_dbagent toneMint
class node_auditlogs,node_cloudproxy,node_egress,node_gpumetrics,node_chartupgrader,node_temporal toneRose
class node_operator,node_helm,node_cluster toneIndigo
```

## Components

### Cluster optimization

- [CAST AI umbrella](https://github.com/castai/helm-charts/tree/main/charts/castai-umbrella): `charts/castai-umbrella`
- [Kentroller](https://github.com/castai/helm-charts/tree/main/charts/castai-kentroller): `charts/castai-kentroller`
- [Evictor](https://github.com/castai/helm-charts/tree/main/charts/castai-evictor): `charts/castai-evictor`

### Workload features

- [Workload autoscaler](https://github.com/castai/helm-charts/tree/main/charts/castai-workload-autoscaler): `charts/castai-workload-autoscaler`
- [Autoscaler exporter](https://github.com/castai/helm-charts/tree/main/charts/castai-workload-autoscaler-exporter): `charts/castai-workload-autoscaler-exporter`
- [Pod lifecycle](https://github.com/castai/helm-charts/tree/main/charts/castai-pod-node-lifecycle): `charts/castai-pod-node-lifecycle`
- [Scheduling policies](https://github.com/castai/helm-charts/tree/main/charts/castai-scheduling-policies-controller): `charts/castai-scheduling-policies-controller`
- [Cluster hibernation](https://github.com/castai/helm-charts/tree/main/charts/castai-hibernate): `charts/castai-hibernate`
- [Hosted models](https://github.com/castai/helm-charts/tree/main/charts/castai-hosted-model): `charts/castai-hosted-model`

### Database services

- [DB optimizer](https://github.com/castai/helm-charts/tree/main/charts/castai-db-optimizer): `charts/castai-db-optimizer`
- [DB proxy](https://github.com/castai/helm-charts/tree/main/charts/castai-db-proxy): `charts/castai-db-proxy`
- [DB agent](https://github.com/castai/helm-charts/tree/main/charts/castai-db-agent): `charts/castai-db-agent`

### Platform support

- [Audit log receiver](https://github.com/castai/helm-charts/tree/main/charts/castai-audit-logs-receiver): `charts/castai-audit-logs-receiver`
- [Cloud proxy](https://github.com/castai/helm-charts/tree/main/charts/castai-cloud-proxy): `charts/castai-cloud-proxy`
- [Egress collector](https://github.com/castai/helm-charts/tree/main/charts/egressd): `charts/egressd`
- [GPU metrics](https://github.com/castai/helm-charts/tree/main/charts/gpu-metrics-exporter): `charts/gpu-metrics-exporter`
- [Chart upgrader](https://github.com/castai/helm-charts/tree/main/charts/castai-chart-upgrader): `charts/castai-chart-upgrader`
- [Temporal services](https://github.com/castai/helm-charts/tree/main/charts/temporal): `charts/temporal`

### Other components

- **Cluster operator**
- **Helm**
- **Kubernetes cluster**

## Connections

- Cluster operator → Helm: runs
- Helm → CAST AI umbrella: installs
- Helm → Kentroller: installs
- Helm → Evictor: installs
- Helm → Workload autoscaler: installs
- Helm → Autoscaler exporter: installs
- Helm → Pod lifecycle: installs
- Helm → Scheduling policies: installs
- Helm → Cluster hibernation: installs
- Helm → Hosted models: installs
- Helm → DB optimizer: installs
- Helm → DB proxy: installs
- Helm → DB agent: installs
- Helm → Audit log receiver: installs
- Helm → Cloud proxy: installs
- Helm → Egress collector: installs
- Helm → GPU metrics: installs
- Helm → Chart upgrader: installs
- Helm → Temporal services: installs
- CAST AI umbrella → Kubernetes cluster: renders resources
- Kentroller → Kubernetes cluster: renders resources
- Evictor → Kubernetes cluster: renders resources
- Workload autoscaler → Kubernetes cluster: renders resources
- Autoscaler exporter → Kubernetes cluster: renders resources
- Pod lifecycle → Kubernetes cluster: renders resources
- Scheduling policies → Kubernetes cluster: renders resources
- Cluster hibernation → Kubernetes cluster: renders resources
- Hosted models → Kubernetes cluster: renders resources
- DB optimizer → Kubernetes cluster: renders resources
- DB proxy → Kubernetes cluster: renders resources
- DB agent → Kubernetes cluster: renders resources
- Audit log receiver → Kubernetes cluster: renders resources
- Cloud proxy → Kubernetes cluster: renders resources
- Egress collector → Kubernetes cluster: renders resources
- GPU metrics → Kubernetes cluster: renders resources
- Chart upgrader → Kubernetes cluster: renders resources
- Temporal services → Kubernetes cluster: renders resources
