Přidání nebo aktualizace tajného kódu pro přijetí změn z Red Hatu v clusteru Azure Red Hat OpenShift 4

Tato příručka popisuje přidání nebo aktualizaci tajného kódu pro vyžádání obsahu Red Hat pro existující cluster Azure Red Hat OpenShift (ARO) 4.x.

Pokud cluster vytváříte poprvé, můžete při vytváření clusteru přidat tajný kód pro přijetí změn. Další informace o vytvoření clusteru ARO s tajným kódem pro přijetí změn Red Hat najdete v tématu Vytvoření clusteru Azure Red Hat OpenShift 4.

Než začnete

V této příručce se předpokládá, že máte existující cluster Azure Red Hat OpenShift 4. Ujistěte se, že máte ke clusteru přístup správce.

Příprava tajného kódu pro přijetí změn

Když vytvoříte cluster ARO bez přidání tajného kódu pro vyžádání změn Red Hatu, tajný kód pro vyžádání změn se v clusteru vytvoří automaticky. Tento tajný kód pro přijetí změn ale není plně naplněný.

Tato část vás provede aktualizací tohoto tajného kódu s dalšími hodnotami z tajného kódu pro přijetí změn z Red Hatu.

  1. Načtěte tajný kód pojmenovaný pull-secret v openshift-config oboru názvů a uložte ho do samostatného souboru spuštěním následujícího příkazu:

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

    Výstup by měl být podobný následujícímu. (Všimněte si, že skutečná hodnota tajného kódu byla odebrána.)

    {
        "auths": {
            "arosvc.azurecr.io": {
                "auth": "<my-aroscv.azurecr.io-secret>"
            }
        }
    }
    
  2. Přejděte na portál správce clusteru Red Hat OpenShift a vyberte Stáhnout tajný kód pro přijetí změn. Váš tajný kód pro přijetí změn z Red Hatu bude vypadat následovně. (Všimněte si, že skutečné tajné hodnoty byly odebrány.)

    {
        "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. Upravte soubor tajného kódu pro vyžádání změn, který jste získali z clusteru, přidáním položek nalezených v tajném kódu pro přijetí změn z Red Hatu.

    Důležité

    Zahrnutím položky z tajného cloud.openshift.com kódu pro přijetí změn z Red Hatu začne cluster odesílat telemetrická data do Red Hatu. Tuto část zahrňte jenom v případě, že chcete odesílat telemetrická data. V opačném případě ponechte následující část.

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

    Upozornění

    Neodstraňujte ani neměníte záznam ze svého tajného arosvc.azurecr.io kódu pro přijetí změn. Tato část je potřebná pro správné fungování clusteru.

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

    Konečný soubor by měl vypadat takto. (Všimněte si, že skutečné tajné hodnoty byly odebrány.)

    {
        "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. Ujistěte se, že soubor je platný ve formátu JSON. Existuje mnoho způsobů, jak ověřit JSON. Následující příklad používá jq:

    cat pull-secret.json | jq
    

    Poznámka:

    Pokud je v souboru chyba, zobrazí se jako parse error.

Přidání tajného kódu pro přijetí změn do clusteru

Spuštěním následujícího příkazu aktualizujte tajný klíč pro přijetí změn.

Poznámka:

Spuštěním tohoto příkazu v ARO 4.9 nebo starším způsobíte, že se uzly clusteru při aktualizaci restartují o jeden po druhém. Ve verzi ARO 4.10 nebo novější se restartování neaktivuje.

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

Ověření, že je tajný klíč pro přijetí změn zavedený

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

Po nastavení tajného kódu můžete povolit certifikované operátory Red Hat.

Úprava konfiguračních souborů

Upravte následující objekty tak, aby povolte operátory Red Hat.

Nejprve upravte konfigurační soubor Operátor ukázek. Potom můžete spuštěním následujícího příkazu upravit konfigurační soubor:

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

spec.managementState Změňte hodnotu z Removed na Managed.

Následující fragment kódu YAML zobrazuje pouze relevantní části upraveného souboru YAML:

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

Za druhé spuštěním následujícího příkazu upravte konfigurační soubor Centra operátorů:

oc edit operatorhub cluster -o yaml

Spec.Sources.Disabled Změňte hodnotu z true hodnoty na false všechny zdroje, které chcete povolit.

Následující fragment kódu YAML zobrazuje pouze relevantní části upraveného souboru YAML:

Name:         cluster

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

Uložte soubor, aby se použily úpravy.

Ověřte, že váš tajný kód funguje.

Po přidání tajného kódu pro přijetí změn a úpravě správných konfiguračních souborů může aktualizace clusteru trvat několik minut. Pokud chcete zkontrolovat, jestli je cluster aktualizovaný, spusťte následující příkaz a zobrazte dostupné zdroje certifikovaných operátorů a operátorů Red Hat:

$ 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

Pokud se certifikované operátory a operátory Red Hat Operators nezobrazují, počkejte několik minut a zkuste to znovu.

Pokud chcete zajistit, aby byl váš tajný kód pro přijetí změn aktualizován a správně fungoval, otevřete OperatorHub a zkontrolujte všechny ověřené operátory Red Hat. Zkontrolujte například, jestli je k dispozici operátor úložiště kontejnerů OpenShift, a zjistěte, jestli máte oprávnění k instalaci.

Další kroky

Další informace o tajných kódech pro přijetí změn z Red Hatu najdete v tématu Použití tajných kódů pro vyžádání obrázků.

Další informace o Red Hat OpenShiftu 4 najdete v dokumentaci ke kontejnerové platformě Red Hat OpenShift.