Utilisez l'outil de migration automatique pour effectuer la transition de Container Registry vers Dépôts gcr.io hébergés sur Artifact Registry ou vers Artifact Registry standard des dépôts.
L'outil de migration automatique peut effectuer les actions suivantes en fonction de le chemin de transition choisi:
- Créez des dépôts gcr.io ou standards dans Artifact Registry pour chacun de vos projets gcr.io listés dans la région correspondante.
- Suggérez une stratégie IAM pour chaque dépôt et appliquez le ou ignorer l'application selon les préférences de l'utilisateur.
- Redirigez tout le trafic des points de terminaison gcr.io vers Artifact Registry.
- Copier toutes les images de conteneurs stockées dans Container Registry dans Artifact Registry gcr.io ou des dépôts standards, même si vous avez déjà activé la redirection.
Avant de commencer
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Choisissez une option de transition.
- Si vous effectuez une transition vers des dépôts gcr.io hébergés sur Artifact Registry,
activer l'API Artifact Registry dans les projets Container Registry de votre choix
migrer. L'outil vous invite également à activer l'API Artifact Registry si
vous ignorez cette étape.
Activez l'API Artifact Registry
- Si vous effectuez une transition vers des dépôts Artifact Registry standards, activez
l'API Artifact Registry dans le projet que vous souhaitez migrer
des images de conteneurs Container Registry. Vous pouvez utiliser le projet où
Container Registry est activé, ou il s'agit d'un autre projet.
Activez l'API Artifact Registry
Rôles requis
Les rôles suivants sont requis pour toutes les options de transition utilisant le outil de migration.
Rôles requis par le compte de service Artifact Registry:
Pour vous assurer que le compte de service Artifact Registry dispose des autorisations
les autorisations permettant de copier des images de Container Registry vers Artifact Registry ;
demandez à votre administrateur d'accorder au compte de service Artifact Registry le rôle
Rôle IAM Lecteur des objets Storage (roles/storage.objectViewer
) sur le projet Container Registry.
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Votre administrateur peut aussi attribuer au compte de service Artifact Registry les autorisations requises à l'aide d'outils personnalisés rôles ou autres prédéfinis rôles.
Rôles requis pour générer des recommandations IAM:
Pour obtenir les autorisations dont vous avez besoin pour analyser une stratégie d'autorisation, demandez à votre administrateur de vous accorder le les rôles IAM suivants sur le ou les projets Container Registry que vous souhaitez migrer:
-
Lecteur d'éléments cloud (
roles/cloudasset.viewer
) -
Pour analyser les stratégies avec des rôles IAM personnalisés:
Lecteur de rôles (
roles/iam.roleViewer
) -
Pour analyser les stratégies à l'aide de la Google Cloud CLI, procédez comme suit:
Consommateur de Service Usage (
roles/serviceusage.serviceUsageConsumer
)
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ces rôles prédéfinis contiennent les autorisations requises pour analyser une stratégie d'autorisation. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour analyser une stratégie d'autorisation:
-
cloudasset.assets.analyzeIamPolicy
-
cloudasset.assets.searchAllResources
-
cloudasset.assets.searchAllIamPolicies
-
Pour analyser les stratégies avec des rôles IAM personnalisés:
iam.roles.get
-
Pour analyser les stratégies à l'aide de la Google Cloud CLI, procédez comme suit:
serviceusage.services.use
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Les rôles suivants sont attribués sur différentes ressources en fonction de vos option de transition.
Dépôts gcr.io
Pour obtenir les autorisations nécessaires pour effectuer la transition vers les dépôts gcr.io hébergés sur Artifact Registry, demandez à votre administrateur de vous accorder le rôles IAM suivants:
-
Créez des dépôts Artifact Registry et accordez l'accès à chaque dépôt:
Administrateur Artifact Registry (
roles/artifactregistry.admin
) sur le projet Google Cloud contenant vos images Container Registry -
Affichez et gérez la configuration Container Registry existante appliquée aux buckets de stockage Cloud Storage:
Administrateur Storage (
roles/storage.admin
) sur le projet Google Cloud contenant vos images Container Registry
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
dépôts standards
Pour obtenir les autorisations nécessaires pour passer aux dépôts Artifact Registry standards, demandez à votre administrateur de vous accorder le rôles IAM suivants:
-
Créez des dépôts Artifact Registry et accordez l'accès à chaque dépôt:
Administrateur Artifact Registry (
roles/artifactregistry.admin
) sur le projet Google Cloud où l'API Artifact Registry est activée -
Affichez et gérez la configuration Container Registry existante appliquée aux buckets de stockage Cloud Storage:
Administrateur Storage (
roles/storage.admin
) sur le projet Google Cloud contenant vos images Container Registry
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.
Migrer vers des dépôts gcr.io hébergés sur Artifact Registry
Vous pouvez migrer un ou plusieurs projets Google Cloud
en même temps à l'aide de gcloud artifacts docker upgrade migrate
.
Pour migrer vers des dépôts gcr.io, exécutez la commande suivante.
gcloud artifacts docker upgrade migrate \
--projects=PROJECTS
Où PROJECTS est l'ID d'un seul projet que vous souhaitez migrer vers des dépôts gcr.io hébergés sur Artifact Registry ou vers des dépôts gcr.io hébergés sur Artifact Registry liste des ID de projet que vous souhaitez migrer vers les dépôts gcr.io hébergés sur Artifact Registry.
L'outil de migration effectue les étapes suivantes:
- Crée des dépôts gcr.io dans Artifact Registry pour chacun des vos projets gcr.io répertoriés dans la région correspondante.
- Suggère une stratégie IAM pour chaque dépôt et applique la ou ignore l'application selon les préférences de l'utilisateur.
- Redirige tout le trafic du point de terminaison gcr.io vers Artifact Registry. Artifact Registry diffuse temporairement les images manquantes en les copiant depuis Container Registry au moment de la requête jusqu'à ce que toutes les images de conteneur soient copiées dans Artifact Registry.
- Il copie toutes les images de conteneurs stockées dans vos buckets gcr.io dans le bucket Dépôts gcr.io hébergés sur Artifact Registry.
- Désactive la copie au moment de la requête. Le dépôt gcr.io Artifact Registry ne dépend plus de Container Registry.
Si vous ne souhaitez copier que les images extraites de Container Registry au cours des 30 derniers
150 jours, vous pouvez inclure l'indicateur --recent-images=DAYS
.
Remplacez DAYS par le nombre de jours, compris entre 30 et 150, durant lesquels le
doit vérifier s'il y a des extractions à l'intérieur.
Si vous souhaitez copier un nombre spécifique de versions récemment importées de chaque
vous pouvez inclure l'élément --last-uploaded-versions=VERSIONS
. Remplacez VERSIONS par le nombre de versions que vous souhaitez copier.
pour chaque image. Si de nouvelles images sont importées lors de la copie, un nombre
versions spécifiées peuvent être copiées.
Les options --recent-images
et --last-uploaded-versions
sont mutuellement
et ne peuvent pas
être utilisés ensemble.
Si vous rencontrez des erreurs ou des délais avant expiration, vous pouvez réexécuter la commande en toute sécurité et les étapes terminées sont ignorées.
Migrer vers des dépôts Artifact Registry standards
Pour migrer votre projet gcr.io vers un dépôt Artifact Registry, exécutez la la commande suivante.
gcloud artifacts docker upgrade migrate \ --from-gcr=GCR_HOSTNAME/GCR_PROJECT \ --to-pkg-dev=AR_PROJECT/AR_REPOSITORY
Remplacez les éléments suivants :
GCR_HOSTNAME par le nom d'hôte de Container Registry. Le nom d'hôte dépend de l'emplacement de stockage de vos images de conteneurs:
gcr.io
héberge les images aux États-Unis.us.gcr.io
héberge les images aux États-Unis, dans un emplacement distinct à partir d'images hébergées pargcr.io
.eu.gcr.io
héberge les images dans États membres de l'Union européenne.asia.gcr.io
héberge les images en Asie.
GCR_PROJECT avec votre registre Google Cloud Container Registry ID du projet. Si l'ID de votre projet contient le signe deux-points (
:
), consultez la section Projets à l'échelle du domaine.AR_PROJECT par l'ID du projet Google Cloud dans lequel vous avez activé l'API Artifact Registry.
AR_REPOSITORY par le nom de votre dépôt Artifact Registry.
L'outil de migration effectue les étapes suivantes:
- Il crée le dépôt Artifact Registry si ce n'est pas déjà fait existent.
- Suggère une stratégie IAM pour le dépôt et applique la ou ignore l'application selon les préférences de l'utilisateur.
- Il copie les images dans la région Container Registry spécifiée et dans votre dépôt Artifact Registry.
Si vous ne souhaitez copier que les images extraites de Container Registry au cours des 30 derniers
150 jours, vous pouvez inclure l'indicateur --recent-images=DAYS
.
Remplacez DAYS par le nombre de jours, compris entre 30 et 150, durant lesquels le
doit vérifier s'il y a des extractions à l'intérieur.
Si vous rencontrez des erreurs ou des délais avant expiration, vous pouvez réexécuter la commande en toute sécurité et les étapes terminées sont ignorées.
Copier les images
L'outil de migration copie automatiquement vos images de conteneurs lorsque vous l'exécutez,
Si vous souhaitez ignorer toutes les autres étapes de la migration automatique et utiliser
pour copier des images vers Artifact Registry, vous pouvez transmettre le --copy-only
.
Pour copier des images de Container Registry vers un dépôt gcr.io hébergé sur Dans Artifact Registry, exécutez la commande suivante:
gcloud artifacts docker upgrade migrate \
--projects=PROJECTS \
--copy-only
Où PROJECTS est l'ID d'un seul projet que vous souhaitez migrer vers des dépôts gcr.io hébergés sur Artifact Registry ou vers des dépôts gcr.io hébergés sur Artifact Registry liste des ID de projet que vous souhaitez migrer vers les dépôts gcr.io hébergés sur Artifact Registry.
L'outil ignore toutes les étapes de migration et copie les images dans les de Container Registry vers des dépôts gcr.io hébergés Artifact Registry.
Pour copier des images de Container Registry dans un dépôt Artifact Registry standard, exécutez la commande suivante:
gcloud artifacts docker upgrade migrate \
--from-gcr=GCR_HOSTNAME/GCR_PROJECT \
--to-pkg-dev=AR_PROJECT/AR_REPOSITORY \
--copy-only
Remplacez les éléments suivants :
GCR_HOSTNAME par le nom d'hôte de Container Registry. Le nom d'hôte dépend de l'emplacement de stockage de vos images de conteneurs:
gcr.io
héberge les images aux États-Unis.us.gcr.io
héberge les images aux États-Unis, dans un emplacement distinct à partir d'images hébergées pargcr.io
.eu.gcr.io
héberge les images dans États membres de l'Union européenne.asia.gcr.io
héberge les images en Asie.
GCR_PROJECT avec votre registre Google Cloud Container Registry ID du projet. Si l'ID de votre projet contient le signe deux-points (
:
), consultez la section Projets à l'échelle du domaine.AR_PROJECT par l'ID du projet Google Cloud dans lequel vous avez activé l'API Artifact Registry.
AR_REPOSITORY par le nom de votre dépôt Artifact Registry.
L'outil ignore toutes les étapes de migration et copie les images des votre emplacement et votre projet Container Registry vers votre dépôt Artifact Registry.
Vous pouvez également utiliser l'option --copy-only
pour redémarrer la copie d'images si vous avez un
ou a expiré pendant le processus.