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.5.4. GCP(Google Cloud Platform) 구성
GCP(Google Cloud Platform) 스토리지 버킷을 MTC(Migration Toolkit for Containers)의 복제 리포지토리로 구성합니다.
사전 요구 사항
-
gcloud
및gsutil
CLI 툴이 설치되어 있어야 합니다. 자세한 내용은 Google 클라우드 설명서를 참조하십시오. - 소스 및 대상 클러스터에서 GCP 스토리지 버킷에 액세스할 수 있어야 합니다.
스냅샷 복사 방법을 사용하는 경우:
- 소스 및 대상 클러스터는 동일한 지역에 있어야 합니다.
- 소스 및 대상 클러스터는 동일한 스토리지 클래스를 보유해야 합니다.
- 스토리지 클래스는 스냅샷과 호환 가능해야 합니다.
프로세스
GCP에 로그인합니다.
gcloud auth login
$ gcloud auth login
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 서비스 계정을 생성합니다.
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! Toggle word wrap Toggle overflow 서비스 계정을 나열합니다.
gcloud iam service-accounts list
$ gcloud iam service-accounts list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이메일
값과 일치하도록SERVICE_ACCOUNT_EMAIL
변수를 설정합니다.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! Toggle word wrap Toggle overflow velero
사용자에게 필요한 권한을 부여하도록 정책을 연결합니다.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.server
Copy 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_EMAIL
Copy to Clipboard Copied! Toggle word wrap Toggle overflow credentials-velero
파일을 사용하여 GCP를 복제 리포지토리로 추가합니다.