6.5.4. Configuración de Google Cloud Platform
Configure un bucket de almacenamiento de Google Cloud Platform (GCP) como repositorio de replicación para Migration Toolkit for Containers (MTC).
Requisitos previos
-
Debe tener instaladas las herramientas de la CLI
gcloud
ygsutil
. Consulte la documentación de Google Cloud para obtener más detalles. - El bucket de almacenamiento de GCP debe ser accesible para los clústeres de origen y destino.
Si utiliza el método de copia de instantáneas:
- Los clústeres de origen y destino deben estar en la misma región.
- Los clústeres de origen y destino deben tener la misma clase de almacenamiento.
- La clase de almacenamiento debe ser compatible con las instantáneas.
Procedimiento
Inicie sesión en GCP:
$ gcloud auth login
Establezca la variable
BUCKET
:$ BUCKET=<bucket> 1
- 1
- Especifica el nombre del bucket.
Cree el bucket de almacenamiento:
$ gsutil mb gs://$BUCKET/
Establezca la variable
PROJECT_ID
para su proyecto activo:$ PROJECT_ID=$(gcloud config get-value project)
Cree una cuenta de servicio:
$ gcloud iam service-accounts create velero \ --display-name "Velero service account"
Enumere sus cuentas de servicio:
$ gcloud iam service-accounts list
Establezca la variable
SERVICE_ACCOUNT_EMAIL
para que coincida con el valor de sucorreo electrónico
:$ SERVICE_ACCOUNT_EMAIL=$(gcloud iam service-accounts list \ --filter="displayName:Velero service account" \ --format 'value(email)')
Adjunte las políticas para conceder los permisos necesarios al usuario
velero
:$ 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 )
Cree el rol personalizado
velero.server
:$ gcloud iam roles create velero.server \ --project $PROJECT_ID \ --title "Velero Server" \ --permissions "$(IFS=","; echo "${ROLE_PERMISSIONS[*]}")"
Añada la vinculación de la política IAM al proyecto:
$ gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \ --role projects/$PROJECT_ID/roles/velero.server
Actualice la cuenta de servicio IAM:
$ gsutil iam ch serviceAccount:$SERVICE_ACCOUNT_EMAIL:objectAdmin gs://${BUCKET}
Guarde las claves de la cuenta de servicio IAM en el archivo
credentials-velero
en el directorio actual:$ gcloud iam service-accounts keys create credentials-velero \ --iam-account $SERVICE_ACCOUNT_EMAIL
Utilice el archivo
credentials-velero
para añadir GCP como repositorio de replicación.