將 Windows Server 從 BYOL 模式切換為 PAYG 模式

您可以將 Windows Server 虛擬機器 (VM) 執行個體從自備授權 (BYOL) 模式切換為即付即用 (PAYG) 模式。系統不支援將授權從「即付即用」變更為「自備授權」。如要進一步瞭解 Google Cloud上的 Windows Server 授權,請參閱「 Google Cloud上的 Microsoft 授權」。

如要進一步瞭解授權參照、授權代碼,以及如何判斷允許的授權修改項目,請參閱「授權變更和限制」。

事前準備

  • 如果尚未設定驗證,請先完成設定。 驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,您可以選取下列其中一個選項,向 Compute Engine 進行驗證:

    選取這個頁面上範例的預計用途分頁:

    控制台

    使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證。

    gcloud

    1. 安裝 Google Cloud CLI。 完成後,執行下列指令來初始化 Google Cloud CLI:

      gcloud init

      如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。

  • 設定預設區域和可用區。

準備更新磁碟授權

如要在磁碟連接至執行中執行個體時更新磁碟授權,請先停止執行個體或卸離磁碟。

  • 停止執行個體。在更新磁碟授權前,暫時關閉執行個體。
  • 卸離磁碟。這會先將磁碟從執行個體卸離,再更新磁碟的授權。

將 BYOL 授權變更為 PAYG 授權

如要將自有授權 (BYOL) 授權換成隨用隨付 (PAYG) 授權,請使用 Google Cloud CLI 或 Compute Engine API。

gcloud

如要以授權參照或程式碼取代磁碟的授權,請使用 gcloud compute disks update 指令:

gcloud compute disks update DISK_NAME \
    --replace-license=PREVIOUS_LICENSE,NEW_LICENSE

更改下列內容:

  • DISK_NAME:要更換的磁碟名稱。
  • PREVIOUS_LICENSE:要替換的先前授權參照,例如 "projects/windows-cloud/global/licenses/windows-server-2016-byol"、"projects/windows-cloud/global/licenses/windows-server-2019-byol"。
  • NEW_LICENSE:新的授權參照,例如 "projects/windows-cloud/global/licenses/windows-server-2016-dc"、"projects/windows-cloud/global/licenses/windows-server-2019-dc"。

REST

如要更換磁碟的授權,請將新授權新增至要求主體,並省略先前的授權。呼叫下列 disks.update v1 方法:

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/disks/DISK_NAME?paths=licenses --data '{"name":"DISK_NAME", "licenses":["https://www.googleapis.com/compute/v1/NEW_LICENSE"]}'

更改下列內容:

  • PROJECT:專案名稱
  • ZONE:包含 VM 的可用區
  • DISK_NAME:磁碟名稱
  • NEW_LICENSE:新的授權參照,例如 "projects/windows-cloud/global/licenses/windows-server-2016-dc"、"projects/windows-cloud/global/licenses/windows-server-2019-dc",或授權代碼,例如 "1000213"、"3389558045860892917"。

啟用新的隨用隨付授權

更換磁碟上的授權後,您必須使用 Google Cloud 金鑰管理服務 (KMS) 啟用作業系統。

如要啟用授權,請在 Windows VM 上完成下列步驟:

  1. 連線至 Windows VM。
  2. 以系統管理員身分開啟 PowerShell 終端機。
  3. 更新 Google Compute Engine Sysprep 套件。確保您擁有包含必要授權碼的最新版本啟用指令碼。

    googet -noconfirm update google-compute-engine-sysprep
    
  4. 執行 activate_instance.ps1 指令碼。這項指令碼會偵測新的隨用隨付授權,並設定正確的 KMS 伺服器。

    & "C:\Program Files\Google\Compute Engine\sysprep\activate_instance.ps1"
    

驗證授權變更

如要驗證開機磁碟上的授權是否已變更,請按照下列程序操作:

  1. 執行 gcloud compute disks describe 指令,取得開機磁碟的相關資訊:

    gcloud compute disks describe DISK_NAME \
        --zone=ZONE \
        --format="value(licenses)"
    

    更改下列內容:

    • DISK_NAME:要驗證授權的開機磁碟名稱
    • ZONE:包含要驗證授權的開機磁碟的可用區
  2. 確認輸出內容類似於以下內容:

    https://www.googleapis.com/compute/v1/projects/windows-cloud/global/licenses/windows-server-2019-dc