本页面介绍 VPC Service Controls 和专用集群的工作原理,以及 在 Cloud Workstations 中进行设置。
VPC Service Controls
VPC Service Controls 可为您的工作站提供额外的安全保护, 降低数据渗漏的风险。使用 VPC Service Controls 将项目部署到服务边界,从而帮助保护资源和服务免受 来自边界外的请求
以下是在 Google Cloud 控制台中使用 Cloud Workstations 的要求 VPC 服务边界:
- 为了帮助保护 Cloud Workstations 工作站,您必须限制 只要将服务边界内的 Compute Engine API 限制 Cloud Workstations API。
确保 Google Cloud Storage API、Google Container Registry API 和 Artifact Registry API <ph type="x-smartling-placeholder"></ph> 在您的服务中可访问 VPC 边界。这是将映像拉取到工作站的必要条件。 我们还建议您允许使用 Cloud Logging API 和 Cloud Error Reporting API 可通过 VPC 网络访问 但使用 Cloud IAM Cloud Workstations。
- 确保您的工作站集群 private。 配置专用集群会阻止与工作站的连接 从 VPC 服务边界外访问Cloud Workstations 服务阻止在 VPC 中创建公共集群 服务边界
- 确保在工作站中关闭公共 IP 地址
配置。否则会导致虚拟机具有公共 IP
项目中的其他地址我们强烈建议您使用
constraints/compute.vmExternalIpAccess
用于为所有虚拟机关闭公共 IP 地址的组织政策限制条件 位于您的 VPC 服务边界内有关详情,请参阅 将外部 IP 地址限制为 虚拟机。
如需详细了解服务边界,请参阅服务边界详情和配置。
架构
将工作站集群配置为专用集群时, 工作站集群只有一个内部 IP 地址。这意味着 从公共互联网连接到属于 工作站集群。如需使用专用集群,您必须手动连接到 将您的本地网络安全地连接到 Private Service Connect 端点。
使用专用集群的配置需要两个 PSC 端点:
默认情况下,Cloud Workstations 会创建一个单独的 PSC 端点 将控制平面连接到工作站虚拟机。
您必须 为专用集群创建额外的 PSC 端点。 如需从本地机器连接到 您的本地机器必须 VPC 网络。使用 Cloud VPN 或 Cloud Interconnect 将运行机器的外部网络连接到 VPC 。必须在同一网络中创建此附加 PSC 端点 您的外部网络通过 Cloud VPN 连接到该 VPN 网关的 或 Cloud Interconnect
下图展示了专用集群的示例架构:
准备工作
在开始之前,请确保您已完成以下必要的设置步骤:
- 登录您的 Google Cloud 账号。如果您是 Google Cloud 新手,请创建一个账号来评估我们的产品在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Enable the Cloud Workstations API.
-
确保您拥有 Cloud Workstations Admin IAM 角色 以便您可以创建工作站配置。 如需在 Google Cloud 控制台中查看您的 IAM 角色,请前往 IAM 页面:
<ph type="x-smartling-placeholder"></ph> 前往 IAM
-
Cloud Workstations 托管在从 Compute Engine 的预配置的公共实例启动的虚拟机上
Container-Optimized OS (COS)
图片。如果
constraints/compute.trustedimageProjects
组织 政策限制条件时,您必须 设置映像访问限制 允许用户通过projects/cos-cloud
或所有公共映像创建启动磁盘。 -
可选:启用 Container File System API 以加快工作站的启动速度。
如需了解详情,请参阅 借助 映像流式传输。
Create a private cluster(创建专用集群)
如需创建专用集群,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Cloud Workstations 页面。
前往工作站的集群管理页面。
点击创建。
输入名称,然后为您的工作站集群选择一个区域。
在“网络”部分,选择此项目中的网络。
选择网络和子网。
对于网关类型,选择专用网关。
可选:指定一个或多个托管 Private Service Connect 端点,可让您通过 HTTP 协议访问您的 专用集群默认情况下,只能在 工作站集群项目和 VPC 网络宿主项目(如果不同)。 如果需要,还可以在创建集群后指定这些项目。
点击创建。
启用专用集群连接
客户端无法从 公共互联网。客户端必须位于连接到 使用 Cloud Build Private Service Connect (PSC)。 请按照本部分中的步骤连接到工作站:
使用 Cloud DNS 创建 DNS 记录,用于映射 连接到 PSC 端点。
创建 Private Service Connect 端点
请按照以下步骤创建 PSC 端点:
在 Google Cloud 控制台中,前往 Private Service Connect。
点击连接的端点标签页,然后点击 添加连接端点。
对于目标,选择已发布的服务。
在 Target service(目标服务)字段中,输入创建的服务连接 URI 适用于工作站集群前往工作站即可找到该标志 集群上,然后查找服务连接 URI 字段 (位于广告联盟设置下)。
在端点字段中,输入端点名称。
为端点选择网络,然后选择子网。 此网络应该是您要用于连接的网络 而且必须是外部网络所在的网络 连接到 Cloud VPN 或 Cloud Interconnect。
为端点选择一个 IP 地址。
如果您需要新的 IP 地址,请选择创建 IP 地址:
- 为 IP 地址输入名称和可选的描述。
- 对于静态 IP 地址,请选择自动分配。 对于自定义 IP 地址,请选择让我自行选择 并输入您要使用的 IP 地址。
- 对于用途,请选择非共享。
- 点击预留。
从下拉列表中选择命名空间,或创建新的命名空间。 系统会根据所选子网填充区域。
点击添加端点。
复制端点的 IP 地址,以供下次使用 部分至 创建专用 DNS 区域和 DNS 记录。
创建专用 DNS 区域
请按照以下步骤为此工作站集群创建专用 DNS 区域
(DNS 名称设置为您的 clusterHostname
),您可以通过
导航到控制台上的工作站集群。
在 Google Cloud Console 中,转到创建 DNS 可用区页面。
对于可用区类型,请选择专用。
输入可用区名称,例如
private-workstations-cluster-zone
。为专用地区输入 DNS 名称后缀。可用区中的所有记录 共享此后缀。将此名称设置为您的
clusterHostname
。如需查找您的
clusterHostname
,请前往 Cloud Workstations 网站 > Google Cloud 控制台中的集群管理页面,以及 然后点击工作站集群以查看主机名。可选:添加说明。
在选项下,选择默认(专用)。
选择您在创建 PSC 端点在 上一部分 因为 IP 地址仅在该网络上有效
点击创建。
如需详细了解专用 DNS 区域,请参阅 Cloud DNS 关于如何使用 创建专用区域 和 Cloud DNS 专用区域的最佳做法。
创建 DNS 记录
添加将 *.<clusterHostname>
映射到 IP 的记录
创建 Private Service Connect 端点时预留的地址,
请按以下步骤操作:
在 Google Cloud 控制台中,进入 Cloud DNS 区域页面。
点击要在其中添加记录的托管区域的名称。
在区域详情页面上,点击添加标准。
在 Create record set(创建记录集)页面上,在 DNS name(DNS 名称)字段中输入
*.<clusterHostname>
。在 IP 地址字段中,输入您为自己网站预留的 IP 地址。 Private Service Connect 端点。
点击创建。
您的 VPC 网络现在应连接到工作站 您可以使用此网络连接到工作站。
在本地启用 DNS 解析
要在工作站上使用基于浏览器的默认编辑器,请使用 虚拟机连接到 VPC 网络。您可以使用 Cloud VPN 或 Cloud Interconnect 从运行浏览器的外部网络连接到 VPC 。
如需从外部网络进行连接,您需要在外部网络中配置 DNS。与上述步骤类似,您可以为 clusterHostname
创建 DNS 区域,并添加一条将 *.<clusterHostname>
映射到该 IP 的记录
地址。或者,您也可以设置
DNS 转发区域或 DNS 服务器政策
让您可以在本地和 Google Cloud 环境之间查找 DNS 名称。
您可能还需要在本地添加 *cloudworkstations.dev
基础设施的许可名单