Skip to content

llama-stack-k8s-operator: Dataflow

Controller Watches

Kubernetes resources this controller monitors for changes. Each watch triggers reconciliation when the watched resource is created, updated, or deleted.

Type GVK Source
For api/v1alpha1/LlamaStackDistribution controllers/llamastackdistribution_controller.go:590
Owns /v1/ConfigMap controllers/llamastackdistribution_controller.go:597
Owns /v1/PersistentVolumeClaim controllers/llamastackdistribution_controller.go:605
Owns /v1/Service controllers/llamastackdistribution_controller.go:596
Owns apps/v1/Deployment controllers/llamastackdistribution_controller.go:593
Owns autoscaling/v2/HorizontalPodAutoscaler controllers/llamastackdistribution_controller.go:595
Owns networking.k8s.io/v1/Ingress controllers/llamastackdistribution_controller.go:604
Owns networking.k8s.io/v1/NetworkPolicy controllers/llamastackdistribution_controller.go:603
Owns policy/v1/PodDisruptionBudget controllers/llamastackdistribution_controller.go:594

Reconciliation Flow

How the controller interacts with the Kubernetes API during reconciliation.

sequenceDiagram
    %% Static dataflow for llama-stack-k8s-operator

    participant KubernetesAPI as Kubernetes API
    participant controller_manager as controller-manager
    participant deployment as deployment

    KubernetesAPI->>+controller_manager: Watch LlamaStackDistribution (reconcile)
    controller_manager->>KubernetesAPI: Create/Update ConfigMap
    controller_manager->>KubernetesAPI: Create/Update PersistentVolumeClaim
    controller_manager->>KubernetesAPI: Create/Update Service
    controller_manager->>KubernetesAPI: Create/Update Deployment
    controller_manager->>KubernetesAPI: Create/Update HorizontalPodAutoscaler
    controller_manager->>KubernetesAPI: Create/Update Ingress
    controller_manager->>KubernetesAPI: Create/Update NetworkPolicy
    controller_manager->>KubernetesAPI: Create/Update PodDisruptionBudget

    Note over controller_manager: Exposed Services
    Note right of controller_manager: service:0/TCP [http]

    Note over KubernetesAPI: Defined CRDs
    Note right of KubernetesAPI: LlamaStackDistribution (llamastack.io/v1alpha1)

Configuration

ConfigMaps and Helm values that control this component's runtime behavior.

ConfigMaps

Name Data Keys Source
llama-stack-config config.yaml config/samples/example-with-configmap.yaml