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 cœurs de processeur 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.
- Pour chaque cluster que vous souhaitez gérer avec ACM, vous devez créer un secret sur le cluster concentrateur avec le jeton d'accès du cluster géré et le serveur URL. Cette étape peut être réalisée avant ou après l'installation. Voir Préparation des secrets pour l'ACM.
- 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'identifiant 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
Préparation des secrets pour l'ACM
Pour chaque cluster que vous souhaitez gérer avec ACM, vous devez créer un secret sur le cluster concentrateur qui inclut le jeton d'accès du cluster géré et le serveur URL.
Si vous souhaitez importer des clusters gérés au cours du processus d'installation du module complémentaire ACM, effectuez les étapes suivantes avant de commencer l'installation. Si vous choisissez de créer les secrets et d'importer les clusters gérés après l'installation du module complémentaire sur le cluster du concentrateur, vous pouvez le faire en effectuant des étapes supplémentaires à l'aide de la CLI.
Suivez les étapes suivantes pour chaque cluster que vous souhaitez gérer.
-
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 de hubs, vous pouvez utiliser l'interface de ligne de commande(CLI) ou la console Web d' 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
Il existe plusieurs façons d'importer des clusters pour les gérer avec ACM. Avant de pouvoir importer un cluster, assurez-vous d'avoir créé le secret requis pour ACM.
Toutes les grappes gérées par ACM doivent appartenir à un ensemble de grappes. 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 de la CLI
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. Voir l'exemple ci-dessous pour la mise en forme. L'exemple suivant importecluster_id_1.managedclusters: - clusterid: "cluster_id_1" secretname: "managed-secret-1" secretnamespace: "managed-namespace" # The namespace that the secret was created in action: "Import" -
Sauvegardez et appliquez les modifications.
Importation d'un cluster géré à l'aide du jeton OpenShift et du serveur API URL
Rassemblez le jeton OpenShift et le serveur API URL pour le cluster que vous souhaitez importer, puis utilisez la console ACM pour importer le cluster.
-
Dans la console IBM Cloud, naviguez vers 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 déroulant du nom d'utilisateur, illustré par le format
IAM#username. Dans le menu déroulant, cliquez sur Copier la commande de connexion. -
Cliquez sur Afficher le jeton pour afficher vos commandes de connexion. Trouvez la commande qui commence par
oc loginet enregistrez le jeton API (sha256~XXXX) et le serveur URL. -
Accédez à votre console ACM. Cliquez sur Infrastructure > Clusters > Importer un cluster existant.
-
Suivez les invites pour importer votre cluster et indiquez le jeton API et le serveur URL dans la section des paramètres.
Importation d'un cluster géré à l'aide de la commande kubeconfig
Rassemblez les détails de votre kubeconfig, puis utilisez la console ACM pour importer le cluster.
-
Depuis le CLI de IBM Cloud, exécutez la commande suivante pour obtenir le kubeconfig du cluster que vous souhaitez importer. Enregistrer le contenu du fichier kubeconfig affiché dans la sortie.
ibmcloud ks cluster config --cluster CLUSTER_NAME --admin --output yaml -
Accédez à votre console ACM. Cliquez sur Infrastructure > Clusters > Importer un cluster existant.
-
Suivez les instructions pour importer votre cluster et inclure le contenu de kubeconfig dans la section des paramètres.
Importation d'un cluster géré à l'aide d'une commande générée
Utilisez la console ACM pour générer une commande d'importation d'un cluster, puis exécutez cette commande sur le cluster à importer.
- Accédez à votre console ACM. Cliquez sur Infrastructure > Clusters > Importer un cluster existant.
- Sélectionnez l'option permettant de générer une commande d'importation. Copier la commande.
- Connectez-vous au CLI de IBM Cloud et exécutez la commande sur le cluster que vous souhaitez importer.
Mise à jour ou suppression d'un cluster géré
Pour supprimer ou mettre à jour le cluster géré d'une instance ACM, vous devez modifier la section managedClusters de la ressource personnalisée ACM sur le cluster concentrateur.
-
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, précisezDeleteouUpdate. 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: "managed-secret-2" secretnamespace: "managed-namespace-2" # 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