Si vous utilisez le registre Harbor intégré avec votre Superviseur, vous pouvez migrer les images du registre intégré vers le registre Harbor que vous avez installé en tant que Service de superviseur.
Conditions préalables
- Vérifiez que les Services de superviseur Contour et Harbor sont installés sur le Superviseur.
- Vérifiez que le DNS que vous utilisez avec votre Superviseur inclut une entrée du nom de domaine complet Harbor mappée à l'adresse IP d'entrée du service Envoy.
- Vérifiez que la confiance est établie entre le Superviseur et Harbor. Si des images sont référencées par des clusters Tanzu Kubernetes Grid qui s'exécutent sur des Superviseurs différents de ceux sur lequel Harbor s'exécute, vérifiez qu'il existe une relation d'approbation entre ces clusters Tanzu Kubernetes Grid et Harbor.
Procédure
- Connectez-vous au Superviseur en tant qu'utilisateur vCenter Single Sign-On.
- Configurez la sortie d'accès réseau au Service de superviseur Harbor.
- Créez une CRD de stratégie réseau nommée allow-all-egress-harbor-supervisor-service sur l'espace de noms de service de Harbor, qui peut être nommé svc-harbor-domain-c9, par exemple.
apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: allow-all-egress-harbor-supervisor-service namespace: svc-harbor-domain-c9 spec: podSelector: matchLabels: app: harbor egress: - {}
- Créez une CRD de stratégie réseau nommée allow-all-egress-harbor-supervisor-service sur l'espace de noms de service de Harbor, qui peut être nommé svc-harbor-domain-c9, par exemple.
- Accédez aux secrets du registre intégré afin de pouvoir ajouter ultérieurement le registre en tant que point de terminaison de réplication à Harbor.
- Accordez des autorisations de modification à votre utilisateur administratif vCenter Single Sign-On sur l'espace de noms du registre intégré qui peut être nommé vmware-system-registry-437393318, par exemple.
- Accédez aux secrets à partir de l'espace de noms du registre intégré.
# kubectl get secrets -n vmware-system-registry-437393318 harbor-437393318-controller-registry -o yaml apiVersion: v1 data: harborAdminPassword: UDNSak4wQk5VbFlrY1VZeVprUmpKQT09 harborAdminUsername: WVdSdGFXND0= harborPostgresPassword: TlRoS1ZHeEFLa1lrVkdjaGN6aGtXZz09 kind: Secret ...
- Décodez le nom d'utilisateur et le mot de passe.
# echo 'WVdSdGFXND0=' | base64 -d | base64 -d admin # echo 'UDNSak4wQk5VbFlrY1VZeVprUmpKQT09' | base64 -d | base64 -d ?tc7@MRV$qF2fDc$
- Accordez des autorisations de modification à votre utilisateur administratif vCenter Single Sign-On sur l'espace de noms du registre intégré qui peut être nommé vmware-system-registry-437393318, par exemple.
- Ajoutez un point de terminaison de réplication et une règle de réplication pour le registre intégré au Service de superviseur Harbor.
- Connectez-vous en tant qu'utilisateur racine à l'interface utilisateur du Service de superviseur Harbor.
- Cliquez sur Registres, puis sur Nouveau point de terminaison.
- Sélectionnez l'onglet Réplications et cliquez sur Nouvelle règle de réplication.
Renseignez les paramètres suivants, en laissant les autres valeurs par défaut :
- Nom : indiquez un nom pour la règle.
- Mode de réplication : sélectionnez mode Pull.
- Registre source : sélectionnez le point de terminaison de registre que vous avez ajouté.
- Cliquez sur Enregistrer.
- Sélectionnez la règle de réplication récemment créée et cliquez sur Répliquer.