Dieses Dokument wurde mithilfe automatisierter maschineller Übersetzungstechnologie übersetzt. Wir bemühen uns um korrekte Übersetzungen, übernehmen jedoch keine Gewähr für die Vollständigkeit, Richtigkeit oder Zuverlässigkeit der übersetzten Inhalte. Im Falle von Abweichungen ist die englische Originalversion maßgebend und stellt den verbindlichen Text dar.

Cluster API Add-on Provider Fleet

Übersicht

Der Cluster-API-Add-on-Anbieter für Fleet (CAAPF) ist ein Cluster-API (CAPI)-Anbieter, der die Integration mit Fleet ermöglicht, um die einfache Implementierung von Anwendungen in einem CAPI-bereitgestellten Cluster zu erreichen.

Weitere Informationen zum Anbieter finden Sie in dem CAAPF-Buch.

CAAPF hängt von dem WatchList Kubernetes-Feature-Gate ab. Dieses Feature muss explizit auf Kubernetes 1.33 Versionen aktiviert werden. Siehe die Kubernetes-Upstream-Dokumentation für weitere Informationen.

Funktionalität

  • Der Anbieter wird einen neu bereitgestellten CAPI-Cluster bei Fleet registrieren, indem er eine Fleet Cluster Instanz mit demselben name und namespace erstellt. Anwendungen können automatisch in den erstellten Cluster unter Verwendung von GitOps bereitgestellt werden.

  • Der Anbieter wird automatisch eine Fleet ClusterGroup für jeden CAPI ClusterClass im ClusterClass Namespace erstellen. Dies ermöglicht es Ihnen, dieselben Anwendungen in allen Clustern bereitzustellen, die aus demselben ClusterClass erstellt wurden.

  • Der Anbieter wird automatisch eine Fleet ClusterGroup für jeden referenzierten CAPI ClusterClass Cluster erstellen, der in einem anderen Namespace als ClusterClass liegt. Dies ermöglicht es Ihnen, dieselben Anwendungen in allen Clustern bereitzustellen, die dasselbe ClusterClass in einem bestimmten Namespace referenzieren.

Dies ermöglicht es einem Benutzer, entweder eine Bundle Ressource mit rohen Anwendungs-Workloads oder GitRepo anzugeben, um Anwendungen aus Git zu installieren. Jede der Ressourcen kann targets in beliebiger Kombination bereitstellen:

  targets:
  - clusterGroup: <cluster-class-name> # If the cluster is created from cluster-class
  - clusterName: <a specific CAPI cluster name>

Zusätzlich propagiert CAAPF automatisch CAPI Cluster-Labels an die Fleet Cluster-Ressource, sodass Benutzer ein Ziel angeben können, das mit einem gemeinsamen Cluster-Label übereinstimmt:

  targets:
  - clusterSelector: <label selector for the cluster instances, inherited from CAPI clusters>
  - clusterGroupSelector: <label selector for the cluster group instances, labels inherited from ClusterClass>

Helm-Chart-Templating basierend auf CAPI Cluster und ControlPlane

Die Cluster API Add-on Provider Fleet automatisiert die Anwendungs-https://documentation.suse.com/cloudnative/continuous-delivery/v0.12/en/ref-fleet-yaml.html#_templating[Templating] für importierte CAPI-Cluster basierend auf übereinstimmendem Clusterzustand. Dieses Feature stellt sicher, dass der Zustand eines CAPI-Clusters und der Ressourcen immer aktuell im spec.templateValues.ClusterValues Feld der Fleet-Cluster-Ressource ist. Dies ermöglicht es den Benutzern:

  • Verweisen Sie direkt auf bestimmte Teile des CAPI-Clusters oder nutzen Sie Helm-Ersetzungsmuster, die auf .ClusterValues.Cluster Daten verweisen.

  • Ersetzen Sie basierend auf dem Zustand der Steuerungsebene-Ressource über das .ClusterValues.ControlPlane Feld.

  • Ersetzen Sie basierend auf dem Zustand der Infrastruktur-Cluster-Ressource über das .ClusterValues.InfrastructureCluster Feld.

  • Halten Sie einen konsistenten Anwendungszustand über verschiedene Cluster hinweg aufrecht.

  • Verwenden Sie dasselbe Template für mehrere übereinstimmende Cluster, um Implementierung und Verwaltung zu vereinfachen.

Weitere Informationen zu dieser Funktion finden Sie im Abschnitt Templating-Dokumentation im Buch.

Beispiel - Bereitstellung von kindnet CNI

Demo: asciicast

Beispiel - Bereitstellung von Calico CNI mit GitRepo

Demo: asciicast

Ein Tutorial und die Voraussetzungen finden Sie im Abschnitt GitRepo-Tutorial im Buch.