使用 Private Service Connect 公開存取 Looker (Google Cloud Core) 執行個體

本說明文件頁面說明如何使用 Private Service Connect,設定從用戶端到 Looker (Google Cloud Core) 的路由,也稱為輸入流量

Private Service Connect 可讓消費者從 VPC 網路內、透過混合式網路,或在部署外部區域應用程式負載平衡器時,以公開方式存取代管服務。代管服務供應商可藉此在自己的獨立虛擬私有雲網路中代管這些服務,並為消費者提供私人或公開連線。

使用 Private Service Connect 存取 Looker (Google Cloud Core) 時,您是服務消費者,而 Looker (Google Cloud Core) 是服務生產者。如要存取 Looker (Google Cloud Core),必須將消費者 VPC 新增為 Looker (Google Cloud Core) Private Service Connect 執行個體的允許 VPC

本文說明如何設定及設定自訂網域,並提供相關指引,說明如何使用 Private Service Connect 後端,透過憑證以私人或公開連線方式存取 Looker (Google Cloud Core)。

建議您透過後端應用程式負載平衡器存取 Looker (Google Cloud Core)。這項設定也允許自訂網域憑證驗證,為使用者存取權額外增添一層安全防護和控管機制。

建立自訂網域

建立 Looker (Google Cloud Core) 執行個體後,第一步是設定自訂網域,並更新執行個體的 OAuth 憑證。接下來的章節將逐步說明這個程序。

為私人連線 (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 管理員 (roles/looker.admin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

建立自訂網域

在 Google Cloud 控制台中,按照下列步驟自訂 Looker (Google Cloud Core) 執行個體的網域:

  1. 在「執行個體」頁面中,按一下要設定自訂網域的執行個體名稱。
  2. 按一下「自訂網域」分頁標籤。
  3. 按一下 [新增自訂網域]

    系統隨即會開啟「新增自訂網域」面板。

  4. 輸入要使用的網域主機名稱,最多 64 個字元,只能使用英文字母、數字和連字號,例如:looker.examplepetstore.com

  5. 按一下 [Continue] (繼續) 按鈕。

  6. 「更新 DNS 記錄」部分隨即開啟。「Data」欄位會列出連入公開 IP。

  7. 按一下「新增自訂網域」面板上的「完成」,返回「自訂網域」分頁。

更新自訂網域需要 10 到 15 分鐘。

自訂網域設定完成後,會顯示在 Google Cloud 控制台的 Looker (Google Cloud Core) 執行個體詳細資料頁面中,位於「CUSTOM DOMAIN」(自訂網域) 分頁的「Domain」(網域) 欄。

自訂網域建立完成後,您可以查看相關資訊刪除該網域。

更新 OAuth 憑證

  1. 在 Google Cloud 控制台中依序前往「API 和服務」>「憑證」,然後選取 Looker (Google Cloud Core) 執行個體使用的 OAuth 用戶端 ID,即可存取 OAuth 用戶端。
  2. 按一下「新增 URI」按鈕,更新 OAuth 用戶端的「已授權的 JavaScript 來源」欄位,加入貴機構用來存取 Looker (Google Cloud Core) 的相同 DNS 名稱。舉例來說,如果您的自訂網域是 looker.examplepetstore.com,請輸入 looker.examplepetstore.com 做為 URI。

  3. 更新或新增自訂網域至「授權重新導向 URI」清單,該清單適用於您建立 Looker (Google Cloud Core) 執行個體時使用的 OAuth 憑證。在 URI 結尾新增 /oauth2callback。舉例來說,如果您的自訂網域是 looker.examplepetstore.com,請輸入 looker.examplepetstore.com/oauth2callback

公開存取 Looker (Google Cloud Core)

設定自訂網域後,下一步是建立自行簽署的憑證或 Google 代管的憑證,並進行 DNS 授權。建立憑證後,您可以部署外部區域應用程式負載平衡器,並將Private Service Connect 後端做為後端服務。部署負載平衡器後,您可以將客戶網域和負載平衡器 IP 位址做為 A 記錄,更新公開 DNS。

必要的角色

角色

說明

Compute 網路管理員 (roles/compute.networkAdmin)

授予發起連線至 Looker (Google Cloud Core) 執行個體的虛擬私有雲網路完整控制權,包括建立及管理 HTTPS 目標 Proxy。

Compute 負載平衡器管理員角色 (roles/compute.loadBalancerAdmin)

建立 Private Service Connect 後端。

Looker 管理員 (roles/looker.admin)

授予 Looker (Google Cloud Core) 資源的完整控制權,包括建立已啟用 Private Service Connect 的執行個體,以及建立自訂網域。

DNS 管理員 (roles/dns.admin) (選用)

授予 Cloud DNS 資源的完整控制權,包括 DNS 區域和記錄。

Certificate Manager 擁有者 (roles/certificatemanager.owner) (選用)

建立及管理 Certificate Manager 資源時必須具備這項權限。

網路設定

您必須具備下列網路元件:

透過 Private Service Connect 部署的 Looker (Google Cloud Core) 支援 Private Service Connect 網路端點群組 (NEG),也就是與 Google Cloud 負載平衡器整合的後端。如要瞭解如何使用後端公開存取已啟用 Private Service Connect 的 Looker (Google Cloud Core) 執行個體,請參閱 Looker PSC Northbound Regional External L7 ALB 程式碼實驗室。

下圖顯示公開存取的 Private Service Connect 後端網路設定範例:

從地端部署使用後端存取 Looker (Google Cloud Core) 執行個體的網路架構。

如圖所示,公開用戶端會指定 Looker (Google Cloud Core) 客戶網域,執行 DNS 查詢,傳回外部區域應用程式負載平衡器的 IP 位址做為 A 記錄,藉此存取 Looker (Google Cloud Core)。負載平衡器收到流量後,後端服務 (由 Private Service Connect 後端組成) 會連線至 Google 管理的供應商 VPC 中的服務連結,該 VPC 託管 Looker (Google Cloud Core)。確認消費者 VPC 網路允許連入 Looker (Google Cloud Core) 執行個體。

疑難排解

使用 Private Service Connect 後端設定 Looker (Google Cloud Core) 執行個體的連入存取權時,可能會遇到執行個體無法順利佈建,或負載平衡器無法連上後端服務的問題。

如果負載平衡器記錄顯示 failed_to_pick_backendno healthy upstream (HTTP 503) 錯誤,且網路端點群組 (NEG) 仍處於 pending 狀態,表示缺少消費者專案的必要網路設定步驟。具體來說,用戶專案未獲授權連線至 Looker (Google Cloud Core) 生產端服務,或用戶虛擬私有雲中未建立網路連結資源。

如要解決這些問題,請務必完成下列必要網路設定步驟:

  1. 虛擬私有雲加入許可清單:在 Looker (Google Cloud Core) 設定中,將消費者網路新增至允許傳入連線的虛擬私有雲清單。新增這個網路後,消費者虛擬私有雲就能與 Looker (Google Cloud Core) 生產者服務建立連線。
  2. 網路附件設定:在消費者虛擬私有雲中建立網路附件資源,並將其與 Looker (Google Cloud Core) 執行個體建立關聯。

後續步驟