Chapitre 7. Préparation de la mise à jour d'un cluster avec des informations d'identification gérées manuellement
L'état de Cloud Credential Operator (CCO) Upgradable
pour un cluster dont les informations d'identification sont gérées manuellement est False
par défaut.
-
Pour les versions mineures, par exemple de 4.12 à 4.13, ce statut vous empêche de procéder à la mise à jour tant que vous n'avez pas pris en compte toutes les permissions mises à jour et annoté la ressource
CloudCredential
pour indiquer que les permissions sont mises à jour en fonction des besoins pour la prochaine version. Cette annotation modifie le statut deUpgradable
enTrue
. - Pour les versions z-stream, par exemple, de 4.13.0 à 4.13.1, aucune autorisation n'est ajoutée ou modifiée, de sorte que la mise à jour n'est pas bloquée.
Avant de mettre à jour un cluster avec des informations d'identification gérées manuellement, vous devez prendre en compte toutes les informations d'identification nouvelles ou modifiées dans l'image de la version d'OpenShift Container Platform vers laquelle vous effectuez la mise à jour.
7.1. Exigences de mise à jour pour les clusters dont les informations d'identification sont gérées manuellement
Avant de mettre à jour un cluster qui utilise des informations d'identification gérées manuellement avec le Cloud Credential Operator (CCO), vous devez mettre à jour les ressources du fournisseur de cloud pour la nouvelle version.
Si la gestion des informations d'identification dans le nuage pour votre cluster a été configurée à l'aide de l'utilitaire CCO (ccoctl
), utilisez l'utilitaire ccoctl
pour mettre à jour les ressources. Les clusters qui ont été configurés pour utiliser le mode manuel sans l'utilitaire ccoctl
nécessitent des mises à jour manuelles des ressources.
Après avoir mis à jour les ressources du fournisseur de cloud, vous devez mettre à jour l'annotation upgradeable-to
pour le cluster afin d'indiquer qu'il est prêt à être mis à jour.
Le processus de mise à jour des ressources du fournisseur de cloud et de l'annotation upgradeable-to
ne peut être effectué qu'à l'aide d'outils de ligne de commande.
7.1.1. Options de configuration des informations d'identification dans le nuage et exigences de mise à jour par type de plateforme
Certaines plates-formes ne prennent en charge l'utilisation du CCO que dans un seul mode. Pour les clusters installés sur ces plates-formes, le type de plate-forme détermine les exigences en matière de mise à jour des informations d'identification.
Pour les plates-formes qui prennent en charge l'utilisation de l'OCC dans plusieurs modes, vous devez déterminer le mode que le cluster est configuré pour utiliser et prendre les mesures nécessaires pour cette configuration.
- Red Hat OpenStack Platform (RHOSP), Red Hat Virtualization (RHV) et VMware vSphere
Ces plateformes ne permettent pas d'utiliser le CCO en mode manuel. Les clusters sur ces plateformes gèrent automatiquement les changements dans les ressources des fournisseurs de cloud et ne nécessitent pas de mise à jour de l'annotation
upgradeable-to
.Les administrateurs de clusters sur ces plates-formes doivent ignorer la section des informations d'identification gérées manuellement dans le processus de mise à jour.
- Alibaba Cloud, IBM Cloud et Nutanix
Les clusters installés sur ces plateformes sont configurés à l'aide de l'utilitaire
ccoctl
.Les administrateurs de clusters sur ces plateformes doivent prendre les mesures suivantes :
-
Configurer l'utilitaire
ccoctl
pour la nouvelle version. -
Utilisez l'utilitaire
ccoctl
pour mettre à jour les ressources du fournisseur de cloud. -
Indique que le cluster est prêt à être mis à jour avec l'annotation
upgradeable-to
.
-
Configurer l'utilitaire
- Microsoft Azure Stack Hub
Ces clusters utilisent le mode manuel avec des informations d'identification à long terme et n'utilisent pas l'utilitaire
ccoctl
.Les administrateurs de clusters sur ces plateformes doivent prendre les mesures suivantes :
- Mettre à jour manuellement les ressources du fournisseur de cloud pour la nouvelle version.
-
Indique que le cluster est prêt à être mis à jour avec l'annotation
upgradeable-to
.
- Amazon Web Services (AWS), Microsoft Azure et Google Cloud Platform (GCP)
Les grappes installées sur ces plates-formes prennent en charge plusieurs modes CCO.
Le processus de mise à jour requis dépend du mode pour lequel le cluster est configuré. Si vous n'êtes pas sûr du mode que le CCO est configuré pour utiliser sur votre cluster, vous pouvez utiliser la console web ou le CLI pour déterminer cette information.
Ressources supplémentaires
- Détermination du mode Cloud Credential Operator à l'aide de la console web
- Détermination du mode Cloud Credential Operator à l'aide de la CLI
- Configuration de l'utilitaire Cloud Credential Operator pour la mise à jour d'un cluster
- Updating cloud provider resources with manually maintained credentials
- About the Cloud Credential Operator
7.1.2. Détermination du mode Cloud Credential Operator à l'aide de la console web
Vous pouvez déterminer le mode de fonctionnement du Cloud Credential Operator (CCO) à l'aide de la console web.
Seuls les clusters Amazon Web Services (AWS), Microsoft Azure et Google Cloud Platform (GCP) prennent en charge plusieurs modes de CCO.
Conditions préalables
- Vous avez accès à un compte OpenShift Container Platform avec des permissions d'administrateur de cluster.
Procédure
-
Connectez-vous à la console web de OpenShift Container Platform en tant qu'utilisateur ayant le rôle
cluster-admin
. -
Naviguez jusqu'à Administration
Cluster Settings. - Sur la page Cluster Settings, sélectionnez l'onglet Configuration.
- Sous Configuration resource, sélectionnez CloudCredential.
- Sur la page CloudCredential details, sélectionnez l'onglet YAML.
Dans le bloc YAML, vérifiez la valeur de
spec.credentialsMode
. Les valeurs suivantes sont possibles, bien qu'elles ne soient pas toutes prises en charge sur toutes les plateformes :-
''
: Le CCO fonctionne dans le mode par défaut. Dans cette configuration, le CCO fonctionne en mode "menthe" ou "passthrough", en fonction des informations d'identification fournies lors de l'installation. -
Mint
: Le CCO fonctionne en mode menthe. -
Passthrough
: Le CCO fonctionne en mode "passthrough". -
Manual
: Le CCO fonctionne en mode manuel.
ImportantPour déterminer la configuration spécifique d'un cluster AWS ou GCP dont l'adresse
spec.credentialsMode
est''
,Mint
, ouManual
, vous devez procéder à des recherches plus approfondies.Les clusters AWS et GCP prennent en charge l'utilisation du mode mint avec le secret racine supprimé. Si le cluster est spécifiquement configuré pour utiliser le mode mint ou utilise le mode mint par défaut, vous devez déterminer si le secret racine est présent sur le cluster avant de procéder à la mise à jour.
Un cluster AWS ou GCP qui utilise le mode manuel peut être configuré pour créer et gérer des informations d'identification cloud depuis l'extérieur du cluster à l'aide du service de jetons de sécurité AWS (STS) ou de l'identité de charge de travail GCP. Vous pouvez déterminer si votre cluster utilise cette stratégie en examinant l'objet cluster
Authentication
.-
Clusters AWS ou GCP qui utilisent uniquement le mode menthe : Pour déterminer si le cluster fonctionne sans le secret racine, accédez à Workloads
Secrets et recherchez le secret racine de votre fournisseur de cloud. NoteAssurez-vous que la liste déroulante Project est réglée sur All Projects.
Plate-forme Nom secret AWS
aws-creds
PCG
gcp-credentials
- Si vous voyez l'une de ces valeurs, votre cluster utilise le mode mint ou passthrough avec le secret root présent.
- Si vous ne voyez pas ces valeurs, c'est que votre cluster utilise l'OCC en mode menthe avec le secret racine supprimé.
Clusters AWS ou GCP qui utilisent uniquement le mode manuel : Pour déterminer si le cluster est configuré pour créer et gérer des informations d'identification cloud depuis l'extérieur du cluster, vous devez vérifier les valeurs YAML de l'objet cluster
Authentication
.-
Naviguez jusqu'à Administration
Cluster Settings. - Sur la page Cluster Settings, sélectionnez l'onglet Configuration.
- Sous Configuration resource, sélectionnez Authentication.
- Sur la page Authentication details, sélectionnez l'onglet YAML.
Dans le bloc YAML, vérifiez la valeur du paramètre
.spec.serviceAccountIssuer
.-
Une valeur qui contient une URL associée à votre fournisseur de cloud indique que le CCO utilise le mode manuel avec AWS STS ou GCP Workload Identity pour créer et gérer les informations d'identification du cloud depuis l'extérieur du cluster. Ces clusters sont configurés à l'aide de l'utilitaire
ccoctl
. -
Une valeur vide (
''
) indique que le cluster utilise le CCO en mode manuel mais qu'il n'a pas été configuré à l'aide de l'utilitaireccoctl
.
-
Une valeur qui contient une URL associée à votre fournisseur de cloud indique que le CCO utilise le mode manuel avec AWS STS ou GCP Workload Identity pour créer et gérer les informations d'identification du cloud depuis l'extérieur du cluster. Ces clusters sont configurés à l'aide de l'utilitaire
-
Naviguez jusqu'à Administration
Prochaines étapes
- Si vous mettez à jour un cluster dont l'OCC fonctionne en mode mint ou passthrough et que le secret racine est présent, vous n'avez pas besoin de mettre à jour les ressources du fournisseur de cloud et vous pouvez passer à la partie suivante du processus de mise à jour.
- Si votre cluster utilise l'OCC en mode mineur et que le secret racine a été supprimé, vous devez rétablir le secret d'authentification avec l'authentification de niveau administrateur avant de passer à la partie suivante du processus de mise à jour.
Si votre cluster a été configuré à l'aide de l'utilitaire CCO (
ccoctl
), vous devez prendre les mesures suivantes :-
Configurez l'utilitaire
ccoctl
pour la nouvelle version et utilisez-le pour mettre à jour les ressources du fournisseur de cloud. -
Mettre à jour l'annotation
upgradeable-to
pour indiquer que le cluster est prêt à être mis à jour.
-
Configurez l'utilitaire
Si votre cluster utilise le CCO en mode manuel mais n'a pas été configuré à l'aide de l'utilitaire
ccoctl
, vous devez prendre les mesures suivantes :- Mettre à jour manuellement les ressources du fournisseur de cloud pour la nouvelle version.
-
Mettre à jour l'annotation
upgradeable-to
pour indiquer que le cluster est prêt à être mis à jour.
7.1.3. Détermination du mode Cloud Credential Operator à l'aide de la CLI
Vous pouvez déterminer le mode de configuration du Cloud Credential Operator (CCO) à l'aide de la CLI.
Seuls les clusters Amazon Web Services (AWS), Microsoft Azure et Google Cloud Platform (GCP) prennent en charge plusieurs modes de CCO.
Conditions préalables
- Vous avez accès à un compte OpenShift Container Platform avec des permissions d'administrateur de cluster.
-
Vous avez installé l'OpenShift CLI (
oc
).
Procédure
-
Connectez-vous à
oc
sur le cluster en tant qu'utilisateur ayant le rôlecluster-admin
. Pour déterminer le mode dans lequel le CCO est configuré, entrez la commande suivante :
$ oc get cloudcredentials cluster \ -o=jsonpath={.spec.credentialsMode}
Les valeurs de sortie suivantes sont possibles, bien qu'elles ne soient pas toutes prises en charge sur toutes les plates-formes :
-
''
: Le CCO fonctionne dans le mode par défaut. Dans cette configuration, le CCO fonctionne en mode "menthe" ou "passthrough", en fonction des informations d'identification fournies lors de l'installation. -
Mint
: Le CCO fonctionne en mode menthe. -
Passthrough
: Le CCO fonctionne en mode "passthrough". -
Manual
: Le CCO fonctionne en mode manuel.
ImportantPour déterminer la configuration spécifique d'un cluster AWS ou GCP dont l'adresse
spec.credentialsMode
est''
,Mint
, ouManual
, vous devez procéder à des recherches plus approfondies.Les clusters AWS et GCP prennent en charge l'utilisation du mode mint avec le secret racine supprimé. Si le cluster est spécifiquement configuré pour utiliser le mode mint ou utilise le mode mint par défaut, vous devez déterminer si le secret racine est présent sur le cluster avant de procéder à la mise à jour.
Un cluster AWS ou GCP qui utilise le mode manuel peut être configuré pour créer et gérer des informations d'identification cloud depuis l'extérieur du cluster à l'aide du service de jetons de sécurité AWS (STS) ou de l'identité de charge de travail GCP. Vous pouvez déterminer si votre cluster utilise cette stratégie en examinant l'objet cluster
Authentication
.-
Clusters AWS ou GCP qui utilisent uniquement le mode menthe : Pour déterminer si le cluster fonctionne sans le secret racine, exécutez la commande suivante :
$ oc get secret <secret_name> \ -n=kube-system
où
<secret_name>
estaws-creds
pour AWS ougcp-credentials
pour GCP.Si le secret racine est présent, la sortie de cette commande renvoie des informations sur le secret. Une erreur indique que le secret racine n'est pas présent sur le cluster.
Clusters AWS ou GCP qui utilisent uniquement le mode manuel : Pour déterminer si le cluster est configuré pour créer et gérer des informations d'identification cloud depuis l'extérieur du cluster, exécutez la commande suivante :
$ oc get authentication cluster \ -o jsonpath \ --template='{ .spec.serviceAccountIssuer }'
Cette commande affiche la valeur du paramètre
.spec.serviceAccountIssuer
dans l'objet clusterAuthentication
.-
Une sortie d'une URL associée à votre fournisseur de cloud indique que le CCO utilise le mode manuel avec AWS STS ou GCP Workload Identity pour créer et gérer les informations d'identification du cloud depuis l'extérieur du cluster. Ces clusters sont configurés à l'aide de l'utilitaire
ccoctl
. -
Une sortie vide indique que le cluster utilise le CCO en mode manuel mais qu'il n'a pas été configuré à l'aide de l'utilitaire
ccoctl
.
-
Une sortie d'une URL associée à votre fournisseur de cloud indique que le CCO utilise le mode manuel avec AWS STS ou GCP Workload Identity pour créer et gérer les informations d'identification du cloud depuis l'extérieur du cluster. Ces clusters sont configurés à l'aide de l'utilitaire
Prochaines étapes
- Si vous mettez à jour un cluster dont l'OCC fonctionne en mode mint ou passthrough et que le secret racine est présent, vous n'avez pas besoin de mettre à jour les ressources du fournisseur de cloud et vous pouvez passer à la partie suivante du processus de mise à jour.
- Si votre cluster utilise l'OCC en mode mineur et que le secret racine a été supprimé, vous devez rétablir le secret d'authentification avec l'authentification de niveau administrateur avant de passer à la partie suivante du processus de mise à jour.
Si votre cluster a été configuré à l'aide de l'utilitaire CCO (
ccoctl
), vous devez prendre les mesures suivantes :-
Configurez l'utilitaire
ccoctl
pour la nouvelle version et utilisez-le pour mettre à jour les ressources du fournisseur de cloud. -
Mettre à jour l'annotation
upgradeable-to
pour indiquer que le cluster est prêt à être mis à jour.
-
Configurez l'utilitaire
Si votre cluster utilise le CCO en mode manuel mais n'a pas été configuré à l'aide de l'utilitaire
ccoctl
, vous devez prendre les mesures suivantes :- Mettre à jour manuellement les ressources du fournisseur de cloud pour la nouvelle version.
-
Mettre à jour l'annotation
upgradeable-to
pour indiquer que le cluster est prêt à être mis à jour.