Google Cloud 环境
Citrix DaaS(以前称为 Citrix Virtual Apps and Desktops 服务)允许您在 Google Cloud 上预配和管理计算机。
要求
- Citrix Cloud 帐户。本文中介绍的功能仅在 Citrix Cloud 中提供。
- Citrix DaaS 订阅。有关详细信息,请参阅入门。
- Google Cloud 项目。该项目存储与计算机目录关联的所有计算资源。它可以是现有项目或新项目。
- 在您的 Google Cloud 项目中启用四个 API。有关详细信息,请参阅启用 Google Cloud API。
- Google Cloud 服务帐户。此服务帐户对 Google Cloud 进行身份验证,以启用对项目的访问权限。有关详细信息,请参阅配置和更新服务帐号。
- 启用 Google 专用访问权限。有关详细信息,请参阅 Enable-private-google-access。
启用 Google Cloud API
要通过Citrix Virtual Apps and Desktops 的“完整配置”界面中使用 Google Cloud 功能,请在 Google Cloud 项目中启用这些 API。
- 计算引擎 API
- 云资源管理器 API
- 身份识别和访问管理 (IAM) API
- 云构建 API
在 Google Cloud 控制台中,完成以下步骤:
-
在左上角菜单中,选择 API 和服务 > 控制板。
-
在 Dashboard(控制板)屏幕中,确保计算引擎 API 处于启用状态。如果未启用, 请按照以下步骤进行操作:
-
导航到 APIs and Services(API 和服务)> Library(库)。
-
在搜索框中,键入 Compute Engine(计算引擎)。
-
从搜索结果中,选择 Compute Engine API(计算引擎 API)。
-
在 Compute Engine API(计算引擎 API) 页面上,选择 Enable(启用)。
-
-
启用云资源管理器 API。
-
导航到 APIs and Services(API 和服务)> Library(库)。
-
在搜索框中,键入 Cloud Resource Manager(云资源管理器)。
-
在搜索结果中,选择 Cloud Resource Manager API(云资源管理器 API)。
-
在 Cloud Resource Manager API(云资源管理器 API)页面中,选择 Enable(启用)。此时将显示 API 的状态。
-
-
同样,启用身份识别和访问管理 (IAM) API 和云构建 API。
也可以使用 Google Cloud Shell 启用 API。为此,您需要:
- 打开 Google 控制台并加载 Cloud Shell。
-
在 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
- 如果 Cloud Shell 提示,请单击 Authorize(授权)。
配置和更新服务帐户
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 Service Account(Cloud Build 服务帐户):启用 Enable Google Cloud APIs(启用 Google Cloud API)中提到的所有 API 后,系统会自动预配此服务帐户。
可以通过以 Project ID(项目 ID)和 cloudbuild 一词开头的电子邮件地址来识别此服务帐户。例如,
<project-id>@cloudbuild.gserviceaccount.com
向此服务帐户授予以下角色:
- 云构建服务帐户
- 计算实例管理员
- 服务帐户用户
-
云计算服务帐户:激活计算 API 后,Google Cloud 会将此服务帐号添加到在 Google Cloud 中创建的实例中。此帐户具有 IAM 基本编辑角色来执行操作。但是,如果您删除默认权限以进行更精细的控制,则必须添加需要以下权限的存储管理员角色:
- resourcemanager.projects.get
- storage.objects.create
- storage.objects.get
- storage.objects.list
您可以通过以项目 ID 开头的电子邮件地址和 compute 一词来识别此服务帐户。例如,<project-id>-compute@developer.gserviceaccount.com
。
创建 Citrix Cloud 服务帐户
要创建 Citrix Cloud 服务帐户,请执行以下步骤:
- 在 Google Cloud 控制台中,导航至 IAM & Admin(IAM 和管理员)> Service accounts(服务帐户)。
- 在 Service accounts(服务帐户)页面上,选择 CREATE SERVICE ACCOUNT(创建服务帐户)。
- 在 Create service account(创建服务帐户)页面上,输入所需的信息,然后选择CREATE AND CONTINUE(创建并继续)。
-
在 Grant this service account access to project(授予此服务帐户对项目的访问权限)页面上,单击 elect a role(选择角色)下拉菜单并选择所需的角色。如果要添加更多角色,请单击 +ADD ANOTHER ROLE(+添加其他角色)。
注意:
在创建新的服务帐户时,请启用所有 API 以获取可用角色的完整列表。
- 单击继续。
- 在 Grant users access to this service account(授予用户对此服务帐户的访问权限)页面上,添加用户或组以授予其在此服务帐户中执行操作的权限。
- 单击完成。
- 导航到 IAM 主控制台。
- 识别创建的服务帐户。
- 验证角色是否已成功分配。
注意事项:
创建服务帐户时,请注意以下事项:
-
Grant this service account access to project(授予此服务帐户对项目的访问权限)和 Grant users access to this service account(授予用户对此服务帐户的访问权限)的步骤是可选的。如果选择跳过这些可选配置步骤,新创建的服务账号不会显示在 IAM & Admin(IAM 和管理) > IAM 页面中。
-
要显示与服务帐户关联的角色,请在不跳过可选步骤的情况下添加角色。此过程可确保为配置的服务帐户显示角色。
Citrix Cloud 服务帐户密钥
创建服务帐户时,可以选择为该帐户创建密钥。在 Citrix DaaS 中创建连接时,您需要此密钥。密钥包含在凭据文件 (.json) 中。创建密钥后,文件会自动下载并保存到下载文件夹。创建密钥时,请务必将密钥类型设置为 JSON。否则,Citrix 的“完整配置”界面无法进行解析。
提示:
使用 Google Cloud 控制台中的 Service accounts(服务帐户)页面创建密钥。出于安全考虑,我们建议您定期更改密钥。通过编辑现有 Google Cloud 连接,可以向 Citrix Virtual Apps and Desktops 应用程序提供新密钥。
向 Citrix Cloud 服务帐户添加角色
要向 Citrix Cloud 服务帐户添加角色,请执行以下操作:
- 在 Google Cloud 控制台中,导航至 IAM & Admin(IAM 和管理员)> IAM。
-
在 IAM > PERMISSIONS(权限)页面上,找到您创建的服务帐户,该帐户可通过电子邮件地址进行识别。
例如,
<my-service-account>@<project-id>.iam.gserviceaccount.com
- 选择铅笔图标以编辑对服务帐户主体的访问权限。
- 在所选主体选项的 Edit access to “project-id”(编辑对 project-id 的访问权限)页面上,选择 ADD ANOTHER ROLE(添加另一个角色)将以下角色逐个添加到您的服务帐户,然后选择 SAVE(保存)。
向 Cloud Build 服务帐户添加角色
要向 Cloud Build 服务帐户添加角色,请执行以下操作:
- 在 Google Cloud 控制台中,导航至 IAM & Admin(IAM 和管理员)> IAM。
-
在 IAM 页面上,找到 Cloud Build 服务帐户,该帐户可以使用以 Project ID(项目 ID)和 cloudbuild 一词开头的电子邮件地址进行识别。
例如,
<project-id>@cloudbuild.gserviceaccount.com
- 选择铅笔图标以编辑 Cloud Build 帐户角色。
-
在所选主体选项的 Edit access to “project-id”(编辑对 project-id 的访问权限)页面上,选择 ADD ANOTHER ROLE(添加另一个角色)将以下角色逐个添加到您的 Cloud Build 服务帐户,然后选择 SAVE(保存)。
注意:
启用所有 API 以获取完整的角色列表。
存储权限和存储桶管理
Citrix DaaS 改进了报告 Google Cloud 服务的云生成失败的过程。此服务在 Google Cloud 上运行生成过程。Citrix DaaS 会创建一个名为 citrix-mcs-cloud-build-logs-{region}-{5 random characters}
的存储桶,Google Cloud 服务将在其中捕获生成日志信息。在此存储桶上设置了一个选项,用于在 30 天后删除内容。此过程要求用于连接的服务帐户将 Google Cloud 权限设置为 storage.buckets.update
。如果服务帐户没有此权限,Citrix DaaS 将忽略错误并继续执行目录创建过程。如果没有此权限,生成日志的大小会增加,需要手动清理。
启用 Google 专用访问权限
当 VM 缺少分配给其网络接口的外部 IP 地址时,数据包仅发送到其他内部 IP 地址目标。启用专用访问时,VM 将连接到 Google API 和相关服务使用的外部 IP 地址集。
注意:
无论是否启用了专用 Google 访问权限,所有具有或没有公用 IP 地址的 VM 都必须能够访问 Google 公用 API,尤其是在环境中安装了第三方网络连接设备的情况下。
要确保子网中的 VM 能够在没有公用 IP 地址的情况下访问 Google API 以进行 MCS 预配,请执行以下操作:
- 在 Google Cloud 中,访问 VPC network configuration(VPC 网络配置)。
- 在“Subnet details”(子网详细信息)屏幕中,打开 Private Google access(Google 专用访问权限)。
有关详细信息,请参阅配置专用 Google 访问权限。
重要:
如果您的网络配置为阻止 VM 访问 Internet,请确保贵组织承担与启用 VM 所连接到的子网的专用 Google 访问权限相关的风险。
下一步的去向
- 对于简单的概念证明部署,请在要向用户交付应用程序或桌面的计算机上安装 VDA。
- 要创建和管理连接,请参阅与 Google Cloud 环境的连接
- 查看安装和配置过程中的所有步骤。