For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/containers-orchestration/managed-private-registry/migrate-helm-charts.md.

Migrer des charts Helm de Chartmuseum vers OCI

Voir en Markdown

Découvrez comment migrer des charts Helm de Chartmuseum (Harbor < 2.8) vers OCI

Objectif

Le service Managed Private Registry d'OVHcloud met à votre disposition un registre Docker managé et authentifié dans lequel vous pouvez stocker vos images Docker et vos charts Helm de manière privée.

Managed Private Registry repose sur la solution open source Harbor, afin de garantir son interopérabilité.

Harbor prend en charge deux méthodes de stockage des données des charts Helm :

  1. le stockage du registre Harbor, directement via l'API OCI ;
  2. le backend Chartmuseum hébergé par Harbor, via l'API de Chartmuseum.

À partir de la version 2.6 de Harbor, Chartmuseum est déprécié et il est supprimé à partir de la version 2.8 de Harbor.

Comment savoir si des charts Helm sont stockés dans Chartmuseum ?

Suivez le guide « Se connecter à l'interface » pour vous connecter à votre registre.

Depuis la page principale (liste des projets), une fois connecté, vérifiez si des charts Helm Chartmuseum sont présents dans la colonne « Chart Count ». Projets Harbor

Les charts Helm stockés dans Chartmuseum sont visibles dans l'onglet « Helm Charts » du projet. Charts Helm Chartmuseum dans Harbor

Les charts Helm stockés au format OCI sont, quant à eux, visibles dans l'onglet « Repository » du projet, comme les images Docker. Charts Helm OCI dans Harbor

En pratique

Nous avons développé un outil nommé chartmuseum2oci dont l'objectif est de migrer les charts Helm du Chartmuseum de Harbor vers un registre Helm OCI.

Prérequis

Pour migrer l'ensemble des charts Helm, vous devez utiliser un utilisateur administrateur ou un utilisateur disposant au minimum du rôle « developer » sur tous les projets.

Warning

Si l'utilisateur ne dispose pas de droits suffisants, seuls les charts Helm contenus dans les projets auxquels il a accès seront copiés. Aucune erreur ne sera affichée.

Exportez ensuite les variables suivantes :

export HARBOR_URL=https://
export HARBOR_USER=
export HARBOR_PASSWORD=

Lancer la migration

Exécutez les commandes suivantes :

git clone https://github.com/goharbor/chartmuseum-migration-tools.git
cd chartmuseum-migration-tools/chartmuseum2oci
docker build -t goharbor/chartmuseum2oci .
docker run -ti --rm goharbor/chartmuseum2oci --url $HARBOR_URL --username $HARBOR_USER --password $HARBOR_PASSWORD

Pendant la migration, l'outil indique le nombre de charts à migrer ainsi que l'avancement de la migration :

$ docker run -ti --rm ovhcloud/harbor-chartmuseum-migrator --url $HARBOR_URL --username $HARBOR_USER --password $HARBOR_PASSWORD
$ docker run -ti --rm ovhcloud/harbor-chartmuseum-migrator --url $HARBOR_URL --username $HARBOR_USER --password $HARBOR_PASSWORD
2023/06/28 16:17:32 416 Helm charts to migrate from Chartmuseum to OCI
   4% |█████                                                                                                                                        | (19/416, 20 it/min) [56s:19m36s]

Puis, une fois la migration terminée :

$ docker run -ti --rm ovhcloud/harbor-chartmuseum-migrator --url $HARBOR_URL --username $HARBOR_USER --password $HARBOR_PASSWORD
$ docker run -ti --rm ovhcloud/harbor-chartmuseum-migrator --url $HARBOR_URL --username $HARBOR_USER --password $HARBOR_PASSWORD
2023/06/28 16:17:32 416 Helm charts to migrate from Chartmuseum to OCI
   100% |█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (416/416, 20 it/min)
2023/06/28 16:38:14 416 Helm charts successfully migrated from Chartmuseum to OCI
Info

Important : l'outil copie les charts Helm mais ne les supprime pas de Chartmuseum.

Utiliser des charts Helm OCI

Pour interagir avec des charts Helm au format OCI, utilisez Helm en version 3.8 ou supérieure (https://helm.sh/docs/intro/install/). Pour finaliser le processus de migration, vous devez modifier toutes les occurrences de charts Helm afin d'utiliser l'URL OCI à la place de celle de Chartmuseum. Voici quelques exemples OCI.

Connexion

helm registry login $HARBOR_URL

Push

helm push dummy-chart-0.1.0.tgz $HARBOR_URL/$HARBOR_PROJECT

Installation

helm install dummy-chart oci://$HARBOR_URL/$HARBOR_PROJECT/dummy-chart --version 0.1.0

Liens utiles

Aller plus loin

Pour obtenir une vue d'ensemble du service Managed Private Registry d'OVHcloud, consultez le site Managed Private Registry d'OVHcloud.

Cette page vous a-t-elle aidé ?