12.3. Préparation de la grappe pour la mise en miroir

Avant de déconnecter votre cluster, vous devez mettre en miroir, ou copier, les images sur un registre miroir accessible à chaque nœud de votre cluster déconnecté. Pour mettre en miroir les images, vous devez préparer votre grappe en procédant comme suit :

  • Ajout des certificats du registre des miroirs à la liste des autorités de certification de confiance de votre hôte.
  • Création d'un fichier .dockerconfigjson contenant le secret d'extraction de l'image, qui provient du jeton cloud.openshift.com.

Procédure

  1. Configuration des informations d'identification permettant la mise en miroir des images :

    1. Ajoutez le certificat de l'autorité de certification du registre miroir, au format simple PEM ou DER, à la liste des autorités de certification approuvées. Par exemple, le certificat de l'autorité de certification du registre miroir est ajouté à la liste des autorités de certification de confiance :

      $ cp </path/to/cert.crt> /usr/share/pki/ca-trust-source/anchors/
      où, </path/to/cert.crt>
      Indique le chemin d'accès au certificat sur votre système de fichiers local.
    2. Mettre à jour la confiance de l'autorité de certification. Par exemple, sous Linux :

      $ update-ca-trust
    3. Extraire le fichier .dockerconfigjson du secret d'extraction global :

      $ oc extract secret/pull-secret -n openshift-config --confirm --to=.

      Exemple de sortie

      .dockerconfigjson

    4. Modifiez le fichier .dockerconfigjson pour ajouter le registre du miroir et les informations d'authentification, puis enregistrez-le dans un nouveau fichier :

      {\i1}"auths":{\i1}"<local_registry>" : {\i1}"auth" : \N- "<credentials>\N",\N "email\N" : "you@example.com"}}},"<registry>:<port>/<namespace>/":{"auth":"<token>"}}}

      où :

      <local_registry>
      Spécifie le nom de domaine du registre, et éventuellement le port, que votre registre miroir utilise pour servir le contenu.
      auth
      Spécifie le nom d'utilisateur et le mot de passe encodés en base64 pour votre registre miroir.
      <registry>:<port>/<namespace>
      Spécifie les détails du registre du miroir.
      <token>

      Spécifie l'adresse username:password encodée en base64 pour votre registre miroir.

      Par exemple :

      $ {"auths":{"cloud.openshift.com":{"auth":"b3BlbnNoaWZ0Y3UjhGOVZPT0lOMEFaUjdPUzRGTA==","email":"user@example.com"},
      "quay.io":{"auth":"b3BlbnNoaWZ0LXJlbGVhc2UtZGOVZPT0lOMEFaUGSTd4VGVGVUjdPUzRGTA==","email":"user@example.com"},
      "registry.connect.redhat.com"{"auth":"NTE3MTMwNDB8dWhjLTFEZlN3VHkxOSTd4VGVGVU1MdTpleUpoYkdjaUailA==","email":"user@example.com"},
      "registry.redhat.io":{"auth":"NTE3MTMwNDB8dWhjLTFEZlN3VH3BGSTd4VGVGVU1MdTpleUpoYkdjaU9fZw==","email":"user@example.com"},
      "registry.svc.ci.openshift.org":{"auth":"dXNlcjpyWjAwWVFjSEJiT2RKVW1pSmg4dW92dGp1SXRxQ3RGN1pwajJhN1ZXeTRV"},"my-registry:5000/my-namespace/":{"auth":"dXNlcm5hbWU6cGFzc3dvcmQ="}}}