設定私人 IP 網路

Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1

本頁面說明如何為私人 IP 環境設定 Google Cloud專案網路。

對於私人 IP 環境,Cloud Composer 只會為環境中的代管 Google Kubernetes Engine 和 Cloud SQL VM 指派私人 IP (RFC 1918) 位址。

您也可以選擇使用私人使用的公開 IP 位址IP 偽裝代理程式,以節省 IP 位址空間並使用非 RFC 1918 位址。

如要瞭解如何連線至環境中的資源,請參閱「私人 IP」一文。

事前準備

檢查網路需求

請確認您專案的虛擬私人雲端網路符合下列條件:

  • 確認沒有任何私人 IP 區塊衝突。如果您的虛擬私有雲網路和其現有虛擬私有雲端網路對等端,與 Google 代管用戶群專案中的虛擬私有雲網路有重疊的 IP 區塊,Cloud Composer 就無法建立環境。如要瞭解各個區域使用的預設值,請參閱預設 IP 範圍表

  • 確認次要 IP 範圍足以供 Cloud Composer GKE pod 和服務使用。GKE 會搜尋次要 IP 範圍以用於 IP 別名。如果 GKE 找不到範圍,Cloud Composer 就無法建立環境。

  • 確認子網路中的次要範圍數量未超過 30 個。請考量下列事項:

    • 私人 IP 環境的 GKE 叢集會在子網路中建立兩個次要範圍。您可以為同一虛擬私有雲網路,在相同地區中建立多個子網路。
    • 支援的次要範圍數量上限為 30 個。每個私人 IP 環境都需要兩個次要範圍供 Cloud Composer GKE pod 和服務使用。
  • 請確認專案的網路可滿足連線至單一 VPC 網路的連線數量上限。您可以建立的私人 IP 環境數量上限,取決於虛擬私人雲端網路中現有的虛擬私人雲端對等互連連線數量。

  • 每個私人 IP 環境最多會使用兩個 VPC 對等互連,Cloud Composer 會為用戶群專案網路建立一個 VPC 對等互連。第二個對等互連連線是由環境的 GKE 叢集建立,且 GKE 叢集可以重複使用此連線

選擇網路、子網路和網路範圍

選擇私人 IP 環境的網路範圍 (或使用預設值)。稍後建立私人 IP 環境時,您會使用這些網路範圍。

如要建立私人 IP 環境,您必須具備下列資訊:

  • 您的虛擬私有雲網路 ID
  • 您的虛擬私有雲子網路 ID
  • 虛擬私有雲子網路中的兩個次要 IP 範圍:
    • pod 的次要 IP 範圍
    • 服務的次要 IP 範圍
  • 環境元件的 IP 範圍:

    • GKE 控制層 IP 範圍。GKE 控制層的 IP 範圍。
      • 網路伺服器 IP 範圍。
    • 網路伺服器 IP 範圍。Airflow 網路伺服器執行個體的 IP 範圍。
    • Cloud SQL IP 範圍。Cloud SQL 執行個體的 IP 範圍。

如要查看各個地區使用的預設值,請參閱預設 IP 範圍表

預設 IP 範圍

地區 GKE 控制層 IP 範圍 網路伺服器 IP 範圍 Cloud SQL IP 範圍
africa-south1 172.16.64.0/23 172.31.223.0/24 10.0.0.0/12
asia-east1 172.16.42.0/23 172.31.255.0/24 10.0.0.0/12
asia-east2 172.16.0.0/23 172.31.255.0/24 10.0.0.0/12
asia-northeast1 172.16.2.0/23 172.31.254.0/24 10.0.0.0/12
asia-northeast2 172.16.32.0/23 172.31.239.0/24 10.0.0.0/12
asia-northeast3 172.16.30.0/23 172.31.240.0/24 10.0.0.0/12
asia-south1 172.16.4.0/23 172.31.253.0/24 10.0.0.0/12
asia-south2 172.16.50.0/23 172.31.230.0/24 10.0.0.0/12
asia-southeast1 172.16.40.0/23 172.31.235.0/24 10.0.0.0/12
asia-southeast2 172.16.44.0/23 172.31.233.0/24 10.0.0.0/12
australia-southeast1 172.16.6.0/23 172.31.252.0/24 10.0.0.0/12
australia-southeast2 172.16.56.0/23 172.31.227.0/24 10.0.0.0/12
europe-central2 172.16.36.0/23 172.31.237.0/24 10.0.0.0/12
europe-north1 172.16.48.0/23 172.31.231.0/24 10.0.0.0/12
europe-southwest1 172.16.58.0/23 172.31.226.0/24 10.0.0.0/12
europe-west1 172.16.8.0/23 172.31.251.0/24 10.0.0.0/12
europe-west10 172.16.62.0/23 172.31.224.0/24 10.0.0.0/12
europe-west12 172.16.62.0/23 172.31.224.0/24 10.0.0.0/12
europe-west2 172.16.10.0/23 172.31.250.0/24 10.0.0.0/12
europe-west3 172.16.12.0/23 172.31.249.0/24 10.0.0.0/12
europe-west4 172.16.42.0/23 172.31.234.0/24 10.0.0.0/12
europe-west6 172.16.14.0/23 172.31.248.0/24 10.0.0.0/12
europe-west8 172.16.60.0/23 172.31.225.0/24 10.0.0.0/12
europe-west9 172.16.46.0/23 172.31.232.0/24 10.0.0.0/12
me-central1 172.16.58.0/23 172.31.226.0/24 10.0.0.0/12
me-central2 172.16.64.0/23 172.31.223.0/24 10.0.0.0/12
me-west1 172.16.54.0/23 172.31.228.0/24 10.0.0.0/12
northamerica-northeast1 172.16.16.0/23 172.31.247.0/24 10.0.0.0/12
northamerica-northeast2 172.16.46.0/23 172.31.232.0/24 10.0.0.0/12
northamerica-south1 172.16.68.0/23 172.31.221.0/24 10.0.0.0/12
southamerica-east1 172.16.18.0/23 172.31.246.0/24 10.0.0.0/12
southamerica-west1 172.16.58.0/23 172.31.226.0/24 10.0.0.0/12
us-central1 172.16.20.0/23 172.31.245.0/24 10.0.0.0/12
us-east1 172.16.22.0/23 172.31.244.0/24 10.0.0.0/12
us-east4 172.16.24.0/23 172.31.243.0/24 10.0.0.0/12
us-east5 172.16.52.0/23 172.31.229.0/24 10.0.0.0/12
us-south1 172.16.56.0/23 172.31.227.0/24 10.0.0.0/12
us-west1 172.16.38.0/23 172.31.236.0/24 10.0.0.0/12
us-west2 172.16.34.0/23 172.31.238.0/24 10.0.0.0/12
us-west3 172.16.26.0/23 172.31.242.0/24 10.0.0.0/12
us-west4 172.16.28.0/23 172.31.241.0/24 10.0.0.0/12

(選用) 設定連線至 Google API 和服務

您可以選擇將所有流量透過屬於 private.googleapis.com 網域的多個 IP 位址,轉送至 Google API 和服務。在這種設定中,您的環境會透過 IP 位址存取 Google API 和服務,但這些 IP 位址只能從 Google Cloud中路由。

如果您的私人 IP 環境也使用 VPC Service Controls,請改用適用於搭配 VPC Service Controls 的環境的操作說明

Cloud Composer 環境會使用下列網域:

  • *.googleapis.com 可用於存取其他 Google 服務。

  • *.pkg.dev 用於取得環境映像檔,例如在建立或更新環境時。

  • *.gcr.io 無論 Cloud Composer 版本為何,GKE 都需要與 Container Registry 網域連線。

設定與 private.googleapis.com 端點的連線:

網域 DNS 名稱 CNAME 記錄 A 記錄
*.googleapis.com googleapis.com. DNS 名稱:*.googleapis.com.
資源記錄類型:CNAME
正式名稱:googleapis.com.
資源記錄類型:A
IPv4 位址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11
*.pkg.dev pkg.dev. DNS 名稱:*.pkg.dev.
資源記錄類型:CNAME
正式名稱:pkg.dev.
資源記錄類型:A
IPv4 位址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11
*.gcr.io gcr.io. DNS 名稱:*.gcr.io.
資源記錄類型:CNAME
正式名稱:gcr.io.
資源記錄類型:A
IPv4 位址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11

如要建立 DNS 規則,請按照下列步驟操作:

  1. 建立新的 DNS 區域,並使用「DNS 名稱」做為此區域的 DNS 名稱。

    範例:pkg.dev.

  2. 新增記錄集,用於CNAME 記錄

    範例:

    • DNS 名稱:*.pkg.dev.
    • 資源記錄類型:CNAME
    • 標準名稱:pkg.dev.
  3. 新增記錄集,用於A 記錄

    範例:

    • 資源記錄類型:A
    • IPv4 位址:199.36.153.8199.36.153.9199.36.153.10199.36.153.11

詳情請參閱「設定連至 Google API 與服務的私人連線」。

(選用) 設定防火牆規則

只有在專案含有非預設防火牆規則時,才執行這個步驟,例如覆寫隱含防火牆規則或修改預設網路中的預先填入規則

舉例來說,如果您有拒絕所有傳出流量的防火牆規則,Cloud Composer 可能無法建立環境。為避免發生問題,請定義遵循清單的選擇性 allow 規則,並將其優先順序設為高於全域 deny 規則。

設定虛擬私有雲網路,允許來自環境的流量:

  • 請參閱「使用防火牆規則」,瞭解如何檢查、新增及更新 VPC 網路的規則。
  • 使用連線工具驗證 IP 範圍之間的連線。
  • 您可以使用網路標記進一步限制存取權。您可以在建立環境時設定這些代碼。
說明 方向 動作 來源或目的地 通訊協定 通訊埠
DNS 輸出 允許 任何目的地 (0.0.0.0/0) 或 DNS 伺服器 IP 位址 TCP、UDP 53
Google API 和服務 輸出 允許 您為 Google API 和服務選擇的網域的 IP 位址範圍。如果您使用預設值,請參閱「預設網域的 IP 位址」。 TCP 443
環境的叢集節點 輸出 允許 環境的子網路主要 IP 位址範圍 TCP、UDP 全部
環境的叢集 Pod 輸出 允許 環境子網路中 Pod 的次要 IP 位址範圍 TCP、UDP 全部
環境的叢集控制層 輸出 允許 GKE 控制層 IP 範圍 TCP、UDP 全部
網路伺服器 輸出 允許 網路伺服器網路 IP 範圍 TCP 3306、3307

如要取得環境叢集的 IP 範圍,請按照下列步驟操作:

  • 您可以在環境叢集的「叢集」頁面中,查看 Pod、Service 和控制層的位址範圍:

    1. 前往 Google Cloud 控制台的「Environments」頁面。

      前往「環境」

    2. 在環境清單中,按一下環境名稱。「環境詳細資料」頁面隨即開啟。

    3. 前往「環境設定」分頁。

    4. 點選「查看叢集詳細資料」連結。

  • 您可以在「環境設定」分頁中查看環境的 Web 伺服器 IP 範圍。

  • 您可以在「環境設定」分頁中查看環境的網路 ID。如要取得子網路的 IP 範圍,請前往「VPC 網路」頁面,然後按一下網路名稱查看詳細資料:

    前往「VPC Networks」(虛擬私有雲網路)

虛擬私有雲原生叢集設定

Cloud Composer 支援環境中的虛擬私有雲端原生 GKE 叢集。

建立環境時,您可以啟用虛擬私人雲端原生 (使用別名 IP),並設定網路 (例如 IP 分配),不必啟用私人 IP

由於 Airflow 工作需要虛擬私有雲原生叢集,才能與可透過私人 IP 存取的其他 VM 通訊,因此您也必須啟用虛擬私有雲原生設定,才能設定私人 IP 環境。

設定 Proxy 伺服器變數

您可以在環境中設定 http_proxyhttps_proxy 環境變數。這些標準 Linux 變數會由在環境叢集容器中執行的網路用戶端使用,用於透過指定 Proxy 轉送流量。

預設情況下,NO_PROXY 變數會設為 Google 網域和 localhost 的清單,以便將這些項目排除在 Proxy 之外:.google.com,.googleapis.com,metadata.google.internal,localhost。在 Proxy 未設定為處理 Google 服務流量的情況下,這項設定可讓您建立環境,並設定 http_proxyhttps_proxy 環境變數。

後續步驟