使用網址對應

本指南說明如何設定 Trusted Cloud網址對應。網址對應是一組規則,用於將傳入的 HTTP(S) 要求轉送至特定後端服務。 最簡單的網址對應涵蓋所有傳入要求路徑 (/*)。

在按照本指南操作之前,請先熟悉網址對應概念

網址對應適用於下列 Trusted Cloud 產品:

用於區域性外部應用程式負載平衡器和區域性內部應用程式負載平衡器的網址對應,也支援多項進階流量管理功能。詳情請參閱「網址對應概念:進階流量管理」。

網址對應預設值

網址對應表有兩個預設值,如下表所述。

預設類型 設定 意義
網址對應預設值 gcloud compute url-maps create

--default-service

如果沒有任何路徑比對器或主機規則與收到的網址相符,就會使用指定的預設後端服務 。
路徑比對器預設值 gcloud compute url-maps add-path-matcher

--default-service

如果網址路徑與路徑比對器相符,但沒有任何指定的--path-rules相符,就會使用指定的預設後端服務 。

主機規則

主機規則定義了一組要用來比對要求的主機。

在主機規則中,主機名稱必須是完整網域名稱 (FQDN)。主機名稱不得為 IPv4 或 IPv6 位址。例如:

  • 公司:example.com
  • 公司:web.example.com
  • 公司:*.example.com
  • 無法運作:35.244.221.250

設定網址對應

網址對應可將流量傳送至後端服務不支援後端 bucket。

主控台

如要使用 Trusted Cloud 控制台新增網址對應,請按照下列步驟操作:

  1. 前往「Load balancing」(負載平衡) 頁面

    前往「Load balancing」(負載平衡) 頁面

  2. 按一下負載平衡器的「名稱」
  3. 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯)
  4. 選取 [Host and path rules] (主機與路徑規則)
  5. 按一下 [Add host and path rule] (新增主機與路徑規則)
  6. 請填寫「Host」(主機) 或「Path」(路徑) 欄位,或者兩者皆填,然後選取一項後端服務

    1. 請輸入完整且符合資格的主機名稱,例如 web.example.com
    2. 輸入路徑,例如 /video
    3. 在「主機與路徑規則」頁面的「後端」選單中,選取可用的後端服務。
  7. 確認「Host and Path Rules」(主機與路徑規則) 左邊出現了藍色勾號,然後按一下「Update」(更新) 按鈕。

gcloud

如要使用 Google Cloud CLI 新增網址對應,請使用 url-maps create 指令:

gcloud compute url-maps create URL_MAP_NAME \
   (--default-service=DEFAULT_SERVICE) \
   [--description DESCRIPTION] \
   [--region=REGION]

針對區域性外部應用程式負載平衡器和內部應用程式負載平衡器,建立網址對應時請務必加入 --region 旗標。

如要建立路徑比對器,請使用 gcloud compute url-maps add-path-matcher 指令:

gcloud compute url-maps add-path-matcher URL_MAP_NAME \
   (--default-service=DEFAULT_SERVICE) \
   --path-matcher-name PATH_MATCHER \
   [--path-rules="PATH=SERVICE"]

此指令需要有預設的後端服務 ,這樣才能將不相符的要求傳送到預設後端服務上。--path-rules 旗標定義要求路徑與後端服務之間的對應。下列範例會將要求路徑 /video//video/* 轉送到 video-service 後端服務:

--path-rules="/video=video-service,/video/*=video-service"

如要建立主機規則,請使用 gcloud compute url-maps add-host-rule 指令:

gcloud compute url-maps add-host-rule URL_MAP_NAME \
    --hosts=[HOSTS] --path-matcher-name=PATH_MATCHER

舉例來說,下列 --hosts 值會向 www.example.com 以及任何 altostrat.com 的子網域比對要求:

--hosts=[*.altostrat.com,www.example.com]

如要變更網址對應的預設服務 ,請使用 url-maps set-default-service 指令:

gcloud compute url-maps set-default-service URL_MAP_NAME
  (--default-service=DEFAULT_SERVICE)[GCLOUD_WIDE_FLAG ...]

Terraform

如要建立地區網址對應,請使用 google_compute_region_url_map 資源

resource "google_compute_region_url_map" "default" {
  name            = "regional-l7-xlb-map"
  region          = "us-west1"
  default_service = google_compute_region_backend_service.default.id
}

列出網址對應

主控台

您無法在 Trusted Cloud 控制台中列出所有網址對應。

gcloud

如要使用 Google Cloud CLI 顯示網址對應清單,請使用 url-maps list 指令。

gcloud compute url-maps list

取得網址對應的資訊

主控台

若要取得網址對應的資訊,請依照下列步驟操作:

  1. 前往「Load balancing」(負載平衡) 頁面

    前往「Load balancing」(負載平衡)

  2. 按一下負載平衡器的「名稱」
  3. 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯)
  4. 檢視「Host and path rules」(主機與路徑規則)

gcloud

如要使用 Google Cloud CLI 取得單一網址對應的資訊,請使用 url-maps describe 指令。

gcloud compute url-maps describe URL_MAP_NAME

刪除網址對應

您必須先刪除所有參照網址對應的目標 Proxy,才能刪除網址對應。詳情請參閱「刪除目標 Proxy」。

主控台

如需刪除網址對應,請依照下列步驟操作:

  1. 前往「Load balancing」(負載平衡) 頁面

    前往「Load balancing」(負載平衡)

  2. 按一下負載平衡器的「名稱」
  3. 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯)
  4. 在「Load Balancer Details」(負載平衡器詳細資料) 頁面上,檢視「Host and path rules」(主機與路徑規則)。
  5. 按一下網址對應旁的「X」,即可刪除網址對應。網址對應就會消失。
  6. 確認「Host and Path Rules」(主機與路徑規則) 左邊出現了藍色勾號,然後按一下「Update」(更新) 按鈕。

gcloud

如要使用 Google Cloud CLI 刪除網址對應,請使用 url-maps delete 指令。刪除網址對應前,必須先刪除任何參考該網址對應的目標 HTTP Proxy。

gcloud compute url-maps delete URL_MAP_NAME [--quiet]

刪除路徑比對器

主控台

如要刪除路徑比對器,請依照下列步驟操作:

  1. 前往「Load balancing」(負載平衡) 頁面

    前往「Load balancing」(負載平衡)

  2. 按一下負載平衡器的「名稱」
  3. 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯)
  4. 選取 [Host and path rules] (主機與路徑規則)
  5. 在現有網址對應的「Paths」(路徑) 欄位,按一下路徑比對器名稱上的「x」。
  6. 確認「Host and Path Rules」(主機與路徑規則) 左邊出現了藍色勾號,然後按一下「Update」(更新) 按鈕。

gcloud

如要刪除路徑比對器,請使用 gcloud compute url-maps remove-path-matcher 指令:

gcloud compute url-maps remove-path-matcher URL_MAP_NAME \
   [--path-matcher-name PATH_MATCHER]

刪除主機規則

主控台

若要刪除主機規則,請依照下列步驟操作:

  1. 如果尚未進入「Host and path rules」(主機與路徑規則) 頁面,請前往「Load balancing」(負載平衡) 頁面。

    前往「Load balancing」(負載平衡)

  2. 按一下負載平衡器的「名稱」
  3. 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯)
  4. 選取 [Host and path rules] (主機與路徑規則)
  5. 在現有網址對應的「Hosts」(主機) 欄位中,按一下主機名稱上的「x」。
  6. 確認「Host and Path Rules」(主機與路徑規則) 左邊出現了藍色勾號,然後按一下「Update」(更新) 按鈕。

gcloud

如要從網址對應中刪除主機規則,請使用 gcloud compute url-maps remove-host-rule 指令:

gcloud compute url-maps remove-host-rule URL_MAP_NAME --host=HOST

舉例來說,若要移除的主機規則包含來自名為 my-map 網址對應的主機 altostrat.com,您需要執行下列指令:

gcloud compute url-maps remove-host-rule my-map --host altostrat.com

流量管理指南

並非所有產品都支援所有網址對應功能。網址對應會與負載平衡器搭配使用,支援多項進階流量管理功能不支援所有功能。

請參閱下表,瞭解管理作品的網址對應功能。

產品 網址對應功能和流量管理指南
區域性外部應用程式負載平衡器 負載平衡器功能:轉送和流量管理

流量管理總覽

設定流量管理

設定網址重新導向

設定 HTTP 至 HTTPS 的重新導向

主機名稱和路徑

轉送要求

Cookie

內部應用程式負載平衡器 負載平衡器功能:轉送和流量管理

流量管理總覽

設定流量管理

設定網址重新導向

設定 HTTP 至 HTTPS 的重新導向

Cookie

主機名稱和路徑

API 和 gcloud CLI 參考資料

除了 Trusted Cloud 控制台,您也可以使用 API 和 gcloud CLI 建立網址對應。

API

如需透過 REST API 使用網址對應時可用的屬性和方法說明,請參閱下列內容:

產品 API 說明文件
外部應用程式負載平衡器 urlMaps
內部應用程式負載平衡器 regionUrlMaps

gcloud CLI

如要瞭解 Google Cloud CLI 中的 Google Cloud CLI,請參閱下列內容:

  • 地區性:--region=[REGION]

如要進行進階流量管理,請使用 YAML 檔案,並透過 gcloud compute url-maps import 指令匯入檔案。

後續步驟