Skip to main content
Version: Next 🚧

Krateo Core Provider

The Krateo Core Provider is the foundational component of Krateo Composable Operations (KCO), enabling the management of Helm charts as Kubernetes-native resources.

Key Features​

  • Dynamic CRD Generation: Automatically creates and manages versioned CRDs from a chart's values.schema.json.
  • Schema-Driven Validation: Leverages JSON Schema to enforce strict input validation at the API level.
  • Isolated RBAC Policies: Generates and manages fine-grained RBAC policies for each composition.
  • Multi-Version Chart Support: Supports three distinct upgrade patterns for controlled chart upgrades.

Requirements​

  • Kubernetes 1.30+
  • Helm 3.0+

As of version 0.24.2, the core-provider no longer requires Snowplow for resource discovery — this functionality is now built-in.

Install​

helm repo add krateo https://charts.krateo.io
helm repo update
helm install krateo-core-provider krateo/core-provider --namespace krateo-system --create-namespace

The Manager of Managers​

The Core Provider acts as the "Manager" in the Krateo ecosystem. Its primary role is to orchestrate the lifecycle of other controllers.

  1. Watch: It monitors CompositionDefinition resources.
  2. Generate: It creates a versioned CRD based on the chart's schema.
  3. Spawn: It deploys a dedicated Composition Dynamic Controller (CDC) to manage instances of that CRD.

Concepts & Design​

DocumentPurpose
Architecture & GlossaryHigh-level system overview and key terminology.
Version ManagementHow to handle chart upgrades (Full, Parallel, Selective).
Security DesignDeep dive into RBAC isolation and schema validation.
CDC OverviewUnderstanding the worker controller that runs your charts.
TelemetryMetrics reference for the Core Provider.

Operational Guides (How-to)​

For step-by-step instructions on using the Core Provider, see:

Environment Variables and Flags​

NameDescriptionDefaultNotes
CORE_PROVIDER_DEBUGEnables debug loggingfalseUse --debug flag
CORE_PROVIDER_SYNCSync period for controller manager1hDuration
CORE_PROVIDER_POLL_INTERVALPoll interval for resource drift checks5mDuration
CORE_PROVIDER_MAX_RECONCILE_RATEMaximum reconcile rate per second5Integer
CORE_PROVIDER_LEADER_ELECTIONEnables leader election for controller managerfalseUse --leader-election flag
CORE_PROVIDER_WEBHOOK_SERVICE_NAMEName of the webhook servicecore-provider-webhook-serviceString
CORE_PROVIDER_WEBHOOK_SERVICE_NAMESPACENamespace of the webhook servicedemo-systemString
CORE_PROVIDER_MAX_ERROR_RETRY_INTERVALMaximum retry interval on errors1mDuration
CORE_PROVIDER_MIN_ERROR_RETRY_INTERVALMinimum retry interval on errors1sDuration
CORE_PROVIDER_TLS_CERTIFICATE_DURATIONDuration of the TLS certificate.24hDuration
CORE_PROVIDER_TLS_CERTIFICATE_LEASE_EXPIRATION_MARGINLease renewal margin.16hDuration
HELM_REGISTRY_CONFIG_PATHPath to Helm registry configuration file/tmpUsed for OCI registries
OTEL_ENABLEDEnables OTLP metrics exportfalseUse --metrics-enabled flag
OTEL_EXPORT_INTERVALInterval used to export OTLP metrics30sDuration
OTEL_EXPORTER_OTLP_ENDPOINTOTLP endpoint for metrics export``URL
URL_PLURALSDEPRECATED (≥ 0.24.2)-Ignored