Freigeben über


Hinzufügen oder Aktualisieren Ihres Red Hat-Pullgeheimnisses für einen Azure Red Hat OpenShift 4-Cluster

In diesem Leitfaden wird beschrieben, wie Sie Ihr Red Hat-Pullgeheimnis für einen vorhandenen Azure Red Hat OpenShift (ARO) 4.x-Cluster hinzufügen oder aktualisieren.

Beim erstmaligen Erstellen eines Clusters können Sie Ihr Pullgeheimnis hinzufügen. Weitere Informationen zum Erstellen eines ARO-Clusters mit einem Red Hat-Pullgeheimnis finden Sie unter Erstellen eines Azure Red Hat OpenShift 4-Clusters.

Voraussetzungen

In diesem Leitfaden wird davon ausgegangen, dass Sie über einen Azure Red Hat OpenShift 4-Cluster verfügen. Vergewissern Sie sich, dass Sie Administratorzugriff auf den Cluster haben.

Vorbereiten des Pullgeheimnisses

Wenn Sie einen ARO-Cluster erstellen, ohne ein Red Hat-Pullgeheimnis hinzuzufügen, wird trotzdem automatisch ein Pullgeheimnis für Ihren Cluster erstellt. Dieses Pullgeheimnis ist jedoch nicht vollständig aufgefüllt.

In diesem Abschnitt wird Schritt für Schritt erläutert, wie Sie dieses Pullgeheimnis mit zusätzlichen Werten aus Ihrem Red Hat-Pullgeheimnis aktualisieren.

  1. Rufen Sie das Geheimnis mit dem Namen pull-secret im Namespace openshift-config ab, und speichern Sie es in einer separaten Datei, indem Sie den folgenden Befehl ausführen:

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

    Die Ausgabe sollte in etwa wie folgt aussehen. (Beachten Sie, dass der tatsächliche geheime Wert entfernt wurde.)

    {
        "auths": {
            "arosvc.azurecr.io": {
                "auth": "<my-aroscv.azurecr.io-secret>"
            }
        }
    }
    
  2. Navigieren Sie zum Manager-Portal für Ihren Red Hat OpenShift-Cluster, und wählen Sie Download pull secret (Pullgeheimnis herunterladen) aus. Ihr Red Hat-Pullgeheimnis sieht wie folgt aus. (Beachten Sie, dass die tatsächlichen geheimen Werte entfernt wurde.)

    {
        "auths": {
            "cloud.openshift.com": {
                "auth": "<my-crc-secret>",
                "email": "klamenzo@redhat.com"
            },
            "quay.io": {
                "auth": "<my-quayio-secret>",
                "email": "klamenzo@redhat.com"
            },
            "registry.connect.redhat.com": {
                "auth": "<my-registry.connect.redhat.com-secret>",
                "email": "klamenzo@redhat.com"
            },
            "registry.redhat.io": {
                "auth": "<my-registry.redhat.io-secret>",
                "email": "klamenzo@redhat.com"
            }
        }
    }
    
  3. Bearbeiten Sie die Pullgeheimnisdatei, die Sie aus Ihrem Cluster abgerufen haben, indem Sie die Einträge aus Ihrem Red Hat-Pullgeheimnis hinzufügen.

    Wichtig

    Wenn Sie den Eintrag cloud.openshift.com aus Ihrem Red Hat-Pullgeheimnis hinzufügen, beginnt Ihr Cluster, Telemetriedaten an Red Hat zu senden. Schließen Sie diesen Abschnitt nur ein, wenn Sie Telemetriedaten senden möchten. Andernfalls lassen Sie den folgenden Abschnitt aus.

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

    Achtung

    Entfernen oder ändern Sie nicht den Eintrag arosvc.azurecr.io in Ihrem Pullgeheimnis. Dieser Abschnitt ist für die korrekte Funktion Ihres Clusters erforderlich.

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

    Ihre endgültige Datei sollte folgendermaßen aussehen. (Beachten Sie, dass die tatsächlichen geheimen Werte entfernt wurde.)

    {
        "auths": {
            "cloud.openshift.com": {
                "auth": "<my-crc-secret>",
                "email": "klamenzo@redhat.com"
            },
            "quay.io": {
                "auth": "<my-quayio-secret>",
                "email": "klamenzo@redhat.com"
            },
            "registry.connect.redhat.com": {
                "auth": "<my-registry.connect.redhat.com-secret>",
                "email": "klamenzo@redhat.com"
            },
            "registry.redhat.io": {
                "auth": "<my-registry.redhat.io-secret>",
                "email": "klamenzo@redhat.com"
            },
            "arosvc.azurecr.io": {
                "auth": "<my-aroscv.azurecr.io-secret>"
            }
        }
    }
    
  4. Stellen Sie sicher, dass Ihre JSON-Datei gültig ist. Es gibt viele Möglichkeiten, die JSON-Datei zu überprüfen. Im folgenden Beispiel wird jq verwendet:

    cat pull-secret.json | jq
    

    Hinweis

    Wenn ein Fehler in der Datei vorliegt, wird parse error angezeigt.

Hinzufügen Ihres Pullgeheimnisses zum Cluster

Führen Sie den folgenden Befehl aus, um Ihr Pullgeheimnis zu aktualisieren.

Hinweis

Unter ARO 4.9 oder älter werden durch die Ausführung dieses Befehls Ihre Clusterknoten aktualisiert und nacheinander neu gestartet. Unter ARO 4.10 oder höher wird kein Neustart ausgelöst.

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

Überprüfen, ob Pullgeheimnis vorhanden ist

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

Nachdem das Geheimnis festgelegt wurde, können Sie Red Hat-zertifizierte Operatoren aktivieren.

Ändern der Konfigurationsdateien

Ändern Sie die folgenden Objekte, um Red Hat-Operatoren zu aktivieren.

Ändern Sie zuerst die Samples Operator-Konfigurationsdatei. Anschließend können Sie den folgenden Befehl ausführen, um die Konfigurationsdatei zu bearbeiten:

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

Ändern Sie den Wert von spec.managementState von Removed in Managed.

Der folgende YAML-Codeausschnitt zeigt nur die relevanten Abschnitte der bearbeiteten YAML-Datei:

apiVersion: samples.operator.openshift.io/v1
kind: Config
metadata:
  
  ...
  
spec:
  architectures:
  - x86_64
  managementState: Managed

Führen Sie als Nächstes den folgenden Befehl aus, um die OperatorHub-Konfigurationsdatei zu bearbeiten:

oc edit operatorhub cluster -o yaml

Ändern Sie den Wert Spec.Sources.Disabled von true bis false für alle Quellen, die Sie aktivieren möchten.

Der folgende YAML-Codeausschnitt zeigt nur die relevanten Abschnitte der bearbeiteten YAML-Datei:

Name:         cluster

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

Speichern Sie die Datei, um Ihre Änderungen anzuwenden.

Überprüfen, ob Ihr Geheimnis funktioniert

Nachdem Sie Ihr Pullgeheimnis hinzugefügt und die richtigen Konfigurationsdateien geändert haben, kann es einige Minuten dauern, bis Ihr Cluster aktualisiert wird. Um zu überprüfen, ob der Cluster aktualisiert wurde, zeigen Sie mit dem folgenden Befehl die verfügbaren Quellen für zertifizierte Operatoren und Red Hat-Operatoren an:

$ 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

Wenn die zertifizierten Operatoren und Red Hat-Operatoren nicht angezeigt werden, warten Sie einige Minuten, und versuchen Sie es dann nochmal.

Um sicherzustellen, dass Ihr Pullgeheimnis aktualisiert wurde und korrekt funktioniert, öffnen Sie OperatorHub, und überprüfen Sie, ob von Red Hat verifizierte Operatoren angezeigt werden. Überprüfen Sie beispielsweise, ob der Operator „OpenShift Container Storage“ verfügbar ist und Sie berechtigt sind, ihn zu installieren.

Nächste Schritte

Weitere Informationen zu Red Hat-Pullgeheimnissen finden Sie unter Verwenden von Imagepullgeheimnissen.

Weitere Informationen zu Red Hat OpenShift 4 finden Sie in der Dokumentation zu Red Hat OpenShift Container Platform.