將叢集機密和工作節點從 HPCS 遷移到 Key Protect
虛擬私有雲 經典基礎架構
您可以使用 Key Protect 遷移工具,將叢集秘密加密、工作人員池和工作人員節點磁碟加密從 Hyper Protect Crypto Services (HPCS) 遷移到 IBM® Key Protect for IBM Cloud®。 此程序會更新群集機密、加密工作人員和工作人員池的加密金鑰和實例引用及使用情況。
根據您需要遷移的資源數量,遷移過程可能需要一小時或更長的時間。 請務必制定相應的計劃。
開始之前
從 HPCS 遷移到 Key Protect 之前,請檢閱下列需求和注意事項。
- 您必須建立 Key Protect 範例和根金鑰。 如需詳細資訊,請參閱設定 金鑰管理服務(KMS)提供者。
- 您必須在 IBM Cloud Identity and Access Management (IAM) 中擁有正確的權限,才能在群集中啟用 KMS。 如需詳細資訊,請參閱設定 金鑰管理服務(KMS)提供者。
- 服務對服務的授權政策必須到位,而且必須在 Key Protect 的實體或服務層級,而不是在鑰匙圈或鑰匙層級進行範圍設定。 這是目前的限制,同時適用於工作者節點和群集秘密加密。
在完成遷移並確認成功之前,請勿刪除您的 HPCS 根金鑰。
步驟 1. 設定服務對服務授權
在從 HPCS 遷移到 Key Protect 之前,您必須在 IBM Cloud IAM 中設定所需的服務對服務授權政策。 此步驟必須針對群集機密和工作節點單獨完成。 請注意,您可能已經有這些政策,在這種情況下,您不需要重新建立這些政策。
群組秘密加密授權
若要遷移叢集秘密加密,您需要從 IBM Cloud Kubernetes Service 到 Key Protect 範例的服務授權政策。
- 導覽到 IBM Cloud 主控台中的 服務授權頁面。
- 按一下建立。
- 如果群集位於目前帳戶中,請將來源帳戶設定為此帳戶。 如果群集在不同的帳戶中,請選擇其他帳戶,並提供帳戶 ID。
- 將源服務設定為 Kubernetes Service.
- 將目標服務設定為 Key Protect.
- 將授權的範圍擴大到 Key Protect 服務或實體層級。 請勿將範圍設定為特定的鑰匙圈或鑰匙。
- 至少包含讀卡機服務存取。
- 啟用由來源服務和依賴服務委派授權的功能。
- 按一下授權。
工作站磁碟加密授權
若要為 VPC 群集遷移 Worker 節點磁碟加密,您需要將 IBM Cloud Kubernetes Service 和 Cloud Block Storage 的服務授權政 策都轉移到 Key Protect 範例。
按照以下步驟為 IBM Cloud Kubernetes Service 建立授權。 如果這些政策已經存在,則無需重新建立。
- 導覽到 IBM Cloud 主控台中的 服務授權頁面。
- 按一下建立。
- 如果群集位於目前帳戶中,請將來源帳戶設定為此帳戶。 如果群集在不同的帳戶中,請選擇其他帳戶,並提供帳戶 ID。
- 將源服務設定為 Kubernetes Service.
- 將目標服務設定為 Key Protect.
- 將授權的範圍擴大到 Key Protect 服務或實體層級。 請勿將範圍設定為特定的鑰匙圈或鑰匙。
- 至少包含讀卡機服務存取。
- 啟用由來源服務和依賴服務委派授權的功能。
- 按一下授權。
按照以下步驟為 Cloud Block Storage 建立授權。
- 導覽到 IBM Cloud 主控台中的 服務授權頁面。
- 按一下建立。
- 如果群集位於目前帳戶中,請將來源帳戶設定為此帳戶。 如果群集在不同的帳戶中,請選擇其他帳戶,並提供帳戶 ID。
- 將源服務設定為 Cloud Block Storage. 請注意,在 CLI 中,來源服務被稱為 server-protect。
- 將目標服務設定為 Key Protect.
- 將授權的範圍擴大到 Key Protect 服務或實體層級。 請勿將範圍設定為特定的鑰匙圈或鑰匙。
- 至少包含讀卡機服務存取。
- 按一下授權。
Red Hat OpenShift on IBM Cloud 自動為 IBM-managed 服務帳戶中的 Cloud Block Storage 服務建立額外的服務對服務委託政策,並將其轉到 Key Protect 實例。 需要此授權方針,以便 VPC 基礎架構可以使用您的 Key Protect 根金鑰加密工作節點的開機磁碟區。 如果您在遷移後發生問題,請驗證 IAM 授權中是否存在此委託授權政策。
步驟 2. 識別遷移的主要用途
確定帳戶中哪些資源需要從 HPCS 移轉到 Key Protect。 如需瞭解識別使用情況的不同方法,請參閱 Key Protect 文件中的 Searching for usage。
對於每個群集,您可以使用 ibmcloud kp registrations -i KMS_INSTNACE_ID KEY_ID 指令檢視金鑰註冊。 輸出顯示以下的鑰匙註冊: - 群組機密只需一次註冊
- 每個加密工作人員池可進行一次註冊
- 每個加密工作者只需一次註冊
這些登錄項目可能類似於以下內容:
"crn:v1:staging:public:containers-kubernetes:us-south:a/1152aa1c1ec54274ac42b8ad8507c90c:d70mi70206f7fchch5h0::
crn:v1:staging:public:containers-kubernetes:us-south:a/1152aa1c1ec54274ac42b8ad8507c90c:d79qqpt20aca2a0ii8v0:worker-pool:d79qqpt20aca2a0ii8v0-edea88a
crn:v1:staging:public:is:us-south-1:a/e2523561f3864f058711d94392c19e9b::volume:r134-799cdc60-c598-4a58-913b-b29ad312a143
可選:使用「金鑰使用情況報告器」工具
識別金鑰使用情況的一種可用方法是 Key Usage Reporter (KUR) 工具,它可以掃描您的帳戶,並提供使用中的 HPCS 金鑰報告。 此偵測工具可協助您辨識哪些群集已啟用 HPCS 金鑰進行秘密加密,以及哪些 Worker pool 已啟用 HPCS 金鑰進行 Worker 節點磁碟加密。 報告輸出會顯示群集機密、工作人員和工作人員池,作為綁定到特定 HPCS 金鑰和實例的獨立資源。 如需執行偵測工具的詳細說明,請參閱 Key Protect 文件中的 Detecting HPCS key usage。
請注意,KUR 工具可能無法顯示每個 HPCS 使用案例,因此檢視所有識別使用情況的方法非常重要。 如果使用跨帳戶 KMS 範例,則必須在所有相關帳戶中執行 KUR 工具。
步驟 3. 執行遷移工具
確定使用 HPCS 金鑰的資源並設定所需的服務授權後,使用 Key Protect 移轉工具移轉加密金鑰。 完成此步驟前,請確定您已建立 所需的服務對服務授權政策。
如需執行遷移工具的詳細說明,請參閱 Key Protect 文件中的 遷移至 Key Protect。
遷移過程中會發生什麼
執行遷移工具時,會發生下列動作:
- 叢集秘密加密
- 遷移會觸發在 Key Protect 金鑰上建立金鑰註冊。 然後,使用 Key Protect 金鑰而非 HPCS 金鑰重新加密資料加密金鑰。 註冊隨後會從 HCPS 密鑰中刪除。 在作業期間,預計不會有停機時間,您的群集會繼續正常運作。
- 工作節點磁碟加密
-
- 對於加密工作人員池:遷移會觸發在工人池上為加密工人建立金鑰註冊。 對 HPCS 實例和密鑰的引用會更新為指向 Key Protect 實例和密鑰。 註冊隨後會從 HPCS 鑰匙中刪除。 添加到 Worker 池的任何新 Worker 現在都使用更新的關鍵資訊。 在作業期間,預計不會有停機時間,您的工作人員池仍可繼續正常運作。
-
- 針對個別員工:遷移會觸發在 Key Protect 金鑰上建立金鑰註冊。 然後,使用 Key Protect 金鑰而非 HPCS 金鑰重新加密資料加密金鑰。 註冊隨後會從 HCPS 密鑰中刪除。 在手術期間,預計不會有停工時間,您的工作人員會繼續正常運作。
在遷移過程中,Red Hat OpenShift on IBM Cloud 會自動為 IBM-managed 服務帳戶中的 Cloud Block Storage 服務建立額外的服務對服務委託政策,並將其轉移到 Key Protect 實例。 需要此授權方針,以便 VPC 基礎架構可以使用您的 Key Protect 根金鑰加密工作節點的開機磁碟區。 如果在遷移過程中或遷移後發生問題,請驗證 IAM 授權中是否存在此委託授權政策。
步驟 4. 驗證遷移
遷移完成後,請驗證您的群集是否使用 Key Protect 金鑰。
-
檢查群集狀態,以確保主機準備就緒。
ibmcloud oc cluster get -c CLUSTER_NAME_OR_ID在輸出中,確認 Master Status 為 Ready,且金鑰管理服務顯示 Key Protect 範例的 KMS Instance ID 和 KMS Root Key ID。
-
對於 Worker 節點加密,請驗證 Worker 池是否引用 Key Protect 金鑰。
ibmcloud oc worker-pool get --worker-pool WORKER_POOL_NAME_OR_ID --cluster CLUSTER_NAME_OR_ID檢視輸出中的 KMS 和 CRK 欄位,確認它們參照了您的 Key Protect 範例和根金鑰。
-
確認您可以存取群集機密。
oc get secrets --all-namespaces -
在您的 Key Protect 範例中,驗證群集、工作人員和工作人員池是否已註冊到新的根金鑰,以及金鑰註冊是否不存在於舊的 HPCS 金鑰上。 如需詳細資訊,請參閱 檢視根金鑰與加密 IBM Cloud 資源之間的關聯。
下一步
成功遷移到 Key Protect 並驗證遷移之後:
- 監控您的群集是否有任何與加密或金鑰存取相關的問題。
- 更新任何參考 HPCS 範例的文件或執行簿。
- 考慮根據您的安全政策 輪換 Key Protect 根金鑰。