6.5.4. Configuração da Google Cloud Platform
Um bucket de armazenamento da Google Cloud Platform (GCP) é configurado como um repositório de replicação para o Migration Toolkit for Containers (MTC).
Pré-requisitos
-
As ferramentas de CLI
gcloudegsutildevem estar instaladas. Para obter detalhes, consulte a documentação do Google Cloud. - O bucket de armazenamento da GCP deve estar acessível aos clusters de origem e de destino.
Se estiver usando o método de cópia de snapshots:
- Os clusters de origem e de destino devem estar na mesma região.
- Os clusters de origem e de destino devem ter a mesma classe de armazenamento.
- A classe de armazenamento deve ser compatível com snapshots.
Procedimento
Faça login na GCP:
$ gcloud auth loginDefina a variável
BUCKET:$ BUCKET=<bucket>1 - 1
- Especifique o nome do seu bucket.
Crie o bucket de armazenamento:
$ gsutil mb gs://$BUCKET/Defina a variável
PROJECT_IDdo seu projeto ativo:$ PROJECT_ID=$(gcloud config get-value project)Crie uma conta de serviço:
$ gcloud iam service-accounts create velero \ --display-name "Velero service account"Liste suas contas de serviços:
$ gcloud iam service-accounts listDefina a variável
SERVICE_ACCOUNT_EMAILpara corresponder ao valor deemail:$ SERVICE_ACCOUNT_EMAIL=$(gcloud iam service-accounts list \ --filter="displayName:Velero service account" \ --format 'value(email)')Anexe as políticas para dar ao usuário
veleroas permissões necessárias:$ 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 )Crie a função personalizada
velero.server:$ gcloud iam roles create velero.server \ --project $PROJECT_ID \ --title "Velero Server" \ --permissions "$(IFS=","; echo "${ROLE_PERMISSIONS[*]}")"Adicione a associação da política de IAM ao projeto:
$ gcloud projects add-iam-policy-binding $PROJECT_ID \ --member serviceAccount:$SERVICE_ACCOUNT_EMAIL \ --role projects/$PROJECT_ID/roles/velero.serverAtualize a conta de serviço de IAM:
$ gsutil iam ch serviceAccount:$SERVICE_ACCOUNT_EMAIL:objectAdmin gs://${BUCKET}Salve as chaves da conta de serviço de IAM no arquivo
credentials-velerono diretório atual:$ gcloud iam service-accounts keys create credentials-velero \ --iam-account $SERVICE_ACCOUNT_EMAILO arquivo
credentials-veleroé usado para adicionar a GCP como um repositório de replicação.