Configuration du module complémentaire de gestion avancée des clusters
Le module complémentaire Advanced Cluster Management (ACM) offre aux clients un moyen simplifié de gérer la surveillance, le placement des charges de travail et les politiques de sécurité sur plusieurs clusters.
L'installation d'ACM à partir de OperatorHub n'est pas prise en charge pour les clusters IBM Cloud. Pour installer l'ACM, suivez les instructions de cette page.
Le cluster sur lequel vous installez ACM est le cluster hub. Pendant ou après l'installation, vous pouvez spécifier plusieurs clusters gérés à gérer avec ACM.
Avant de commencer
Avant d'installer le module complémentaire ACM, vérifiez les étapes et les informations préalables suivantes.
- Assurez-vous que vos clusters répondent aux exigences suivantes.
- Votre cluster hub doit être un cluster VPC avec au moins 3 nœuds de travail qui exécutent RHCOS et un minimum de 6 VCPU et 64GB RAM. Pour la haute disponibilité, assurez-vous que votre cluster dispose d'au moins un nœud de travail par zone sur 3 zones.
- Chaque cluster géré doit avoir au moins 3 nœuds de travail qui exécutent RHCOS et un minimum de 6 VCPU et 64GB RAM.
- Passez en revue les opérateurs qui sont automatiquement installés par le module complémentaire ACM et les opérateurs optionnels que vous pouvez installer en tant qu'extensions.
- Vous devez avoir le rôle d'accès à la plate-forme Administrateur et le rôle d'accès au service Gestionnaire pour le cluster dans IBM Cloud Kubernetes Service.
- Vous devez disposer d'un cluster VPC comportant au moins 3 nœuds de travail. Chaque nœud de travail doit disposer d'au moins 4 processeurs et d' 16GB s de RAM. Pour la haute disponibilité, assurez-vous que votre cluster dispose d'au moins un nœud de travail par zone sur 3 zones.
- Créez un profil de confiance sur votre cluster à utiliser pour ACM.
- Facultatif: si vous souhaitez importer des clusters gérés lors du processus d'installation du module complémentaire ACM, si vous prévoyez d'importer des clusters gérés à l'aide de l'interface de ligne de commande (CLI) après l'installation, ou si vous prévoyez de mettre à jour ultérieurement les informations d'identification de connexion d'un cluster géré, vous devez créer un secret sur le cluster hub pour chaque cluster géré. Voir Préparation des secrets pour ACM. Cette étape n’est pas nécessaire si vous prévoyez uniquement d’importer des clusters gérés après l’installation à l’aide de la console Web OpenShift.
- Installer ou mettre à jour le CLI.
Créer un profil de confiance pour ACM
Suivez les étapes pour créer un profil de confiance à utiliser avec ACM et l'attribuer au cluster hub.
Une fois que vous avez ajouté un profil de confiance à un cluster, celui-ci ne peut plus être supprimé et vous ne pouvez plus utiliser une clé API pour vos ressources. Veillez à suivre attentivement ces étapes afin de vous assurer que votre profil de confiance est correctement configuré.
Créer un profil de confiance à l'aide de l'interface utilisateur
-
Suivez les étapes pour créer un profil de confiance. Dans les conditions du profil, veillez à spécifier l'accès suivant.
- Ressources de calcul : Red Hat OpenShift
- Toutes les ressources de service
- Autoriser l'accès lorsque l'espace de noms est égal à
kube-system - Kubernetes Service Rôles - Gestionnaire, rédacteur
-
Après avoir créé votre profil de confiance, copiez l'identifiant à partir de la page Profils de confiance de la console.
Créer un profil de confiance à l'aide de l'interface de ligne de commande (CLI)
- Créer un profil de confiance.
ibmcloud iam trusted-profile-create acm-operator-profile - Créez la règle de confiance des ressources de calcul, dont la portée est limitée à l'espace de
kube-systemnoms des ressources de calcul d' Red Hat OpenShift.ibmcloud iam trusted-profile-rule-create acm-operator-profile \ --name kube-system-rule \ --type Profile-CR \ --conditions claim:namespace,operator:EQUALS,value:kube-system \ --cr-type ROKS_SA - Attribuez la politique d'accès IAM au profil. Remplacez
CLUSTER_IDpar l'ID de votre cluster de hub.ibmcloud iam trusted-profile-policy-create acm-operator-profile \ --roles Reader,Viewer,Operator,Editor \ --service-name containers-kubernetes \ --service-instance CLUSTER_ID
Définir le profil de confiance du cluster
- Récupérer l'ID du profil de confiance.
ibmcloud iam trusted-profiles - Attribuez le profil de confiance au cluster.
ibmcloud oc experimental trusted-profile set --cluster CLUSTER_NAME_OR_ID --trusted-profile TRUSTED_PROFILE_ID - Vérifiez que le secret du profil de confiance a bien été créé dans le cluster. Cette commande peut prendre jusqu'à 10 minutes. Attendez que la clé secrète s'affiche avant de procéder à l'installation du module complémentaire ACM. Si vous
poursuivez avant que le secret ne soit créé, l'installation du module complémentaire ACM échouera.
oc get secrets -n kube-system | grep ibm-cloud-credentials
Préparation des secrets pour l'ACM
La création de secrets pour ACM est facultative. Vous ne devez remplir cette section que si vous souhaitez importer des clusters gérés lors du processus d'installation du module complémentaire ACM, si vous prévoyez d' importer des clusters gérés après l'installation à l'aide de l'interface de ligne de commande(CLI), ou si vous prévoyez de mettre à jour ultérieurement les identifiants de connexion d'un cluster géré.
Si vous prévoyez d'importer des clusters gérés après l'installation à l'aide de la console Web OpenShift et que vous n'avez pas besoin de mettre à jour les identifiants de connexion ultérieurement, vous n'avez pas besoin de créer de secrets.
Pour chaque cluster que vous souhaitez gérer, suivez les étapes suivantes sur le cluster central.
-
Sur le cluster que vous souhaitez gérer avec ACM, exécutez la commande pour trouver le serveur URL. Dans le résultat, recherchez et notez la valeur du maître URL. Il s'agit du serveur URL à référencer dans le secret. Vous utiliserez également cette URL dans les étapes suivantes.
ibmcloud oc cluster get -c CLUSTER_NAME_OR_IDExemple de sortie.
NAME: mycluster ID: 1234567 State: normal Created: 2025-01-22T19:22:16+0000 Location: dal10 Master URL: https://c100-e.<region>.containers.cloud.ibm.com:<port> ... -
Récupérer l' URL s de base du serveur OAuth de Red Hat OpenShift. Remplacez par
MASTER_URLl' URL ion obtenue à l'étape précédente. La commande extrait l' URL de base sans le suffixe «/oauth/token».curl -sS MASTER_URL/.well-known/oauth-authorization-server | jq -r .token_endpoint | sed 's#/oauth/token##'Exemple de sortie.
https://c111-e.us-east.containers.cloud.ibm.com:31282 -
Récupérez un jeton d'accès à l'aide du point de terminaison obtenu à l'étape précédente.
Exécutez la commande suivante : <CODE_INLINE> cURL </CODE_INLINE>, en remplaçant par
Dans la réponse, recherchez le contenuURLla sortie de l'étape précédente et parAPI_KEYvotre clé API <CODE_INLINE> IBM Cloud </CODE_INLINE >.ACCESS_TOKENdans la réponse Location. Il s'agit du jeton d'accès à inclure dans le secret.Exemple de requête curl :
curl -u 'apikey:API_KEY' -H "X-CSRF-Token: a" 'URL/oauth/authorize?client_id=openshift-challenging-client&response_type=token' -vvvExemple de sortie. L'ACCESS_TOKEN est inclus dans la chaîne de réponse Location.
< HTTP/1.1 302 Found < Cache-Control: no-cache, no-store, max-age=0, must-revalidate < Cache-Control: no-cache, no-store, max-age=0, must-revalidate < Expires: 0 < Expires: Fri, 01 Jan 2030 00:00:00 GMT < Location: TOKEN_ENDPOINT/oauth/token/implicit#access_token=ACCESS_TOKEN&expires_in=86400&scope=user%3Afull&token_type=Bearer ... -
Sur le cluster hub, créez un secret qui contient le jeton d'accès au cluster et le serveur URL. Pour plus d'informations sur la création de secrets, voir Working with secrets dans la documentation Kubernetes.
Exemple de secret.
apiVersion: v1 kind: Secret metadata: name: SECRET_NAME namespace: SECRET_NAMESPACE # The namespace that the secret is to be created in type: Opaque stringData: token: ACCESS_TOKEN server: SERVER_URL
Installation d'ACM à partir de l'interface utilisateur
Utilisez l'interface utilisateur pour installer le module complémentaire ACM et l'opérateur ACM sur le cluster du concentrateur.
-
Si vous souhaitez importer un ou plusieurs clusters gérés pour les gérer avec ACM au cours du processus d'installation, suivez les étapes de la section Préparation des secrets pour ACM pour créer le secret requis sur le cluster concentrateur. Sauvegarder le nom secret et l'espace de noms. Vous pouvez également ignorer cette étape pour l'instant et la terminer après le processus d'installation, mais des étapes CLI supplémentaires seront nécessaires.
-
Connectez-vous à la console IBM Cloud et accédez à la page Clusters. Cliquez sur le cluster sur lequel vous souhaitez installer ACM.
-
Sur la page de détails du cluster, trouvez la section Add-ons.
-
Sous Disponible pour l'installation, recherchez l'option Red Hat Advanced Cluster Management et cliquez sur Installer.
-
Sur la page d'installation, sélectionnez la version du module complémentaire ACM à installer.
-
Choisissez la méthode d'importation des clusters gérés. Pour importer des clusters après l'installation du module complémentaire, sélectionnez Importer à partir de l'interface CLI. Si vous avez créé les secrets requis sur le cluster concentrateur et que vous souhaitez importer des clusters gérés maintenant, sélectionnez Importer maintenant.
Vous ne pouvez utiliser l'interface utilisateur d' IBM Cloud que pour importer des clusters gérés pendant le processus d'installation. Une fois le module complémentaire ACM installé sur le cluster hub, vous pouvez utiliser l'interface de ligne de commande(CLI) ou la console Web OpenShift pour importer des clusters gérés.
- Si vous avez choisi l'option Importer maintenant, cliquez sur Importer le cluster dans le menu contextuel.
- Pour importer des clusters qui existent dans le compte, sélectionnez le cluster et entrez le nom secret et l'espace de noms. Ensuite, cliquez sur Suivant.
- Pour importer des clusters inter-comptes ou externes, indiquez l'ID du cluster, le nom du secret et l'espace de noms du secret. Cliquez ensuite sur Importer un cluster.
-
Cliquez sur Créer.
-
Vérifiez que le module complémentaire est installé sur votre cluster.
- Naviguez vers votre OpenShift Web Console Multicluster Hub.
- Dans le menu de navigation déroulant, sélectionnez Gestion de la flotte.
- Recherchez la liste de vos clusters et vérifiez que votre cluster est listé avec le type de plan de contrôle Hub.
-
En option: Passez en revue les opérateurs supplémentaires que vous pouvez installer pour améliorer les fonctionnalités de l'ACM.
Installation d'ACM à partir de l'interface de ligne de commande (CLI)
Utilisez le CLI pour installer le module complémentaire ACM sur le cluster du concentrateur.
-
Recherchez la version par défaut du module complémentaire ACM.
ibmcloud oc cluster addon versions -
Consultez les options d'extension ACM. Dans la commande, indiquez la version par défaut trouvée à l'étape précédente. Notez les options que vous souhaitez inclure lors de l'installation du module complémentaire.
ibmcloud oc cluster addon options --addon acm --version DEFAULT_VERSION -
Si vous souhaitez importer des clusters qui seront gérés par l'add-on et, si ce n'est pas déjà fait, suivez les étapes de la section Préparer les secrets pour ACM. Veillez à enregistrer l'identifiant du cluster ainsi que le nom et l'espace de noms du secret que vous créez sur le cluster hub. Vous pouvez également effectuer ce processus après l'installation du module complémentaire sur le cluster du concentrateur, mais des étapes supplémentaires sont nécessaires pour importer les clusters gérés après l'installation.
-
Exécutez la commande pour activer le module complémentaire. Veillez à spécifier les paramètres
billingPlanetisLicenseAccepted, ainsi que le paramètre facultatif--managedClusterssi vous souhaitez importer des clusters au cours de la procédure d'installation.ibmcloud oc cluster addon enable acm --cluster HUB_CLUSTER_ID --param 'managedClusters=["clusterid:CLUSTER_ID;secretname:SECRET_NAME;secretnamespace:SECRET_NAMESPACE;action:IMPORT"]' --param 'billingPlan=PLAN' --param 'isLicenseAccepted=BOOLEAN'Paramètres de la commande. Voir l'exemple de commande ci-dessous pour un exemple de chaque type de paramètre.
--cluster- Obligatoire. L'ID du hub cluster sur lequel installer l'add-on ACM.
--param 'managedClusters=["]-
- Optionnel. Incluez ce paramètre une ou plusieurs fois pour importer des clusters gérés au cours du processus d'installation du module complémentaire. Vous pouvez également effectuer cette étape ultérieurement. Pour plus d'informations, consultez la section Préparation des secrets pour ACM.
- Indiquez les valeurs suivantes :
-
- clusterid: L'ID du cluster géré à importer.
-
- secretname: Le nom du secret que vous avez créé sur le cluster hub. Ce secret contient les informations d'identification pour le cluster géré.
-
- secretnamespace: L'espace de noms du secret que vous avez créé sur le cluster du concentrateur. Ce secret contient les informations d'identification pour le cluster géré.
-
- action:IMPORT: Le paramètre qui spécifie l'action IMPORT pour le cluster géré.
--param 'billingPlan='- Obligatoire. Le plan de facturation que vous souhaitez sélectionner pour ACM. Spécifiez
KUBERNETESpour le plan ACM pour Kubernetes. --param 'isLicenseAccepted='- Obligatoire. Spécifiez
TRUEpour accepter l'accord de licence pour le plan de facturation sélectionné. En acceptant cette licence, vous acceptez les conditions générales applicables et reconnaissez que vous comprenez les services inclus dans le plan sélectionné.
-
Vérifiez que le module complémentaire est installé. Il peut s'écouler plusieurs minutes avant que le module complémentaire n'apparaisse dans les résultats suivants.
- Sur le cluster hub, vérifiez que la ressource
acmhubest créée.
oc get acmhub ``` Exemple de sortie. ```sh {: screen} NAME AGE acm-auto 1h ``` 2. Sur le cluster du concentrateur, vérifiez l'état de `acmhub`. ```sh {: pre} oc describe acmhubstatus ``` Exemple de sortie. ```sh {: screen} status phase: Ready ``` - Sur le cluster hub, vérifiez que la ressource
-
En option: Passez en revue les opérateurs supplémentaires que vous pouvez installer pour améliorer les fonctionnalités de l'ACM.
Opérateurs de l'ACM
Passez en revue les opérateurs qui sont automatiquement installés par le module complémentaire ACM et les opérateurs optionnels que vous pouvez installer en tant qu'extensions.
Opérateurs installés automatiquement
Les opérateurs suivants sont automatiquement installés sur votre cluster hub ou sur les clusters gérés lorsque vous installez le module complémentaire ACM.
| Opérateur | Description |
|---|---|
| Opérateur de gestion avancée des clusters (ACM) | Installé sur le cluster hub. |
| MultiCluster Opérateur de moteur | Installé sur les clusters gérés par l'opérateur ACM. |
Opérateurs facultatifs
Les opérateurs suivants sont facultatifs et peuvent être installés sur le cluster concentrateur ou les clusters gérés afin d'améliorer les fonctionnalités de l'ACM. Notez que IBM n'est pas responsable de la gestion de ces opérateurs.
Vous êtes responsable de la gestion de ces opérateurs, y compris, mais sans s'y limiter, de la mise à jour, de la surveillance, de la récupération et de la réinstallation.
| Opérateur | Description | Renseignements supplémentaires |
|---|---|---|
| GitOps Opérateur |
|
GitOps vue d'ensemble |
| Red Hat OpenShift Opérateur de virtualisation |
|
Installation de l'opérateur de virtualisation OpenShift |
| Submariner |
|
Submariner |
Importation de clusters gérés après l'installation d'ACM
Une fois ACM installé, vous pouvez importer des clusters gérés à l'aide de la console Web d' OpenShift ou de l'interface de ligne de commande (CLI). Les méthodes basées sur la console ne nécessitent pas de secret. La méthode CLI nécessite un secret.
Tous les clusters gérés par ACM doivent appartenir à un ensemble de clusters. Vous pouvez créer un nouvel ensemble de clusters ou ajouter des clusters à l'ensemble de clusters Default. Si aucun ensemble de clusters n'est spécifié,
les clusters gérés sont ajoutés à l'option Default.
Importation d'un cluster géré à l'aide d'une commande générée
Utilisez la console Web d’ OpenShift pour générer une commande d’importation, puis exécutez cette commande sur le cluster que vous souhaitez importer.
-
Ouvrez la console Web d' OpenShift pour le cluster ACM Hub.
-
Dans Fleet Management, cliquez sur Importer un cluster.
-
Saisissez le nom du cluster, sélectionnez un ensemble de clusters le cas échéant, puis saisissez des étiquettes supplémentaires le cas échéant.
-
Pour le mode Importation, sélectionnez Exécuter les commandes d'importation manuellement, puis cliquez sur Suivant.
-
Vous pouvez éventuellement sélectionner un modèle d'automatisation, puis cliquer sur Suivant.
-
Vérifiez les détails, puis cliquez sur la commande Générer. Copiez la commande qui s'affiche.
-
Connectez-vous au cluster dans lequel vous souhaitez effectuer l'importation, puis exécutez la commande copiée en la configurant
kubectlpour ce cluster.
Importation d'un cluster géré à l'aide de l' URL e du serveur et du jeton API
Récupérez le jeton API et l' URL s de serveur du cluster que vous souhaitez importer, puis utilisez la console Web OpenShift pour importer le cluster.
-
Récupérez le jeton API et l' URL du serveur pour le cluster que vous souhaitez importer.
-
Dans la console d' IBM Cloud, accédez à votre liste de clusters et cliquez sur le cluster que vous souhaitez importer.
-
Sur la page des détails de cluster, cliquez sur Console Web OpenShift.
-
Cliquez sur le menu du nom d'utilisateur, présenté sous la forme
IAM#username, puis cliquez sur Copier la commande de connexion. -
Cliquez sur Afficher le jeton. Trouvez la commande qui commence par
oc loginet enregistrez le jeton API (sha256~XXXX) et le serveur URL.
-
-
Ouvrez la console Web d' OpenShift pour le cluster ACM Hub.
-
Dans Fleet Management, cliquez sur Importer un cluster.
-
Saisissez le nom du cluster, sélectionnez un ensemble de clusters le cas échéant, puis saisissez des étiquettes supplémentaires le cas échéant.
-
Pour le mode Importation, sélectionnez Saisissez l' URL de votre serveur et le jeton API du cluster existant. Saisissez l' URL s du serveur et le jeton API que vous avez récupérés, puis cliquez sur Suivant.
-
Vous pouvez éventuellement sélectionner un modèle d'automatisation, puis cliquer sur Suivant.
-
Vérifiez les détails, puis cliquez sur Importer.
Importation d'un cluster géré à l'aide de la commande kubeconfig
Récupérez le fichier kubeconfig du cluster que vous souhaitez importer, puis utilisez la console web OpenShift pour importer le cluster.
-
Récupérez le fichier kubeconfig correspondant au cluster que vous souhaitez importer. À partir de l’interface CLI d’ IBM Cloud, exécutez la commande suivante et enregistrez le résultat.
ibmcloud ks cluster config --cluster CLUSTER_NAME --admin --output yaml -
Ouvrez la console Web d' OpenShift pour le cluster ACM Hub.
-
Dans Fleet Management, cliquez sur Importer un cluster.
-
Saisissez le nom du cluster, sélectionnez un ensemble de clusters le cas échéant, puis saisissez des étiquettes supplémentaires le cas échéant.
-
Pour le mode Import, sélectionnez Kubeconfig et collez le contenu du fichier kubeconfig que vous avez récupéré, puis cliquez sur Suivant.
-
Vous pouvez éventuellement sélectionner un modèle d'automatisation, puis cliquer sur Suivant.
-
Vérifiez les détails, puis cliquez sur Importer.
Importation depuis le gestionnaire de clusters d' Red Hat OpenShift
Le mode d'importation Import from Red Hat OpenShift de Cluster Manager n'est pris en charge que pour les clusters Red Hat OpenShift Service sur AWS ( ROSA ) et ne s'applique pas aux clusters IBM Cloud.
Importation d'un cluster géré à l'aide de la CLI
La méthode d'importation via l'interface de ligne de commande (CLI) nécessite que vous ayez créé un secret pour le cluster géré sur le cluster hub.
Pour importer un cluster géré à l'aide de l'interface de programmation, modifiez la ressource ACM afin d'inclure le cluster à gérer.
-
Exécutez la commande pour modifier la ressource ACM.
oc edit acmhub RESOURCE_NAME -
Dans la section
managedClustersde la ressource, ajoutez l'ID du cluster, le nom du secret du cluster créé pour ACM, l'espace de noms pour le secret et spécifiez l'actionImport. L'exemple suivant importeCLUSTER_ID_1.managedclusters: - clusterid: "CLUSTER_ID_1" secretname: "SECRET_NAME" secretnamespace: "SECRET_NAMESPACE" # The namespace that the secret was created in action: "Import" -
Sauvegardez et appliquez les modifications.
Mise à jour ou suppression d'un cluster géré
Pour supprimer un cluster géré d’une instance ACM, ou pour mettre à jour les informations d’ URL de connexion d’ACM pour un cluster géré (par exemple, après une rotation de jeton ou un changement d’ de serveur), vous devez modifier la section
managedClusters de la ressource personnalisée ACM sur le cluster hub. Cette action Update actualise les identifiants basés sur des secrets qu’ACM utilise pour communiquer avec un cluster géré. Cela ne correspond pas
à la mise à niveau de la version OpenShift d'un cluster.
La mise à jour des identifiants de connexion d'un cluster géré nécessite le secret associé à ce cluster.
-
Exécutez la commande pour modifier la ressource ACM.
oc edit acmhub RESOURCE_NAME -
Dans la section
managedClustersde la ressource, ajoutez l'ID du cluster, le nom du secret du cluster créé pour ACM, l'espace de noms pour le secret et l'action que vous voulez mettre en œuvre pour le cluster. Voir l'exemple ci-dessous pour la mise en forme. Pour l'action, indiquez ouDeleteUpdate. Notez que pour supprimer un cluster, vous n'avez pas besoin du secret ou de l'espace de noms secret.L'exemple suivant supprime
CLUSTER_ID_1et met à jourCLUSTER_ID_2.managedclusters: - clusterid: "CLUSTER_ID_1" action: "Delete" - clusterid: "CLUSTER_ID_2" secretname: "SECRET_NAME" secretnamespace: "SECRET_NAMESPACE" # The namespace that the secret was created in action: "Update" -
Sauvegardez et appliquez les modifications.
Mise à jour de la version de l'ACM
Exécutez la commande pour mettre à jour le module complémentaire vers une nouvelle version.
ibmcloud oc cluster addon update acm --cluster CLUSTER_ID --version ADD-ON_VERSION
Pour vérifier que le module complémentaire a été mis à jour, dressez la liste des modules complémentaires de votre cluster. Dans le résultat, recherchez les détails de l'extension ACM.
ibmcloud oc cluster addon ls --cluster CLUSTER_ID
Suppression du module complémentaire ACM
Suivez les étapes pour supprimer le module complémentaire ACM.
-
Supprimez la ressource ACM du cluster du concentrateur.
oc delete acmhub RESOURCE_NAME -
Une fois la ressource supprimée, supprimez le module complémentaire ACM. Indiquez le même ID de cluster.
ibmcloud oc cluster addon disable acm -f --cluster CLUSTER_ID