Dela via


Lägga till eller uppdatera din Red Hat-pullhemlighet i ett Azure Red Hat OpenShift 4-kluster

Den här guiden beskriver hur du lägger till eller uppdaterar din Red Hat-pullhemlighet för ett befintligt Azure Red Hat OpenShift(ARO) 4.x-kluster.

Om du skapar ett kluster för första gången kan du lägga till din pull-hemlighet när du skapar klustret. Mer information om hur du skapar ett ARO-kluster med en Red Hat-pullhemlighet finns i Skapa ett Azure Red Hat OpenShift 4-kluster.

Innan du börjar

Den här guiden förutsätter att du har ett befintligt Azure Red Hat OpenShift 4-kluster. Kontrollera att du har administratörsåtkomst till klustret.

Förbered din pull-hemlighet

När du skapar ett ARO-kluster utan att lägga till en Red Hat-pullhemlighet skapas fortfarande en pull-hemlighet i klustret automatiskt. Den här pull-hemligheten är dock inte helt ifylld.

Det här avsnittet går igenom uppdatering av den pull-hemligheten med ytterligare värden från din Red Hat-pullhemlighet.

  1. Hämta hemligheten openshift-config med namnet pull-secret i namnområdet och spara den i en separat fil genom att köra följande kommando:

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

    Dina utdata bör likna följande. (Observera att det faktiska hemliga värdet har tagits bort.)

    {
        "auths": {
            "arosvc.azurecr.io": {
                "auth": "<my-aroscv.azurecr.io-secret>"
            }
        }
    }
    
  2. Gå till Red Hat OpenShift-klusterhanterarens portal och välj Hämta pull-hemlighet. Din Red Hat pull hemlighet kommer att se ut som följande. (Observera att de faktiska hemliga värdena har tagits bort.)

    {
        "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. Redigera pull-hemlighetsfilen som du fick från klustret genom att lägga till posterna som finns i red hat-pull-hemligheten.

    Viktigt!

    Om du cloud.openshift.com inkluderar posten från din Red Hat-pullhemlighet börjar klustret att börja skicka telemetridata till Red Hat. Inkludera endast det här avsnittet om du vill skicka telemetridata. Annars lämnar du följande avsnitt ute.

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

    Varning

    Ta inte bort eller ändra att du är arosvc.azurecr.io posten från din pull-hemlighet. Det här avsnittet behövs för att klustret ska fungera korrekt.

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

    Den slutliga filen bör se ut så här. (Observera att de faktiska hemliga värdena har tagits bort.)

    {
        "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. Kontrollera att filen är giltig JSON. Det finns många sätt att verifiera din JSON. I följande exempel används jq:

    cat pull-secret.json | jq
    

    Kommentar

    Om ett fel finns i filen visas det som parse error.

Lägg till din pull-hemlighet i klustret

Kör följande kommando för att uppdatera din pull-hemlighet.

Kommentar

Om du kör det här kommandot i ARO 4.9 eller äldre startas klusternoderna om en i taget när de uppdateras. I ARO 4.10-versionen eller senare utlöses ingen omstart.

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

Kontrollera att pull-hemligheten är på plats

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

När hemligheten har angetts är du redo att aktivera Red Hat Certified Operators.

Ändra konfigurationsfilerna

Ändra följande objekt för att aktivera Red Hat-operatorer.

Ändra först konfigurationsfilen Exempeloperator. Sedan kan du köra följande kommando för att redigera konfigurationsfilen:

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

Ändra värdet spec.managementState från Removed till Managed.

Följande YAML-kodfragment visar endast relevanta avsnitt i den redigerade YAML-filen:

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

För det andra kör du följande kommando för att redigera konfigurationsfilen för Operator Hub:

oc edit operatorhub cluster -o yaml

Ändra värdet Spec.Sources.Disabled från true till false för alla källor som du vill aktivera.

Följande YAML-kodfragment visar endast relevanta avsnitt i den redigerade YAML-filen:

Name:         cluster

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

Spara filen för att tillämpa dina redigeringar.

Kontrollera att hemligheten fungerar

När du har lagt till pull-hemligheten och modifierat rätt konfigurationsfiler kan det ta flera minuter att uppdatera klustret. Kontrollera att klustret har uppdaterats genom att köra följande kommando för att visa tillgängliga källor för certifierade operatorer och Red Hat-operatorer:

$ 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

Om du inte ser de certifierade operatorerna och Red Hat-operatorerna väntar du några minuter och försöker igen.

För att säkerställa att din pull-hemlighet har uppdaterats och fungerar korrekt öppnar du OperatorHub och söker efter en Red Hat-verifierad operatör. Kontrollera till exempel om containerlagringsoperatören OpenShift är tillgänglig och se om du har behörighet att installera.

Nästa steg

Mer information om Red Hat-pullhemligheter finns i Använda hämtningshemligheter för bilder.

Mer information om Red Hat OpenShift 4 finns i Dokumentation om Red Hat OpenShift Container Platform.