ArchitectureKubernetes Controller

Kubernetes Controller

The Kubernetes Controller is a Go-based operator that manages Skyflo's deployment and lifecycle inside the cluster.

Custom Resource Definition

The SkyfloAI custom resource defines the desired state. You declare configuration in one place. The Controller reconciles the actual state to match.

Deployment Management

The Controller manages all Skyflo components through a single custom resource:

  • Engine (engine)
  • MCP Server (mcp)
  • Command Center (ui)
  • PostgreSQL (postgresql)
  • Redis (redis)

Deploy, scale, or update by editing the SkyfloAI CR. The Controller applies the changes.

Dynamic Configuration

Configuration updates propagate without manual restarts. The Controller watches the CR and updates deployments when values change.

RBAC

The Controller manages RBAC for cluster interactions. Service accounts and roles are created with the permissions Skyflo needs. Namespace isolation and fine-grained access control are configurable.

Health Monitoring

Status conditions on the SkyfloAI resource report health. The Controller monitors component readiness and surfaces issues in the resource status.