This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.6.5.4. Configuration de Google Cloud Platform
Vous configurez un compartiment de stockage Google Cloud Platform (GCP) comme référentiel de réplication pour Migration Toolkit for Containers (MTC).
Conditions préalables
-
Il faut que les outils CLI
gcloud
etgsutil
soient déjà installés. Pour plus d’informations, consultez la documentation de Google Cloud. - Le compartiment de stockage GCP doit être accessible aux clusters source et cible.
Si vous utilisez la méthode de copie de cliché :
- Les clusters source et cible doivent se trouver dans la même région.
- Les clusters source et cible doivent avoir la même classe de stockage.
- La classe de stockage doit être compatible avec les clichés.
Procédure
Connectez-vous à GCP :
gcloud auth login
$ gcloud auth login
Copy to Clipboard Copied! Définissez la variable
BUCKET
:BUCKET=<bucket>
$ BUCKET=<bucket>
1 Copy to Clipboard Copied! - 1
- Indiquez le nom de votre compartiment.
Créez le compartiment de stockage :
gsutil mb gs://$BUCKET/
$ gsutil mb gs://$BUCKET/
Copy to Clipboard Copied! Définissez la variable
PROJECT_ID
sur votre projet actif :PROJECT_ID=$(gcloud config get-value project)
$ PROJECT_ID=$(gcloud config get-value project)
Copy to Clipboard Copied! Créez un compte de service :
gcloud iam service-accounts create velero \ --display-name "Velero service account"
$ gcloud iam service-accounts create velero \ --display-name "Velero service account"
Copy to Clipboard Copied! Répertoriez vos comptes de service :
gcloud iam service-accounts list
$ gcloud iam service-accounts list
Copy to Clipboard Copied! Définissez la variable
SERVICE_ACCOUNT_EMAIL
pour qu’elle corresponde à sa valeuremail
:SERVICE_ACCOUNT_EMAIL=$(gcloud iam service-accounts list \ --filter="displayName:Velero service account" \ --format 'value(email)')
$ SERVICE_ACCOUNT_EMAIL=$(gcloud iam service-accounts list \ --filter="displayName:Velero service account" \ --format 'value(email)')
Copy to Clipboard Copied! Attachez les stratégies pour donner à l’utilisateur
velero
les autorisations nécessaires :ROLE_PERMISSIONS=(
$ ROLE_PERMISSIONS=( compute.disks.get compute.disks.create compute.disks.createSnapshot compute.snapshots.get compute.snapshots.create compute.snapshots.useReadOnly compute.snapshots.delete compute.zones.get )
Copy to Clipboard Copied! Créez le rôle personnalisé
velero.server
:gcloud iam roles create velero.server \ --project $PROJECT_ID \ --title "Velero Server" \ --permissions "$(IFS=","; echo "${ROLE_PERMISSIONS[*]}")"
$ gcloud iam roles create velero.server \ --project $PROJECT_ID \ --title "Velero Server" \ --permissions "$(IFS=","; echo "${ROLE_PERMISSIONS[*]}")"
Copy to Clipboard Copied! Ajoutez une liaison de stratégie IAM au projet :
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \ --role projects/$PROJECT_ID/roles/velero.server
$ gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \ --role projects/$PROJECT_ID/roles/velero.server
Copy to Clipboard Copied! Mettez à jour le compte de service IAM :
gsutil iam ch serviceAccount:$SERVICE_ACCOUNT_EMAIL:objectAdmin gs://${BUCKET}
$ gsutil iam ch serviceAccount:$SERVICE_ACCOUNT_EMAIL:objectAdmin gs://${BUCKET}
Copy to Clipboard Copied! Enregistrez les clés du compte de service IAM dans le fichier
credentials-velero
du répertoire actuel :gcloud iam service-accounts keys create credentials-velero \ --iam-account $SERVICE_ACCOUNT_EMAIL
$ gcloud iam service-accounts keys create credentials-velero \ --iam-account $SERVICE_ACCOUNT_EMAIL
Copy to Clipboard Copied! Vous utilisez le fichier
credentials-velero
pour ajouter GCP comme référentiel de réplication.