Google Cloud environments

Citrix Virtual Apps and Desktops™ lets you provision and manage machines on Google Cloud.

必备条件

  • Citrix Cloud™ 帐户。本文中介绍的功能仅在 Citrix Cloud 中可用。
  • Google Cloud 项目。该项目存储与计算机目录关联的所有计算资源。它可以是现有项目,也可以是新项目。
  • 在您的 Google Cloud 项目中启用四个 API。有关详细信息,请参阅 启用 Google Cloud API
  • Google Cloud 服务帐户。服务帐户向 Google Cloud 进行身份验证以启用对项目的访问。有关详细信息,请参阅 配置和更新服务帐户
  • 启用 Google 私有访问。有关详细信息,请参阅 启用 Google 私有访问

启用 Google Cloud 应用程序编程接口

To use the Google Cloud functionality through Web Studio, enable these APIs in your Google Cloud project:

  • 计算引擎 API
  • 云资源管理器 API
  • 身份和访问管理 (IAM) API
  • 云构建 API
  • 云密钥管理服务 (KMS)

在 Google Cloud 控制台中,完成以下步骤:

  1. 在左上角菜单中,选择 API 和服务 > 控制面板

    API 和服务控制面板选择图像(/zh-cn/citrix-virtual-apps-desktops/2507-ltsr/media/gcp-api-service-select-dashboard.png)

  2. 控制面板屏幕上,确保已启用 Compute Engine API。如果 未启用,请按照以下步骤操作:

    1. 导航到 API 和服务 > 库

      API 和服务库图像(/zh-cn/citrix-virtual-apps-desktops/2507-ltsr/media/gcp-api-library.png)

    2. In the search box, type Compute Engine.

    3. 从搜索结果中,选择 Compute Engine 应用程序接口

    4. 计算引擎 API 页面上,选择 启用

  3. 启用 云资源管理器 API。

    1. 导航到 API 和服务 > 库

    2. 在搜索框中,键入 云资源管理器

    3. 从搜索结果中,选择 云资源管理器 API

    4. Cloud Resource Manager 应用程序接口页面上,选择启用。该应用程序接口的状态将显示。

  4. 同样,启用身份和访问管理 (IAM) 接口Cloud Build 接口

您还可以使用 Google Cloud Shell 启用 API。为此,请执行以下操作:

  1. 打开谷歌控制台并加载 Cloud Shell。
  2. 在 Cloud Shell 中运行以下四个命令:

    • gcloud services enable compute.googleapis.com
    • gcloud services enable cloudresourcemanager.googleapis.com
    • gcloud services enable iam.googleapis.com
    • gcloud services enable cloudbuild.googleapis.com
  3. 如果 Cloud Shell 提示,请单击 授权

对服务帐户进行配置和更新

注意:

GCP 将在 2024 年 4 月 29 日之后对 Cloud Build Service 的默认行为和服务帐户的使用引入更改。有关详细信息,请参阅 Cloud Build Service Account Change。您在 2024 年 4 月 29 日之前启用了 Cloud Build API 的现有 Google 项目不受此更改的影响。但是,如果您希望在 4 月 29 日之后保留现有的 Cloud Build Service 行为,则可以在启用 Cloud Build API 之前创建或应用组织策略以禁用约束强制执行。因此,以下内容分为两部分:2024 年 4 月 29 日之前2024 年 4 月 29 日之后。如果您设置了新的组织策略,请遵循 2024 年 4 月 29 日之前 部分。

2024 年 4 月 29 日之前

Citrix Cloud 在 Google Cloud 项目中使用三个独立的服务帐户:

  • Citrix Cloud 服务帐户:此服务帐户使 Citrix Cloud 能够访问 Google 项目、预配和管理计算机。此服务帐户使用 Google Cloud 生成的 密钥 对 Google Cloud 进行身份验证。

    您必须按照此处所述手动创建此服务帐户。有关详细信息,请参阅 创建 Citrix Cloud 服务帐户

    您可以通过电子邮件地址识别此服务帐户。例如,<my-service-account>@<project-id>.iam.gserviceaccount.com

  • Cloud Build 服务帐户:在您启用 启用 Google Cloud API 中提及的所有 API 后,此服务帐户将自动预配。要查看所有自动创建的服务帐户,请在 Google Cloud 控制台中导航到 IAM & Admin > IAM,然后选择 Include Google-provided role grants 复选框。

    您可以通过以 Project ID 和单词 cloudbuild 开头的电子邮件地址识别此服务帐户。例如,<project-id>@cloudbuild.gserviceaccount.com

    验证是否已向服务帐户授予以下角色。如果必须添加角色,请按照 向 Cloud Build 服务帐户添加角色 中概述的步骤操作。

    • 云构建服务帐户
    • Compute 实例管理员
    • 服务帐户用户
  • Cloud Compute 服务帐户:一旦 Compute API 激活,Google Cloud 就会将此服务帐户添加到在 Google Cloud 中创建的实例。此帐户具有 IAM 基本编辑器角色以执行操作。但是,如果您删除默认权限以获得更精细的控制,则必须添加一个 Storage Admin 角色,该角色需要以下权限:

    • 资源管理器.项目.获取
    • 存储.对象.创建
    • 存储.对象.获取
    • 存储.对象.列出

您可以通过以 Project ID 和单词 compute 开头的电子邮件地址识别此服务帐户。例如,<project-id>-compute@developer.gserviceaccount.com

创建 Citrix 云 服务帐户

要创建 Citrix Cloud 服务帐户,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,导航到 IAM 和管理 > 服务帐号
  2. 在“服务帐号”页面上,选择“创建服务帐号”。
  3. 在“创建服务帐号”页面上,输入所需信息,然后选择“创建并继续”。
  4. 在“授予此服务帐号项目访问权限”页面上,单击“选择角色”下拉菜单并选择所需角色。如果要添加更多角色,请单击“+添加其他角色”。

    每个帐号(个人或服务)都具有定义项目管理的各种角色。向此服务帐号授予以下角色:

    • 计算管理员
    • 存储管理员
    • 云构建编辑者
    • 服务帐号用户
    • 云数据存储用户
    • 云密钥管理服务加密操作员

    Cloud KMS 加密操作员需要以下权限:

    • cloudkms.cryptoKeys.get
    • 列出云密钥管理服务加密密钥
    • 获取云密钥管理服务密钥环
    • 云密钥管理服务.密钥环.列表
    • 使用 Cloud KMS 加密密钥版本进行解密
    • 使用 cloudkms 加密密钥版本进行加密

    注意:

    启用所有 API 以获取创建新服务帐户时可用的完整角色列表。

  5. 单击 继续
  6. Grant users access to this service account(授予用户访问此服务帐户的权限)页面上,添加用户或组以授予他们在此服务帐户中执行操作的权限。
  7. 单击 DONE(完成)。
  8. 导航到 IAM 主控制台。
  9. 识别已创建的服务帐户。
  10. 验证角色是否已成功分配。

注意事项:

创建服务帐户时,请考虑以下事项:

  • Grant this service account access to project(授予此服务帐户对项目的访问权限)和 Grant users access to this service account(授予用户访问此服务帐户的权限)步骤是可选的。如果您选择跳过这些可选配置步骤,则新创建的服务帐户不会显示在 IAM & Admin > IAM 页面中。
  • 要显示与服务帐户关联的角色,请添加角色而不跳过可选步骤。此过程可确保为配置的服务帐户显示角色。

Citrix 云服务帐户密钥

在 Citrix DaaS 中创建连接需要 Citrix Cloud 服务帐户密钥。密钥包含在凭据文件 (.json) 中。创建密钥后,文件会自动下载并保存到“下载”文件夹中。创建密钥时,请务必将密钥类型设置为 JSON。否则,Web Studio 无法解析它。

要创建服务帐户密钥,请导航到“IAM 和管理 > 服务帐户”,然后单击 Citrix Cloud 服务帐户的电子邮件地址。切换到“密钥”选项卡,然后选择“添加密钥 > 创建新密钥”。请务必选择 JSON 作为密钥类型。

提示:

使用 Google Cloud 控制台中的“服务帐户”页面创建密钥。我们建议您定期更改密钥以确保安全。您可以通过编辑现有 Google Cloud 连接,向 Citrix Virtual Apps and Desktops 应用程序提供新密钥。

向 Citrix Cloud 服务帐户添加角色

要向 Citrix Cloud 服务帐户添加角色,请执行以下操作:

  1. 在 Google 云控制台中,导航到 IAM 与管理 > IAM
  2. 在“IAM > 权限”页面上,找到您创建的服务帐户,该帐户可通过电子邮件地址识别。

    例如,<my-service-account>@<project-id>.iam.gserviceaccount.com

  3. 选择铅笔图标以编辑服务帐户主体的访问权限。
  4. 在所选主体选项的“编辑对“project-id”的访问权限”页面上,选择“添加其他角色”以逐个将所需角色添加到您的服务帐户,然后选择“保存”。

向 Cloud Build 服务帐户添加角色

要向 Cloud Build 服务帐户添加角色,请执行以下操作:

  1. 在 Google Cloud 控制台中,导航到 身份与访问管理和管理 > IAM
  2. IAM 页面上,找到 Cloud Build 服务帐号,该帐号可通过以 项目 ID 和单词 cloudbuild 开头的电子邮件地址进行识别。

    例如,<project-id>@cloudbuild.gserviceaccount.com

  3. 选择铅笔图标以编辑 Cloud Build 帐号角色。
  4. 在所选主体选项的“编辑对‘项目 ID’的访问权限”页面上,选择“添加其他角色”以逐个将所需角色添加到您的 Cloud Build 服务帐号,然后选择“保存”。

    注意:

    启用所有 API 以获取完整的角色列表。

2024 年 4 月 29 日之后

Citrix Cloud 在 Google Cloud 项目中使用两个独立的服务帐号:

  • Citrix Cloud 服务帐号:此服务帐号使 Citrix Cloud 能够访问 Google 项目、预配和管理计算机。此服务帐号使用 Google Cloud 生成的 密钥 对 Google Cloud 进行身份验证。

    您必须手动创建此服务帐号。

    您可以通过电子邮件地址识别此服务帐号。例如,<my-service-account>@<project-id>.iam.gserviceaccount.com

  • Cloud Compute 服务帐号:在您启用 启用 Google Cloud API 中提及的所有 API 后,此服务帐号将自动预配。要查看所有自动创建的服务帐号,请在 Google Cloud 控制台中导航到 IAM 和管理 > IAM,然后选择“包括 Google 提供的角色授予”复选框。此帐号具有 IAM 基本编辑者角色以执行操作。但是,如果您删除默认权限以获得更精细的控制,则必须添加 存储管理员 角色,该角色需要以下权限:

    • resourcemanager.projects.get
    • 存储.对象.创建
    • 存储.对象.获取
    • storage.objects.list

    您可以通过以 项目 ID 和单词 compute 开头的电子邮件地址识别此服务帐户。例如,<project-id>-compute@developer.gserviceaccount.com.

    请验证服务帐户是否已获得以下角色。

    • 云构建服务帐户
    • Compute 实例管理员
    • 服务帐户用户

Create a Citrix Cloud Service Account

要创建 Citrix Cloud 服务帐户,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,导航到 IAM 和管理 > 服务帐户
  2. 在“服务帐户”页面上,选择“创建服务帐户”。
  3. 在“创建服务帐户”页面上,输入所需信息,然后选择“创建并继续”。
  4. 在“授予此服务帐户对项目的访问权限”页面上,单击“选择角色”下拉菜单并选择所需角色。如果要添加更多角色,请单击“+添加其他角色”。

    每个帐户(个人或服务)都有定义项目管理的各种角色。向此服务帐户授予以下角色:

    • 计算管理员
    • 存储管理员
    • 云构建编辑器
    • 服务帐号用户
    • 云数据存储用户
    • 云密钥管理服务加密操作员

    Cloud KMS 加密操作员需要以下权限:

    • 获取 cloudkms 加密密钥
    • 云KMS.加密密钥.列表
    • 云KMS.密钥环.获取
    • cloudkms.keyRings.list

    注意:

    启用所有 API 以获取创建新服务帐号时可用的完整角色列表。

  5. 单击 继续
  6. 向此服务帐号授予用户访问权限页面上,添加用户或组以授予他们在此服务帐号中执行操作的权限。
  7. 单击 完成
  8. 导航到 IAM 主控制台。
  9. 识别已创建的服务帐户。
  10. 验证角色是否已成功分配。

注意事项:

创建服务帐户时,请考虑以下事项:

  • 步骤 授予此服务帐户对项目的访问权限授予用户对此服务帐户的访问权限 是可选的。如果您选择跳过这些可选配置步骤,则新创建的服务帐户不会显示在 IAM 和管理 > IAM 页面中。
  • 要显示与服务帐户关联的角色,请添加角色而不跳过可选步骤。此过程可确保为配置的服务帐户显示角色。

Citrix 云服务帐号密钥

在 Citrix DaaS 中创建连接需要 Citrix Cloud 服务帐户密钥。该密钥包含在凭据文件 (.json) 中。创建密钥后,该文件会自动下载并保存到 下载 文件夹。创建密钥时,请务必将密钥类型设置为 JSON。否则,Web Studio 无法解析它。

要创建服务帐户密钥,请导航到 IAM 和管理 > 服务帐户,然后单击 Citrix Cloud 服务帐户的电子邮件地址。切换到 密钥 选项卡,然后选择 添加密钥 > 创建新密钥。请务必选择 JSON 作为密钥类型。

提示:

使用 Google Cloud 控制台中的 服务帐户 页面创建密钥。我们建议您定期更改密钥以确保安全。您可以通过编辑现有的 Google Cloud 连接,向 Citrix Virtual Apps and Desktops 应用程序提供新密钥。

向 Citrix Cloud 服务帐户添加角色

要向 Citrix Cloud 服务帐户添加角色:

  1. 在 Google 云控制台中,导航到 IAM 和管理 > IAM
  2. IAM > 权限 页面上,找到您创建的服务帐户,该帐户可通过电子邮件地址识别。

    例如,<my-service-account>@<project-id>.iam.gserviceaccount.com

  3. 选择铅笔图标以编辑服务帐号主体的访问权限。
  4. 在选定的主体选项的“编辑对‘project-id’的访问权限”页面上,选择“添加其他角色”以逐个将所需角色添加到您的服务帐号,然后选择“保存”。

向 Cloud Compute 服务帐号添加角色

要向 Cloud Compute 服务帐号添加角色,请执行以下操作:

  1. 在 谷歌云 控制台中,导航到 IAM 和管理 > IAM
  2. 在“IAM”页面上,找到 Cloud Compute 服务帐号,该帐号可通过以“项目 ID”和单词“compute”开头的电子邮件地址进行识别。

    例如,<project-id>-compute@developer.gserviceaccount.com

  3. 选择铅笔图标以编辑 Cloud Build 帐号角色。
  4. 在选定的主体选项的“编辑对‘project-id’的访问权限”页面上,选择“添加其他角色”以逐个将所需角色添加到您的 Cloud Build 服务帐号,然后选择“保存”。

    注意:

    启用所有 API 以获取完整的角色列表。

存储相关的权限和存储桶的各项管理

Citrix Virtual Apps and Desktops 改进了针对 Google Cloud 服务 报告云构建失败的过程。此服务在 Google Cloud 上运行构建。Citrix Virtual Apps and Desktops 创建一个名为 citrix-mcs-cloud-build-logs-{region}-{5 random characters} 的存储桶,Google Cloud 服务在该存储桶中捕获构建日志信息。此存储桶上设置了一个选项,可在 30 天后删除内容。此过程要求用于连接的服务帐号具有设置为 storage.buckets.update 的 Google Cloud 权限。如果服务帐号没有此权限,Citrix Virtual Apps and Desktops 将忽略错误并继续执行目录创建过程。如果没有此权限,构建日志的大小将增加并需要手动清理。

启用专用 Google 访问

当虚拟机缺少分配给其网络接口的外部 IP 地址时,数据包仅发送到其他内部 IP 地址目标。启用私有访问时,虚拟机将连接到 Google API 和相关服务使用的外部 IP 地址集。

注意:

无论是否启用私有 Google 访问,所有具有和不具有公共 IP 地址的虚拟机都必须能够访问 Google 公共 API,尤其是在环境中安装了第三方网络设备的情况下。

为确保子网中的虚拟机无需公共 IP 地址即可访问 Google API 以进行 MCS 预配:

  1. 在谷歌云中,访问 VPC 网络配置
  2. 在“子网详细信息”屏幕中,启用私有 Google 访问

私有谷歌访问

有关详细信息,请参阅配置私有 Google 访问

重要:

如果您的网络配置为阻止虚拟机访问 Internet,请确保您的组织承担启用虚拟机所连接子网的私有 Google 访问所带来的风险。

后续步骤

更多信息

Google Cloud environments