In diesem Thema wird beschrieben, wie Sie eine private Harbor-Image-Registrierung aus einer heruntergeladenen OVA-Datei installieren, um die Images bereitzustellen, die für die Bereitstellung von Tanzu Kubernetes Grid (TKG) in einer Offline-vSphere-Umgebung erforderlich sind. Die resultierende Harbor-Registrierung wird zusammen mit und getrennt von TKG ausgeführt, um von TKG verwendete Komponenten-Images zu speichern und zu verwalten.
Diese VM-basierte Harbor-Bereitstellung wird nur für das Hosten von TKG-System-Images in einer Umgebung mit Internetbeschränkungen oder einer AirGap-Umgebung unterstützt. Zum Bereitstellen einer skalierbaren und hochverfügbaren Harbor-Instanz, die eine große Anzahl an Images für gehostete Apps in einer Produktionsumgebung verwalten kann, stellen Sie das Harbor-Paket für TKG-Cluster bereit (siehe Beschreibung unter Installieren von Harbor für die Dienstregistrierung in Erstellen und Verwalten von TKG 2.2-Arbeitslastclustern mit der Tanzu CLI).
HinweisNotary und Chartmuseum sind in Harbor v2.6 veraltet und werden in einer zukünftigen Version entfernt, wie in den Versionshinweisen zu Harbor v2.6.0 beschrieben. Benutzer sollten zur Containersignierung und -überprüfung zu Sigstore Cosign wechseln.
ca.crt
, server.crt
und server.key
So stellen Sie Harbor über eine OVA-Datei bereit:
Klicken Sie in vCenter mit der rechten Maustaste auf einen vSphere-Cluster und wählen Sie OVF-Vorlage bereitstellen… (Deploy OVF Template) aus.
Das Fenster OVF-Vorlage bereitstellen (Deploy OVF Template) wird angezeigt. Wählen Sie Lokale Datei (Local File) und navigieren Sie zum Speicherort der heruntergeladenen Harbor-OVA-Datei.
Klicken Sie unten rechts auf WEITER (NEXT). Eine Reihe von Konfigurationsfenstern wird angezeigt.
Überprüfung der Quelle (Source Verification): Klicken Sie auf JA (YES).
Name der virtuellen Maschine (Virtual machine name): Geben Sie einen Namen für die virtuelle Maschine ein, die die Harbor-Instanz ausführt. Klicken Sie auf JA (NEXT).
Computing-Ressource auswählen (Select a compute resource): Behalten Sie die Standardauswahl bei und klicken Sie auf WEITER (NEXT).
Dieser Schritt kann einige Minuten dauern, während vSphere die OVF-Vorlage herunterlädt und rendert.
Details überprüfen (Review details): Klicken Sie auf JA (NEXT).
Lizenzvereinbarungen (License agreements): Akzeptieren Sie die Lizenzbedingungen und klicken Sie auf WEITER (NEXT).
Speicher auswählen (Select storage): Wählen Sie vsanDatastore und klicken Sie auf WEITER (NEXT).
Netzwerke auswählen (Select networks): Wählen Sie das standardmäßige VM-Netzwerk (VM Network) aus und klicken Sie auf WEITER (NEXT).
Vorlage anpassen (Customize template) > VM-Anmeldedaten (VM Credentials):
Root-Kennwort (Root Password) (erforderlich): Ihr bevorzugtes Kennwort für das Benutzerkonto root
auf der VM. Es muss 8 bis 128 Zeichen lang sein.
SSH über Root zulassen (Allow SSH via Root): Lassen Sie die Standardeinstellung aktiviert, um ssh
Zugriff auf die VM als root
-Benutzer zu ermöglichen.
Vorlage anpassen (Customize template) > Harbor-Konfigurationen (Harbor Configurations):
Hostname (optional): Sofern angegeben, wird der Harbor-Hostname als FQDN verwendet, z. B. yourdomain.com
. Er kann keine IP-Adresse oder localhost
sein.
Wenn Sie Hostname angeben, enthält die SAN-Eigenschaft (Subject Alt Names) nur die DNS-Informationen. Es werden keine IP-Informationen bereitgestellt.
Wenn Sie Hostname nicht angeben, enthält die SAN-Eigenschaft nur die IP-Informationen. Es werden keine DNS-Informationen bereitgestellt.
Administratorkennwort (Administrator Password) (erforderlich): Kennwort für Harbor-Benutzer admin
. Wird von Administratoren für den Zugriff auf die Harbor-Benutzeroberfläche und von Clientcontainern zum Abrufen und Weitergeben von Images verwendet. Es muss zwischen 8 und 128 Zeichen enthalten.
Kennwort der Harbor-Datenbank (Harbor Database Password): Kennwort für die interne Harbor-Datenbank. Wenn angegeben, muss es zwischen 8 und 128 Zeichen umfassen.
Harbor-Standardscanner aktivieren (Enable Harbor Default Scanner): Aktivieren Sie diese Option, um den Trivy-Scanner zu installieren und ihn zum Prüfen von Images zu aktivieren, während sie auf Harbor hochgeladen werden.
Selbstsigniertes Zertifikat für Harbor verwenden (Use Self-signed Certificate For Harbor):
Aktivieren Sie diese Option, um selbstsignierte Zertifikate zu verwenden, und lassen Sie CA-Zertifikat (CA Certificate), Serverzertifikat (Server Certificate) und Serverschlüssel (Server Key) leer.
Deaktivieren Sie andernfalls Selbstsigniertes Zertifikat für Harbor verwenden (Use Self-signed Certificate For Harbor) und fügen Sie mehrzeilige Dateiinhalte für CA-Zertifikat, Serverzertifikat (Server Certificate) und Serverschlüssel (Server Key) ein. Wenn Sie sie in das Formular einfügen, werden die mehrzeiligen Werte in eine einzeilige Zeichenfolge mit Leerzeichen als Trennzeichen umgewandelt.
Vorlagen anpassen (Customize template) > Netzwerkkonfigurationen (Networking Configurations):
IP-Adresse (IP Address), Netzmaske (Netmask) und Gateway: Eine statische IP-Adresse, Netzmaske und ein Gateway für eth0
, sofern vorhanden.
DNS, DNS-Domäne (DNS Domain): DNS-Server und Domäne für die Harbor-VM.
Bereit zum Abschließen (Ready to complete): Überprüfen Sie die Konfiguration und klicken Sie auf FERTIGSTELLEN (FINISH).
Bei der ersten Bereitstellung einer Harbor-OVA benötigt Harbor einige Minuten, um Docker-Images zu laden.
Um den Prozess zu überwachen und zu bestätigen, dass er voranschreitet, stellen Sie eine ssh
-Verbindung mit der VM her und führen Sie Folgendes aus:
watch docker ps
Wenn Harbor nach etwa 5 Minuten nicht ausgeführt wird, rufen Sie die Protokolldatei auf der VM zum Debuggen ab:
cd /etc/goharbor/harbor && ./harbor-support.sh --include-private
Suchen und entpacken Sie die Protokolldatei. Sie hat beispielsweise einen Namen wie /storage/log/harbor_appliance_logs_2022-11-30T09-39-12Z.tar.gz
Wenn Error: Unable to retrieve manifest or certificate file
wie unten angegeben angezeigt wird, versuchen Sie einfach, die Harbor-OVA erneut bereitzustellen.
Sie können die Proxy-Cache-Funktion von Harbor nicht verwenden, um Tanzu Kubernetes Grid v2.2 in einer Umgebung mit Internetbeschränkungen auszuführen. Sie können weiterhin einen Harbor-Proxy-Cache verwenden, um Images aus früheren Versionen von Tanzu Kubernetes Grid und Nicht-Tanzu-Images wie Anwendungs-Images zu übermitteln.
Wenn Sie das root
-Kennwort verloren haben, können Sie es mit dem Verfahren unter Wiederherstellen eines verlorenen Root-Kennworts wiederherstellen.
Eine über eine OVA bereitgestellte Harbor-Instanz verfügt über zwei Festplatten:
/storage
.Wenn Sie die Größe der Harbor-Datenfestplatte erhöhen müssen, um Anforderungen zu erfüllen, müssen Sie die Harbor-VM vorübergehend ausschalten, während Sie die Einstellungen ändern. Wenn die VM über eine dynamische IP-Adresse verfügt, sind für den Neustart der VM zusätzliche Schritte erforderlich, wie unten beschrieben.
So erweitern Sie die Datenfestplatte Ihrer Harbor-Instanz:
Klicken Sie in vSphere in der Ansicht Hosts und Cluster (Hosts and Clusters) mit der rechten Maustaste auf die Harbor-OVA-VM und wählen Sie Stromversorgung (Power) > Ausschalten (Power Off) aus:
Klicken Sie erneut mit der rechten Maustaste auf die Harbor-OVA-VM und wählen Sie Einstellungen bearbeiten (Edit Settings) aus:
Das Fenster Einstellungen bearbeiten (Edit Settings) wird geöffnet. Erhöhen Sie unter Virtuelle Hardware (Virtual Hardware) die Einstellung Festplatte 2 (Hard disk 2) auf eine von Ihnen bevorzugte Kapazität. Klicken Sie auf OK.
Klicken Sie erneut mit der rechten Maustaste auf die Harbor-OVA-VM und wählen Sie Stromversorgung (Power) > Einschalten (Power on) aus, um die VM neu zu starten.
Da Sie die Harbor-VM neu gestartet haben, müssen Sie je nach Konfiguration der Hostadresse der VM möglicherweise weitere Schritte durchführen:
Statische IP-Adresse: Keine zusätzlichen Schritte.
Dynamische IP-Adresse: Wenn sich die IP-Adresse der Harbor-VM geändert hat:
FQDN: Wenn sich die IP-Adresse der Harbor-VM geändert hat, aktualisieren Sie deren Adresse in der Datei /etc/hosts
der VM oder im DNS-Datensatz.
Wenn sich die IP-Adresse der Harbor-VM geändert hat, rotieren Sie ihr Zertifikat:
Melden Sie sich mit ssh
bei der VM an.
Beenden Sie den Harbor-Dienst:
systemctl stop harbor
Sichern Sie die Dateien server.crt
, server.key
, ca.crt
des alten Zertifikats, indem Sie sie verschieben oder umbenennen:
server.crt
befindet sich in /storage/data/secret/cert/server.crt
server.key
befindet sich in /storage/data/secret/cert/server.key
ca.crt
befindet sich in /storage/data/ca_download/ca.crt
Speichern Sie die Dateien server.crt
, server.key
, ca.crt
des neuen Zertifikats unter den oben genannten Speicherorten und legen Sie die Zuständigkeit und die Berechtigungen für die Dateien auf die gleichen Einstellungen wie bei den alten Dateien fest.
Starten Sie den Harbor-Dienst:
systemctl start harbor
Nachdem Sie diese Harbor-Registrierung zur Bereitstellung eines Verwaltungsclusters in einer Umgebungen mit Internetbeschränkungen verwendet haben, können Sie TKG-Arbeitslastcluster aktivieren, um Harbor auf zwei Arten zu verwenden:
Verwenden Sie die externe Harbor-Registrierung. Wenn diese Registrierung ein vertrauenswürdiges CA-Zertifikat verwendet, sind die Verbindungen zwischen Arbeitslastclustern und der Registrierung sicher. Wenn Ihre zentrale Registrierung selbstsignierte Zertifikate verwendet, können Sie TKG_CUSTOM_IMAGE_REPOSITORY_SKIP_TLS_VERIFY
deaktivieren und die Option TKG_CUSTOM_IMAGE_REPOSITORY_CA_CERTIFICATE
angeben. Wenn Sie diese Option festlegen, werden Ihre selbstsignierten Zertifikate automatisch in Ihre Arbeitslastcluster eingefügt.
Stellen Sie eine zweite Instanz von Harbor als gemeinsam genutzten Dienst innerhalb von TKG bereit. VMware empfiehlt die Bereitstellung des Harbor-Pakets als gemeinsam genutzten Dienst, der von TKG verwaltet wird. Weitere Informationen finden Sie unter Installieren von Harbor für die Dienstregistrierung.
In Infrastrukturen mit Lastausgleich empfiehlt VMware die Installation des externen DNS-Paketdiensts neben dem Harbor-Dienst, wie unter Harbor-Registrierung und ExternalDNS beschrieben.