Einrichten der internen Image-Registry für Satellite-Cluster
Satellite
Die interne Registry wird standardmäßig nicht in Ihrem Satellite-Cluster ausgeführt, da für die interne Registry kein Sicherungsspeicher eingerichtet ist. Führen Sie das folgende Lernprogramm aus, um die interne Image-Registry in Ihrem Satellite-Cluster mit IBM Cloud Object Storage als Sicherungsspeicher zu konfigurieren.
In diesem Lernprogramm wird beschrieben, wie Sie die Image-Registry mithilfe von IBM Cloud Object Storageeinrichten können. Sie können jedoch auch nicht persistenten Speicher auf dem Workerknoten verwenden. Weitere Informationen finden Sie unter Images im leeren Verzeichnis des Workerknotens speichern.
IBM Cloud Object Storage-Instanz erstellen, die die Anforderungen erfüllt
- Navigieren Sie in der Konsole IBM Cloud zum Menü Ressourcen und listen Sie Ihre Speicherinstanzen auf.
- Ermitteln Sie Ihre Object Storage-Instanzen und suchen Sie die Spalte Position. Wenn eine Instanz in IBM Clouderstellt wurde, wird ihre Position als Global aufgelistet.
- Wenn Sie keine globale Instanz haben, die die Anforderungen erfüllt, führen Sie die Schritte zum Erstellen einer Instanz aus.
- Klicken Sie in der IBM Cloud Object Storageauf Instanz erstellen.
- Wählen Sie unter Infrastruktur auswählen die Option IBM Cloud aus.
- Wählen Sie einen Preistarif und einen Servicenamen.
- Wählen Sie die Ressourcengruppe aus, in der Ihre Satellite-Komponenten gespeichert sind.
- Klicken Sie auf Erstellen. Beachten Sie, dass es einige Minuten dauern kann, bis Ihre Instanz bereitgestellt ist.
Bucket für Ihre Image-Registry erstellen
Erstellen Sie ein Bucket, das beim Einrichten Ihrer Image-Registry verwendet werden soll. Ihr Bucket muss mit regionaler Ausfallsicherheit konfiguriert sein. Weitere Informationen zum Erstellen von Buckets finden Sie unter IBM Cloud Object Storage.
- Klicken Sie auf Ihre Object Storage-Instanz.
- Klicken Sie auf Bucket erstellen.
- Wählen Sie die Option Bucket anpassen aus.
- Wählen Sie unter Resiliency die Option Regional aus.
- Wählen Sie im Dropdown-Menü Standort die Region aus, die dem Standort am nächsten ist, von dem aus Ihr Standort verwaltet wird. Wenn Ihr Standort beispielsweise über
wdc(Washington DC) verwaltet wird, wählen Sie die Regionus-eastaus. Führen Sieibmcloud sat location lsin der Befehlszeilenschnittstelle aus, um zu überprüfen, von wo aus eine Satellite-Position verwaltet wird. - Wählen Sie unter Speicherklasse die Option Standard aus.
- Konfigurieren Sie die verbleibenden Kategorien entsprechend Ihren Vorgaben.
- Klicken Sie auf Bucket erstellen.
- Erstellen Sie Serviceberechtigungsnachweise, die Ihrem Cluster die Kommunikation mit Ihrer Object Storage-Instanz ermöglichen.
- Klicken Sie im Navigationsfenster auf Serviceberechtigungsnachweise und anschließend auf Neuer Berechtigungsnachweis.
- Geben Sie einen Namen für den neuen Berechtigungsnachweis ein.
- Wählen Sie im Dropdown-Menü die Rolle Schreibberechtigter aus.
- Klicken Sie auf Erweiterte Optionen und wählen Sie dann die Option HMAC-Berechtigungsnachweis einschließen aus.
- Klicken Sie auf Hinzufügen.
- Erweitern Sie in der Tabelle Serviceberechtigungsnachweise Ihren neuen Berechtigungsnachweis. Beachten Sie die
access_key_idund diesecret_access_key_id. Teilen Sie diese Berechtigungsnachweise nicht mit anderen Personen. Beispielberechtigungsnachweise zum Speichern."cos_hmac_keys": { "access_key_id": "1111111a1111111a11aa1a111111111a11aa1a111a11a1a1", "secret_access_key": "222222b222222b22bb2b22222222b22bb2b222b22b2b2" }
Geheimen Schlüssel erstellen, der Ihre COS-Serviceberechtigungsnachweise enthält
Erstellen Sie in der Befehlszeilenschnittstelle einen geheimen Schlüssel mit den Serviceberechtigungsnachweisen, die Sie erstellt und gespeichert haben.
- Melden Sie sich an Ihrem Konto an. If applicable, target the appropriate resource group. Legen Sie den Kontext für den Cluster fest.
- Geheimen Schlüssel erstellen
oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=<access_key_id> --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=<secret_access_key> --namespace openshift-image-registry
Red Hat OpenShift-Registry-Operator-CRDs aktualisieren
- Ändern Sie den Verwaltungsstatus des Operators für die Registrierung von Red Hat OpenShift.
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState":"Managed"}}' - Bearbeiten Sie die Konfigurationsspeicherattribute, um Images in Ihrem Object Storage-Bucket zu speichern.
- Suchen und speichern Sie den regionalen Linkendpunkt Ihrer Satellite-Position. In der Ausgabe wird der Endpunkt in der Spalte Adresse aufgelistet.
Beispielausgabeibmcloud sat endpoint ls --location <location_name> | grep satellite-cosRegionalID Name Destination Type Address cavvku1p1h1gcfgk1kn1_uwokw satellite-cosRegional-cavvku1p1h1gcfgk1kn1 cloud TLS i11aa11a1a1a11a11-1a11a1aaa1a1a1a1a-c000.us-east.satellite.appdomian.cloud:11111 - Öffnen Sie den Dateieditor in der Befehlszeilenschnittstelle.
oc edit configs.imageregistry.operator.openshift.io/cluster - Suchen Sie den folgenden zu bearbeitenden Abschnitt.
storage: emptyDir: {} managementState: Managed storageManaged: true - Ersetzen Sie
emptyDir: {}durch Ihre Bucketinformationen und Standortendpunkte.Beispielabschnitt nach dem Hinzufügen der Bucket-und Positionsinformationen.s3: bucket: <bucket_name> region: <bucket_region> regionEndpoint: <location_link_endpoint> virtualHostedStyle: falsestorage: managementState: Managed s3: bucket: my_bucket region: us-east regionEndpoint: https://i11aa11a1a1a11a11-1a11a1aaa1a1a1a1a-c000.us-east.satellite.appdomian.cloud:11111 virtualHostedStyle: false storageManaged: true - Speichern Sie die Änderungen und wenden Sie sie an.
- Suchen und speichern Sie den regionalen Linkendpunkt Ihrer Satellite-Position. In der Ausgabe wird der Endpunkt in der Spalte Adresse aufgelistet.
Überprüfen Sie Ihre Änderungen
Überprüfen Sie, ob die Image-Registry konfiguriert wurde, indem Sie im Namensbereich openshift-image-registry nach einem Pod suchen, der mit image-registry- beginnt.
-
Führen Sie den folgenden Befehl aus.
oc get pod -n openshift-image-registry -
Überprüfen Sie die Ausgabe und stellen Sie sicher, dass der Registry-Pod
Runningist.Beispielausgabe
NAME READY STATUS RESTARTS AGE image-registry-63p54b8add-vkjju 1/1 Running 0 16m