Konfidence is pre-release software. Concepts and APIs are unstable and subject to change.
Skip to content

System architecture ​

Konfidence separates the definition of your delivery process from its execution in target environments. Before installing it, understand which components you install centrally and which resources you configure for each project and landscape.

Konfidence runs as workloads on Kubernetes and uses the Kubernetes API to store delivery state. It does not replace the Kubernetes control plane.

The diagram shows how delivery management and runtime orchestration connect through the desired stage state:

Components you install ​

The platform consists of Konfidence and the deployers you install to provide deployment capabilities:

ComponentResponsibilityInstallation
Konfidence operatorReconciles delivery resources and coordinates rolloutsThe konfidence Helm chart
Konfidence API serverProvides the API, dashboard, login, and project authorizationThe same konfidence Helm chart
Kubernetes deployerDeploys Helm and Kustomize artifacts through FluxThe separate kubernetes-landscape-orchestrator Helm chart

Choose a deployer explains how deployment classes connect artifact types to a target platform. Installing a deployer provides its classes centrally. A deployment target makes one class available in a particular landscape.

Delivery management ​

Delivery management is the definition side of Konfidence and the primary interface for your project. It manages the delivery process but does not deploy workloads itself.

  • Definition: It defines the desired delivery state: which vectors exist and which vector each stage should use.
  • Role: It assembles, validates, and publishes deployment configurations, such as software versions and stage resources. Its work ends when the target stage state exists in the cluster.

Runtime orchestration ​

Runtime orchestration is the execution side of Konfidence.

  • Definition: It consumes the stage state that delivery management produces and turns it into deployments.
  • Role: It manages and executes software deployments in one or more landscapes based on a specific target state, such as a stage resource. The handoff between the two sides happens through Kubernetes resources in the same cluster; no cross-cluster synchronization is involved.

Landscape ​

A landscape groups stages and their deployment resources within a project. Konfidence creates and manages a namespace for each landscape. You provide the underlying infrastructure and configure the deployment targets that tell deployers where to run its workloads.

You can create landscapes for different operational boundaries, such as testing and production. Landscapes and stages explains how to choose those boundaries.

Landscape services, such as the Vector Data Service, run alongside applications. Install them in the landscape context after creating its namespace.

The current release runs everything in one cluster ​

Konfidence and the Kubernetes landscape orchestrator run in one Kubernetes cluster:

  • The Konfidence Helm chart installs Konfidence's two components: the operator and the API server.
  • The kubernetes-landscape-orchestrator Helm chart installs the deployer for the Kubernetes target runtime.
  • Each project and each landscape owns a namespace in that cluster.

Use the Kubernetes deployer's local connection for workloads in this cluster. Its remote kubeconfig connection is work in progress and does not yet create every resource on the remote cluster. See Connection types for the current limitations. Running Konfidence itself across several clusters is not available in the current release.

Next steps ​

EU and German government funding logos

Funded by the European Union – NextGenerationEU.

The views and opinions expressed are solely those of the author(s) and do not necessarily reflect the views of the European Union or the European Commission. Neither the European Union nor the European Commission can be held responsible for them.