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.4.2.4.2. GCP(Google Cloud Platform) 구성
GCP(Google Cloud Platform) 스토리지 버킷을 MTC(Migration Toolkit for Containers)의 복제 리포지토리로 구성할 수 있습니다.
사전 요구 사항
- 소스 및 대상 클러스터에서 GCP 스토리지 버킷에 액세스할 수 있어야 합니다.
-
gsutil이 설치되어 있어야 합니다. 스냅샷 복사 방법을 사용하는 경우:
- 소스 및 대상 클러스터는 동일한 지역에 있어야 합니다.
- 소스 및 대상 클러스터는 동일한 스토리지 클래스를 보유해야 합니다.
- 스토리지 클래스는 스냅샷과 호환 가능해야 합니다.
절차
gsutil에 로그인합니다.gsutil init
$ gsutil initCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Welcome! This command will take you through the configuration of gcloud. Your current configuration has been set to: [default] To continue, you must login. Would you like to login (Y/n)?
Welcome! This command will take you through the configuration of gcloud. Your current configuration has been set to: [default] To continue, you must login. Would you like to login (Y/n)?Copy to Clipboard Copied! Toggle word wrap Toggle overflow BUCKET변수를 설정합니다.BUCKET=<bucket>
$ BUCKET=<bucket>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 버킷 이름을 지정합니다.
스토리지 버킷을 생성합니다.
gsutil mb gs://$BUCKET/
$ gsutil mb gs://$BUCKET/Copy to Clipboard Copied! Toggle word wrap Toggle overflow PROJECT_ID변수를 활성 프로젝트로 설정합니다.PROJECT_ID=`gcloud config get-value project`
$ PROJECT_ID=`gcloud config get-value project`Copy to Clipboard Copied! Toggle word wrap Toggle overflow VeleroIAM 서비스 계정을 생성합니다.gcloud iam service-accounts create velero \ --display-name "Velero Storage"$ gcloud iam service-accounts create velero \ --display-name "Velero Storage"Copy to Clipboard Copied! Toggle word wrap Toggle overflow SERVICE_ACCOUNT_EMAIL변수를 생성합니다.SERVICE_ACCOUNT_EMAIL=`gcloud iam service-accounts list \ --filter="displayName:Velero Storage" \ --format 'value(email)'`
$ SERVICE_ACCOUNT_EMAIL=`gcloud iam service-accounts list \ --filter="displayName:Velero Storage" \ --format 'value(email)'`Copy to Clipboard Copied! Toggle word wrap Toggle overflow ROLE_PERMISSIONS변수를 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 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! Toggle word wrap Toggle overflow 프로젝트에 IAM 정책 바인딩을 추가합니다.
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.serverCopy to Clipboard Copied! Toggle word wrap Toggle overflow 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! Toggle word wrap Toggle overflow IAM 서비스 계정 키를 현재 디렉터리의
credentials-velero파일에 저장합니다.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_EMAILCopy to Clipboard Copied! Toggle word wrap Toggle overflow Data Protection 애플리케이션을 설치하기 전에
credentials-velero파일을 사용하여 GCP용Secret오브젝트를 생성합니다.