本文說明如何使用 Appliance Cloud 設定應用程式,設定權限和 Cloud Storage。 Google Cloud
裝置雲端設定應用程式會提示您輸入資訊,例如轉移工作階段 ID、目的地 Cloud Storage bucket 和 Cloud Key Management Service (Cloud KMS) 偏好設定。裝置雲端設定應用程式會根據您提供的資訊,設定轉移作業的 Google Cloud 權限、偏好的 Cloud Storage 值區和 Cloud KMS 金鑰。
事前準備
請確認您已備妥以下項目:
專案名稱和訂購裝置時使用的商家地點。
訂購設備時指定的設備 ID、工作階段 ID、值區名稱、值區前置字串和加密金鑰。請參閱標題為「Google Transfer Appliance Prepare Permissions and Storage」(準備 Google 轉移裝置的權限和儲存空間) 的電子郵件。
電子郵件「Google Transfer Appliance Prepare Permissions and Storage」(Google Transfer Appliance 準備權限和儲存空間) 中列出的 Storage 移轉服務服務代理。類似以下範例:
project-TENANT_IDENTIFIER@storage-transfer-service.iam.gserviceaccount.com
在本例中,
TENANT_IDENTIFIER
是為這個特定專案產生的號碼。我們會使用 Storage 移轉服務,將資料從裝置移至 Cloud Storage 值區。
指派 IAM 角色
您必須在專案和 Cloud Storage 值區中擁有正確的 IAM 角色。
如果您是專案擁有者,只要具備 roles/owner
權限即可。跳至下一節「下載 Appliance 雲端設定應用程式」。
如果您沒有 roles/owner
,則必須具備下列角色:
roles/serviceusage.serviceUsageAdmin
:在專案中啟用必要 API。roles/iam.serviceAccountCreator
:建立新的服務帳戶。roles/iam.serviceAccountKeyAdmin
:建立及下載服務帳戶金鑰。可授予專案層級的權限,或在權限應用程式建立設備服務帳戶後,授予該帳戶權限。roles/storagetransfer.admin
:建立 Storage 移轉服務帳戶。roles/transferappliance.viewer
:擷取 Cloud Storage 值區和 Cloud Key Management Service 金鑰詳細資料。roles/storage.admin
:如果您尚未建立 Cloud Storage 值區,可以在專案層級授予這項權限;如果您使用現有的 Cloud Storage 值區,則可以在值區層級授予這項權限。roles/cloudkms.admin
:如果您尚未建立 Cloud KMS 金鑰,可以在專案層級授予這項權限;如果您使用現有的 Cloud KMS 金鑰,則可以在金鑰層級授予這項權限。
查看角色
如要查看主體在專案及其資源中擁有的 IAM 角色,請按照下列步驟操作:
前往 Google Cloud 控制台的「IAM」頁面。
這個頁面會顯示專案中具有 IAM 角色的所有主體。
下載裝置雲端設定應用程式
如要下載 Transfer Appliance 雲端設定應用程式,請按照下列步驟操作:
開啟 Google Cloud 控制台歡迎頁面。
確認專案選取器中顯示的是用於移轉的專案名稱。專案選取器會指出您目前使用的專案。
如果沒有看到用於轉移的專案名稱,請按一下專案選取器,然後選取正確的專案。
按一下「啟用 Cloud Shell」。
在 Cloud Shell 中,使用
wget
指令下載 Transfer Appliance 雲端設定應用程式:wget https://storage.googleapis.com/transferappliance/cloudsetup/ta_cloudsetup_x86_64-linux -O ta_cloudsetup_x86_64-linux
執行裝置雲端設定應用程式
在 Cloud Shell 中執行下列指令,啟動裝置雲端設定應用程式:
chmod 0777 ta_cloudsetup_x86_64-linux && ./ta_cloudsetup_x86_64-linux
應用程式會逐步引導您完成專案設定。
應用程式輸出
裝置雲端設定應用程式會完成下列動作:
- 授予用來將資料移轉至 Cloud Storage 值區的裝置服務帳戶權限。
- 如果您選擇使用客戶代管的加密金鑰,請授予 Appliance 服務帳戶存取 Cloud KMS 金鑰資料的權限。
顯示下列資訊:
- 如果您選擇使用客戶管理的 Cloud KMS 加密金鑰,請提供Google Cloud 加密金鑰資源名稱。
- Google Cloud Cloud Storage 目標 bucket 名稱。
- Google Cloud Cloud Storage 目標值區前置字元 (如有提供)。
- 線上移轉服務帳戶名稱和 Storage 移轉服務服務代理程式名稱 (如適用)。
顯示的資訊也會儲存在 Cloud Shell 的主目錄中,名稱為 SESSION_ID-output.txt
,其中 SESSION_ID
是這項特定轉移作業的工作階段 ID。
獲得這項特定轉移作業權限的服務帳戶名稱會儲存在 Cloud Shell 的主目錄中,名稱為 cloudsetup.log
。
將 CMEK 資訊傳送給 Google
如果您指定客戶管理的加密金鑰,請填寫電子郵件中「Google Transfer Appliance - Prepare Permissions and Storage」(Google 傳輸設備 - 準備權限和儲存空間) 連結的表單,將金鑰資訊傳送給我們。
下載服務帳戶金鑰
下載並儲存線上轉移服務帳戶的服務帳戶金鑰。
gcloud iam service-accounts keys create key.json \ --iam-account=APPLIANCE_SERVICE_ACCOUNT_EMAIL
權限應用程式的輸出內容會顯示 APPLIANCE_SERVICE_ACCOUNT_EMAIL 的值:
...
Appliance Service Account Name:
example-sa@example-project.iam.gserviceaccount.com
收到設備後,請將金鑰上傳至設備的 /tmp
目錄。
疑難排解
錯誤 400:服務帳戶不存在
問題:
Transfer Appliance 雲端設定應用程式會顯示下列訊息:
Service account ta-SESSION_ID@transfer-appliance-zimbru.iam.gserviceaccount.com does not exist.
其中 SESSION_ID
是提供給 Transfer Appliance 雲端設定應用程式的工作階段 ID。
解決方法:
驗證轉移作業的工作階段 ID。每個傳輸工作階段都有專屬的工作階段 ID,並由 Transfer Appliance 團隊提供。如果沒有收到工作階段 ID,請傳送電子郵件至 data-support@google.com。
錯誤:列出 KMS 位置
問題:
Transfer Appliance 雲端設定應用程式會顯示下列訊息:
Error: listing kms locations
解決方法:
在 Cloud Shell 中執行下列操作:
執行
gcloud auth login
重新驗證。重試 Transfer Appliance 雲端設定應用程式。
如果錯誤持續發生,請透過 data-support@google.com 聯絡 Transfer Appliance 團隊。
錯誤:建立 Cloud KMS 金鑰時發生限制錯誤
問題:
裝置雲端設定應用程式會顯示類似以下的訊息:
Error: creating cloud kms key violates constraint error: code = FailedPrecondition desc= europe-west6 violates constraint 'constraints/gcp.resourceLocations' on the resource 'projects/test/locations/europe-west6'
解決方法:
您的 Google Cloud 專案可能設有機構政策,禁止在特定位置建立 Cloud Key Management Service 金鑰。可能的解決方法如下:
- 選擇其他位置來建立 Cloud Key Management Service 金鑰。
- 更新機構政策,允許在所需位置建立 Cloud Key Management Service 金鑰。
詳情請參閱「限制資源位置」一節。