Partager via


Ajouter ou mettre à jour votre secret d’extraction Red Hat sur un cluster Azure Red Hat OpenShift 4

Ce guide explique comment ajouter ou mettre à jour votre secret d’extraction Red Hat pour un cluster Azure Red Hat OpenShift 4 existant.

Pour un nouveau déploiement de cluster, vous pouvez ajouter votre clé secrète de récupération lors de la création du cluster. Pour plus d’informations sur la création d’un cluster avec un secret d’extraction Red Hat, consultez Obtenir un secret d’extraction Red Hat (facultatif) .

Conditions préalables

Ce guide part du principe que vous disposez d’un cluster Azure Red Hat OpenShift 4 existant. Vérifiez que vous disposez d’un accès administrateur à votre cluster.

Préparer votre secret d’extraction

Lorsque vous créez un cluster sans ajouter de secret d’extraction Red Hat, un secret d’extraction est toujours créé automatiquement sur votre cluster. Toutefois, ce secret d’extraction n’est pas entièrement rempli.

Cette section explique comment mettre à jour le pull secret avec d'autres valeurs issues de votre pull secret Red Hat.

  1. Récupérez le secret nommé pull-secret dans l’espace de noms openshift-config et enregistrez-le dans un fichier distinct en exécutant la commande suivante :

    oc get secrets pull-secret -n openshift-config -o template='{{index .data ".dockerconfigjson"}}' | base64 -d > pull-secret.json
    

    Votre sortie doit être similaire à l'exemple suivant et la valeur secrète réelle a été supprimée.

    {
      "auths": {
        "arosvc.azurecr.io": {
          "auth": "<my-aroscv.azurecr.io-secret>"
        }
      }
    }
    
  2. Accédez au portail du gestionnaire de cluster Red Hat OpenShift et sélectionnez Télécharger le secret d’extraction. Votre secret d’extraction Red Hat ressemble à l’exemple suivant et les valeurs réelles du secret ont été supprimées.

    {
      "auths": {
        "cloud.openshift.com": {
          "auth": "<my-crc-secret>",
          "email": "violet@contoso.com"
        },
        "quay.io": {
          "auth": "<my-quayio-secret>",
          "email": "violet@contoso.com"
        },
        "registry.connect.redhat.com": {
          "auth": "<my-registry.connect.redhat.com-secret>",
          "email": "violet@contoso.com"
        },
        "registry.redhat.io": {
          "auth": "<my-registry.redhat.io-secret>",
          "email": "violet@contoso.com"
        }
      }
    }
    
  3. Modifiez le fichier de secret d’extraction que vous avez obtenu à partir de votre cluster en ajoutant les entrées trouvées dans votre clé secrète d’extraction Red Hat.

    Importante

    Si vous incluez l’entrée cloud.openshift.com de votre pull secret Red Hat, votre cluster envoie des données de télémétrie à Red Hat. Incluez cette section uniquement si vous souhaitez envoyer des données de télémétrie. Sinon, excluez la section suivante.

    {
      "cloud.openshift.com": {
        "auth": "<my-crc-secret>",
        "email": "violet@contoso.com"
      }
    

    Avertissement

    Ne supprimez pas ou ne modifiez pas l’entrée arosvc.azurecr.io de votre secret d’extraction. Cette section est nécessaire pour que votre cluster fonctionne correctement.

    "arosvc.azurecr.io": {
      "auth": "<my-aroscv.azurecr.io-secret>"
    }
    

    Votre fichier final doit ressembler à l’exemple suivant et les valeurs secrètes réelles ont été supprimées.

    {
      "auths": {
        "cloud.openshift.com": {
          "auth": "<my-crc-secret>",
          "email": "violet@contoso.com"
        },
        "quay.io": {
          "auth": "<my-quayio-secret>",
          "email": "violet@contoso.com"
        },
        "registry.connect.redhat.com": {
          "auth": "<my-registry.connect.redhat.com-secret>",
          "email": "violet@contoso.com"
        },
        "registry.redhat.io": {
          "auth": "<my-registry.redhat.io-secret>",
          "email": "violet@contoso.com"
        },
        "arosvc.azurecr.io": {
          "auth": "<my-aroscv.azurecr.io-secret>"
        }
      }
    }
    
  4. Assurez-vous que le fichier est dans un format JSON valide. Il existe de nombreuses façons de valider votre fichier JSON. L’exemple suivant utilise jq pour valider le fichier.

    cat pull-secret.json | jq
    

    S’il existe une erreur dans le fichier, elle apparaît sous la forme parse error.

Ajouter votre secret d’extraction à votre cluster

Exécutez la commande suivante pour mettre à jour votre secret d’extraction. Dans la version 4.9 ou antérieure, l’exécution de cette commande entraîne le redémarrage de vos nœuds de cluster un par un au fur et à mesure qu’ils sont mis à jour. Dans la version 4.10 ou ultérieure, un redémarrage n’est pas déclenché.

oc set data secret/pull-secret -n openshift-config --from-file=.dockerconfigjson=./pull-secret.json

Vérifier que le secret d’extraction est en place

oc exec -n openshift-apiserver $(oc get pod -n openshift-apiserver -o jsonpath="{.items[0].metadata.name}") -- cat /var/lib/kubelet/config.json

Après avoir défini le secret, vous êtes prêt à activer les opérateurs certifiés Red Hat.

Modifier le fichier de configuration

Modifiez les objets suivants pour activer les opérateurs Red Hat.

Modifiez le fichier de configuration de l’opérateur Samples. Vous pouvez ensuite modifier le fichier de configuration en exécutant la commande suivante :

oc edit configs.samples.operator.openshift.io/cluster -o yaml

Modifiez la valeur spec.managementState de Removed à Managed.

L’extrait de code YAML suivant montre uniquement les sections pertinentes du fichier YAML modifié :

apiVersion: samples.operator.openshift.io/v1
kind: Config
metadata:

  ...

spec:
  architectures:
  - x86_64
  managementState: Managed

Exécutez la commande suivante pour modifier le fichier de configuration du hub opérateur :

oc edit operatorhub cluster -o yaml

Changez les valeurs Spec.Sources.Disabled de true à false pour toutes les sources à activer.

L’extrait de code YAML suivant montre uniquement les sections pertinentes du fichier YAML modifié :

Name:         cluster

...
                 dd3310b9-e520-4a85-98e5-8b4779ee0f61
Spec:
  Sources:
    Disabled:  false
    Name:      certified-operators
    Disabled:  false
    Name:      redhat-operators

Enregistrez le fichier pour appliquer vos modifications.

Vérifier que votre clé secrète fonctionne

Une fois que vous avez ajouté votre secret d’extraction et modifié les fichiers de configuration appropriés, les mises à jour de votre cluster peuvent prendre plusieurs minutes. Pour vérifier que votre cluster a été mis à jour, exécutez la commande suivante pour afficher les sources opérateurs certifiés et opérateurs Red Hat disponibles :

$ oc get catalogsource -A
NAMESPACE               NAME                  DISPLAY               TYPE   PUBLISHER   AGE
openshift-marketplace   certified-operators   Certified Operators   grpc   Red Hat     10s
openshift-marketplace   community-operators   Community Operators   grpc   Red Hat     18h
openshift-marketplace   redhat-operators      Red Hat Operators     grpc   Red Hat     11s

Si vous ne voyez pas les opérateurs certifiés et les opérateurs Red Hat, patientez quelques minutes et réessayez.

Pour vous assurer que votre secret d’extraction a été mis à jour et est fonctionnel, ouvrez OperatorHub et recherchez n’importe quel opérateur vérifié Red Hat. Par exemple, assurez-vous que l’opérateur de stockage de conteneurs OpenShift est disponible et vérifiez que vous disposez des autorisations nécessaires pour l’installer.

Étapes suivantes