Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi.

Fournisseur de produit complémentaire Cluster API Fleet

Présentation

Le fournisseur de produit complémentaire Cluster API pour Fleet (CAAPF) est un fournisseur Cluster API (CAPI) qui permet l’intégration avec Fleet pour faciliter le déploiement d’applications sur un cluster provisionné par CAPI.

Pour plus d’informations sur le fournisseur, veuillez vous référer à CAAPF book.

CAAPF dépend du feature gate de WatchList Kubernetes. Cette fonctionnalité doit être explicitement activée sur les versions Kubernetes 1.33. Consultez la documentation en amont de Kubernetes pour plus d’informations.

Fonction

  • Le fournisseur enregistrera un cluster CAPI nouvellement provisionné avec Fleet en créant une instance Fleet Cluster avec les mêmes name et namespace. Les applications peuvent être déployées automatiquement sur le cluster créé en utilisant GitOps.

  • Le fournisseur créera automatiquement un Fleet ClusterGroup pour chaque CAPI ClusterClass dans l’espace de noms ClusterClass. Cela vous permet de déployer les mêmes applications sur tous les clusters créés à partir du même ClusterClass.

  • Le fournisseur créera automatiquement un Fleet ClusterGroup pour chaque CAPI référencé ClusterClass par Cluster situé dans un espace de noms différent de ClusterClass. Cela vous permet de déployer les mêmes applications sur tous les clusters qui référencent le même ClusterClass dans un espace de noms particulier.

Cela permet à un utilisateur de spécifier soit une ressource Bundle avec des charges de travail d’application brutes, soit GitRepo pour installer des applications depuis git. Chacune des ressources peut fournir targets avec n’importe quelle combinaison de :

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

De plus, CAAPF propage automatiquement les étiquettes de cluster CAPI à la ressource de cluster Fleet, afin que les utilisateurs puissent spécifier une cible correspondant à une étiquette de cluster commune avec :

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

Templating de Helm Chart basé sur CAPI Cluster et ControlPlane

Le Fournisseur de produit complémentaire Cluster API Fleet automatise le templating des applications pour les clusters CAPI importés en fonction de l’état du cluster correspondant. Cette fonctionnalité garantit que l’état d’un cluster CAPI et des ressources est toujours à jour dans le champ spec.templateValues.ClusterValues de la ressource de cluster Fleet. Cela permet aux utilisateurs de :

  • Référencer directement des parties spécifiques du cluster CAPI ou via des modèles de substitution Helm faisant référence aux données .ClusterValues.Cluster.

  • Substituer en fonction de l’état de la ressource du plan de contrôle via le champ .ClusterValues.ControlPlane.

  • Substituer en fonction de l’état de la ressource du cluster d’infrastructure via le champ .ClusterValues.InfrastructureCluster.

  • Maintenir un état d’application cohérent à travers différents clusters.

  • Utiliser le même template pour plusieurs clusters correspondants afin de simplifier le déploiement et la gestion.

Pour plus d’informations sur la fonctionnalité, veuillez vous référer à la documentation sur le templating dans le livre.

Exemple - déploiement de kindnet CNI

Démo : asciicast

Exemple - déploiement de Calico CNI en utilisant GitRepo

Démo : asciicast

Pour un tutoriel et les prérequis, veuillez vous référer à la section tutoriel gitrepo dans le livre.