使用 Private Service Connect 向 Looker (Google Cloud Core) 实例北向访问

本文档介绍了如何使用 Private Service Connect 配置从客户端到 Looker (Google Cloud Core) 的路由(也称为北向流量)。

创建自定义域

创建 Looker (Google Cloud Core) 实例后的第一步是设置自定义网域并更新实例的 OAuth 凭据。接下来的部分将引导您完成整个过程。

为专用 IP (Private Service Connect) 实例创建自定义网域时,自定义网域必须满足以下要求:

  • 自定义网域必须至少由三部分组成,其中至少包含一个子网域。例如 subdomain.domain.com
  • 自定义网域不得包含以下任何内容:
    • looker.com
    • google.com
    • googleapis.com
    • gcr.io
    • pkg.dev

设置自定义域名

创建 Looker (Google Cloud Core) 实例后,您可以设置自定义网域。

准备工作

在自定义 Looker (Google Cloud Core) 实例的网域之前,请先确定您网域的 DNS 记录的存储位置,以便更新这些记录。

所需的角色

如需获取为 Looker (Google Cloud Core) 实例创建自定义网域所需的权限, 请让管理员授予您 Looker Admin (roles/looker.admin) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

创建自定义网域

在 Google Cloud 控制台中,请按照以下步骤自定义 Looker (Google Cloud Core) 实例的网域:

  1. 实例页面上,点击要为其设置自定义网域的实例的名称。
  2. 点击自定义网域标签页。
  3. 点击添加自定义网域

    此时将打开添加新的自定义网域面板。

  4. 为您要使用的网站域名输入主机名(最多 64 个字符),请仅使用字母、数字和短划线。例如:looker.examplepetstore.com

  5. 点击添加新的自定义网域面板中的完成,返回到自定义网域标签页。

设置完成后,您的自定义网域会显示在 Google Cloud 控制台实例详情页面自定义网域标签页的网域列中。

创建自定义网域后,您可以查看其相关信息将其删除

更新 OAuth 凭据

  1. 在 Google Cloud 控制台中导航到 API 和服务 >凭据,然后为您的 Looker (Google Cloud Core) 实例使用的 OAuth 客户端选择 OAuth 客户端 ID。
  2. 点击添加 URI 按钮,更新 OAuth 客户端中的已获授权的 JavaScript 来源字段,使其包含您的组织将用于访问 Looker (Google Cloud Core) 的 DNS 名称。例如,如果您的自定义网域是 looker.examplepetstore.com,请输入 looker.examplepetstore.com 作为 URI。

  3. 将自定义网域更新或添加到您在创建 Looker (Google Cloud Core) 实例时使用的 OAuth 凭据已获授权的重定向 URI 列表中。将 /oauth2callback 添加到 URI 的末尾。例如,如果您的自定义网域是 looker.examplepetstore.com,则输入 looker.examplepetstore.com/oauth2callback

使用端点通过混合网络访问实例

设置自定义网域后,如需从本地或其他云提供商环境(即通过混合网络)访问实例,请执行以下步骤:

  1. 通过 Private Service Connect 端点公开 Looker (Google Cloud Core)
  2. 将端点通告到多云端和本地环境
  3. 设置 DNS

网络概览

在混合网络环境中,需要以下网络组件:

此外,您还需要设置 DNS 才能访问。

Private Service Connect 允许使用方从其 VPC 网络内部或通过混合网络以私密方式访问托管式服务。它允许代管式服务方在他们自己的独立 VPC 网络中托管这些服务,并与其使用方提供专用连接。例如,当您使用 Private Service Connect 访问 Looker (Google Cloud Core) 时,您是服务使用方,而 Looker (Google Cloud Core) 是服务提供方。

使用 Private Service Connect 部署的 Looker (Google Cloud Core) 支持端点

下图显示了 Private Service Connect 端点网络设置的示例:

用于从本地访问 Looker (Google Cloud Core) 实例的网络架构。

在该示例中,本地环境通过 Cloud Interconnect 连接到 Google Cloud 主机项目,然后通过 Cloud Router 路由到 Private Service Connect 端点,该端点连接到 Google 管理的提供方 VPC 中的服务连接。共享 VPC 托管 Cloud DNS,用于进行 API 解析。

所需的角色

角色

说明

Compute Network Admin (roles/compute.networkAdmin)

授予对 VPC 网络的完整控制权限来启动与 Looker (Google Cloud Core) 实例的连接。

Service Directory Editor (roles/servicedirectory.editor)

创建 Private Service Connect 端点。

Looker 管理员 (roles/looker.admin)

授予对 Looker (Google Cloud Core) 资源的完全控制权,包括创建启用了 Private Service Connect 的实例和创建自定义网域。

DNS 管理员 (roles/dns.admin)(可选)

授予对 Cloud DNS 资源的完全控制权,包括 DNS 区域和记录。

为 Looker (Google Cloud Core) 创建 Private Service Connect 端点

按照在 VPC 网络中创建 Private Service Connect 端点的说明执行操作。确保该网络获准对您的 Looker (Google Cloud Core) 实例进行入站流量传输,并遵循以下准则:

  • 目标服务字段(适用于 Google Cloud 控制台)或 SERVICE_ATTACHMENT 变量(如果按照 Google Cloud CLI 或 API 说明操作)设置为 Looker 服务附件 URI,您可以通过运行以下命令找到该 URI:

    gcloud looker instances describe INSTANCE_NAME --region=REGION--format=json

    替换以下内容:

    • INSTANCE_NAME:您的 Looker (Google Cloud Core) 实例的名称。
    • REGION:托管您的 Looker (Google Cloud Core) 实例的区域。
  • 您可以使用与 Looker [Google Cloud Core] 实例托管在同一区域中的任何子网。

  • 不启用全球访问权限。

如需在创建后查看端点详情,请按照查看端点详情中的说明操作。

向多云环境和本地环境通告端点

使用 Cloud Router 向您的本地网络或其他环境通告 Private Service Connect 端点的 IP 地址。

部署 Private Service Connect 端点时,将使用使用方 Virtual Private Cloud (VPC) 中的常规子网。此子网由 Cloud Router 自动通告。不过,如果您要通过 Cloud Router 选择性地通告自定义子网,请务必修改 Cloud Router 配置,以添加 Private Service Connect 端点的 IP 地址或子网。

请确保您的本地(或其他环境)防火墙允许出站流量流向 Private Service Connect 端点的 IP 地址或子网,同时考虑混合网络注意事项

设置 DNS

设置 DNS 时,您可以使用以下两种方法中的任一方法:

  • 将本地 DNS 更新为映射到 Private Service Connect 端点 IP 地址的 Looker (Google Cloud Core) 自定义网域的权威性。
  • 创建一个 Cloud DNS 专用区域,使用为 Private Service Connect 端点分配的 IP 地址创建记录集,并启用入站 DNS 转发,以允许您的 VPC 成为映射到 Private Service Connect 端点 IP 地址的 Looker(Google Cloud 核心)自定义网域的权威来源。

后续步骤