将 Windows Server 从自带许可 (BYOL) 切换到随用随付 (PAYG)

您可以将 Windows Server 虚拟机 (VM) 实例从自带许可 (BYOL) 模式切换到随用随付 (PAYG) 模式。不支持将许可从 PAYG 更改为 BYOL。如需详细了解 Cloud de Confiance by S3NS上的 Windows Server 许可,请参阅 Cloud de Confiance by S3NS上的 Microsoft 许可

如需详细了解许可参考、许可代码以及如何确定允许的许可修改,请参阅许可变更和限制

准备工作

  • 如果您尚未设置身份验证,请进行设置。身份验证用于验证您的身份,以便访问 Cloud de Confiance by S3NS 服务和 API。如需从本地开发环境运行代码或示例,您可以通过选择以下选项之一向 Compute Engine 进行身份验证:

    选择标签页以了解您打算如何使用本页面上的示例:

    控制台

    当您使用 Cloud de Confiance 控制台访问 Cloud de Confiance by S3NS 服务和 API 时,无需设置身份验证。

    gcloud

    1. 安装 Google Cloud CLI,然后 使用联合身份登录 gcloud CLI。 登录后,运行以下命令来初始化 Google Cloud CLI:

      gcloud init
  • 设置默认区域和可用区

准备更新磁盘的许可

如需在磁盘挂接到正在运行的实例时更新磁盘的许可,请先关停实例或分离磁盘。

  • 停止实例。 在更新磁盘的许可之前,暂时关停实例。
  • 分离磁盘。这会在更新磁盘许可之前将磁盘从实例分离。

将 BYOL 许可更改为 PAYG 许可

如需将自带许可 (BYOL) 替换为按需付费许可,请使用 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:包含虚拟机的可用区
  • DISK_NAME:磁盘的名称
  • NEW_LICENSE:新的许可参考,例如 "projects/windows-cloud/global/licenses/windows-server-2016-dc""projects/windows-cloud/global/licenses/windows-server-2019-dc" 或许可代码,例如 "1000213""3389558045860892917"

激活新的 PAYG 许可

替换磁盘上的许可后,您必须使用 Cloud de Confiance by S3NS 密钥管理服务 (KMS) 激活操作系统。

如需激活许可,请在 Windows 虚拟机上完成以下步骤:

  1. 连接到 Windows 虚拟机
  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