Auf dieser Seite wird beschrieben, wie Sie Ihre Systemartefakte in einer GDC-Appliance (Google Distributed Cloud) mit Air Gap ändern.
Systemartefakte in GDC ändern, um die Bereitstellung zu verwalten und zu optimieren.
Hinweise
Wenn Sie Systemartefakte ändern möchten, benötigen Sie Diagnosezugriff und Zugriff auf die erforderlichen Identitäts- und Zugriffsrollen:
- Der Diagnosezugriff ist ein privilegierter Zugriffsmodus, der erforderlich ist, um einen Kunden bei einem Problem sicher zu unterstützen. Sie müssen ein Ticket erstellen, um diesen Zugriff zu erhalten.
- System Artifact Registry Debugger: hat Lese- und Schreibzugriff auf alle Harbor-Ressourcen. Bitten Sie Ihren Sicherheitsadministrator, Ihnen die Clusterrolle „System Artifact Registry Debugger“ (sar-debugger) zuzuweisen.
- System Artifact Registry-Secret „harbor-system“ Debugger: Hat Debugger-Zugriff im Namespace harbor-system. Bitten Sie Ihren Sicherheitsadministrator, Ihnen die Rolle „System Artifact Registry harbor-system secret Debugger“ (sar-harbor-system-secret-debugger) zuzuweisen.
Docker-Images hochladen
Wenn Sie Systemartefakte ändern möchten, müssen Sie neue Docker-Images hochladen. Die Uploadmethode hängt davon ab, in welche der folgenden beiden Registries Sie Ihre Container-Images übertragen:
- Container-Images in Artifact Registry auf dem Bootstrap-Computer hochladen
- Laden Sie Container-Images in Artifact Registry im Infrastrukturcluster der Organisation hoch.
In den folgenden Abschnitten finden Sie die Uploadanleitung für die beiden Registrierungstypen.
Container-Image auf der Bootstrap-Maschine hochladen
So laden Sie Container-Images auf dem Bootstrap-Computer in Artifact Registry hoch:
- Achten Sie darauf, dass Sie das geänderte Docker-Image mit den behobenen Problemen haben. 
- Übertragen Sie das neue Image auf den Bootstrap-Knoten in Ihrer GDC-Umgebung. 
- Melden Sie sich auf dem Bootstrap-Knoten an. 
- Suchen Sie die Adresse der Artifact Registry auf der Bootstrap-Maschine zur Bootstrap-Zeit und legen Sie sie als Umgebungsvariable - REGISTRY_IPfest:- REGISTRY=$(kubectl get harborcluster harbor -n harbor-system -o=jsonpath='{.spec.externalURL}') REGISTRY_IP=${REGISTRY#https://}
- Rufen Sie die Anmeldedaten für den Zugriff auf Artifact Registry ab. Rufen Sie das Administratorkonto und das Passwort ab: - ADMIN_PASS=$(kubectl -n harbor-system get secret harbor-admin \ -o jsonpath="{.data.secret}" | base64 -d)
- Melden Sie sich bei Artifact Registry an: - docker login $REGISTRY_IP -u admin -p $ADMIN_PASS- Eine - Login Succeeded-Meldung wird ausgegeben, um einen erfolgreichen Login in Artifact Registry zu bestätigen.
- Taggen Sie das neue Bild: - docker image tag CONTAINER_IMAGE_URL \ $REGISTRY_IP/PROJECT_NAME/IMAGE_NAME:TAG- Ersetzen Sie Folgendes: - CONTAINER_IMAGE_URL: Die lokale Container-Image-URL, z. B.- gcr.io/repository/image:tag.
- PROJECT_NAME: der Artifact Registry-Projektname.
- IMAGE_NAME: der Name des Container-Images.
- TAG: das Container-Image-Tag.
 
- Übertragen Sie das neue Image per Push in Artifact Registry: - docker image push $REGISTRY_IP/PROJECT_NAME/IMAGE_NAME:TAG
Container-Image in den Infrastrukturcluster der Organisation hochladen
So laden Sie Container-Images in die Artifact Registry in einem Cluster mit Organisationsinfrastruktur hoch:
- Achten Sie darauf, dass Sie das geänderte Docker-Image mit den behobenen Problemen haben. 
- Übertragen Sie das neue Image auf einen Knoten mit Root-Zugriff mit einer Root- - kubeconfig-Datei für den Organisationsinfrastrukturcluster in Ihrer Air-Gap-Umgebung.
- Exportieren Sie den Pfad des Organisationsinfrastrukturclusters - kubeconfigals Umgebungsvariable:- export ORG_INFRA_KUBECONFIG=KUBECONFIG_FILE_PATH- Ersetzen Sie - KUBECONFIG_FILE_PATHdurch den Pfad zur Datei- kubeconfig.
- Suchen Sie die In-Cluster-Adresse von Artifact Registry und legen Sie sie als Umgebungsvariable - REGISTRY_IPfest:- REGISTRY=$(kubectl --kubeconfig $ORG_INFRA_KUBECONFIG get harborcluster / harbor -n harbor-system -o=jsonpath='{.spec.externalURL}') REGISTRY_IP=${REGISTRY#https://}
- Achten Sie darauf, dass - REGISTRY_IPeine gültige URL wie- 10.200.0.36:10443enthält:- echo ${REGISTRY_IP}
- Prüfen Sie, ob das CA-Zertifikat vorhanden ist: - ls -al /etc/docker/certs.d/${REGISTRY_IP}/ca.crt- Wenn das Zertifikat nicht vorhanden ist, erstellen und konfigurieren Sie es: - mkdir -p /etc/docker/certs.d/${REGISTRY_IP}/ chmod 755 /etc/docker/certs.d/${REGISTRY_IP}/ echo $(kubectl get secret harbor-cert-secret -n istio-system -o jsonpath='{.data.ca\.crt}' --kubeconfig $ORG_INFRA_KUBECONFIG) | openssl base64 -A -d > /etc/docker/certs.d/${REGISTRY_IP}/ca.crt chmod 755 /etc/docker/certs.d/${REGISTRY_IP}/ca.crt
- Rufen Sie die Anmeldedaten für den Zugriff auf Artifact Registry ab. Verwenden Sie den folgenden Befehl, um das Administratorkonto und das Passwort abzurufen: - ADMIN_PASS=$(kubectl --kubeconfig $ORG_INFRA_KUBECONFIG \ -n harbor-system get secret harbor-admin \ -o jsonpath="{.data.secret}" | base64 -d)
- Melden Sie sich bei Artifact Registry an: - docker login $REGISTRY_IP -u admin -p $ADMIN_PASS- Eine - Login Succeeded-Meldung wird ausgegeben, um einen erfolgreichen Login in Artifact Registry zu bestätigen.
- Taggen Sie das neue Bild: - docker image tag CONTAINER_IMAGE_URL \ $REGISTRY_IP/PROJECT_NAME/IMAGE_NAME:TAG- Ersetzen Sie Folgendes: - CONTAINER_IMAGE_URL: Die lokale Container-Image-URL, z. B.- gcr.io/repository/image:tag.
- PROJECT_NAME: der Artifact Registry-Projektname.
- IMAGE_NAME: der Name des Container-Images.
- TAG: das Container-Image-Tag.
 
- Übertragen Sie das neue Image per Push in Artifact Registry: - docker image push $REGISTRY_IP/PROJECT_NAME/IMAGE_NAME:TAG
Systemartefakte ändern
Mit den gdcloud artifacts-Befehlen können Sie Systemartefakte in GDC ändern. Sie können Ihre Bereitstellung aktualisieren, anpassen und schützen, indem Sie beispielsweise Softwarepakete ersetzen, Konfigurationen anpassen und Patches anwenden.
Führen Sie folgende Aktionen durch:
- apt-Pakete verwalten.
- Bilder aus OCI-Paketen erstellen und extrahieren.
- Verfügbare Versionen des OCI-Root-Images auflisten
- Vorhandene Pakete patchen
- OCI-Pakete in eine Registry hoch- und aus einer Registry herunterladen.
- Die Struktur eines OCI-Bundles anzeigen.
- OCI-Bundles entpacken
Weitere Informationen finden Sie unter gdcloud artifacts.