本指南說明如何設定 Trusted Cloud網址對應。網址對應是一組規則,用於將傳入的 HTTP(S) 要求轉送至特定後端服務。
最簡單的網址對應涵蓋所有傳入要求路徑 (/*
)。
在按照本指南操作之前,請先熟悉網址對應概念。
網址對應適用於下列 Trusted Cloud 產品:
用於區域性外部應用程式負載平衡器和區域性內部應用程式負載平衡器的網址對應,也支援多項進階流量管理功能。詳情請參閱「網址對應概念:進階流量管理」。
網址對應預設值
網址對應表有兩個預設值,如下表所述。
預設類型 | 設定 | 意義 |
---|---|---|
網址對應預設值 | gcloud compute url-maps create
|
如果沒有任何路徑比對器或主機規則與收到的網址相符,就會使用指定的預設後端服務 。 |
路徑比對器預設值 | gcloud compute url-maps add-path-matcher
|
如果網址路徑與路徑比對器相符,但沒有任何指定的--path-rules 相符,就會使用指定的預設後端服務 。 |
主機規則
主機規則定義了一組要用來比對要求的主機。
在主機規則中,主機名稱必須是完整網域名稱 (FQDN)。主機名稱不得為 IPv4 或 IPv6 位址。例如:
- 公司:
example.com
- 公司:
web.example.com
- 公司:
*.example.com
- 無法運作:
35.244.221.250
設定網址對應
網址對應可將流量傳送至後端服務不支援後端 bucket。
主控台
如要使用 Trusted Cloud 控制台新增網址對應,請按照下列步驟操作:
- 前往「Load balancing」(負載平衡) 頁面。
- 按一下負載平衡器的「名稱」。
- 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「 Edit」(編輯)。
- 選取 [Host and path rules] (主機與路徑規則)。
- 按一下 [Add host and path rule] (新增主機與路徑規則)。
請填寫「Host」(主機) 或「Path」(路徑) 欄位,或者兩者皆填,然後選取一項後端服務。
- 請輸入完整且符合資格的主機名稱,例如
web.example.com
。 - 輸入路徑,例如
/video
。 - 在「主機與路徑規則」頁面的「後端」選單中,選取可用的後端服務。
- 請輸入完整且符合資格的主機名稱,例如
確認「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 資源。
列出網址對應
主控台
您無法在 Trusted Cloud 控制台中列出所有網址對應。
gcloud
如要使用 Google Cloud CLI 顯示網址對應清單,請使用 url-maps list
指令。
gcloud compute url-maps list
取得網址對應的資訊
主控台
若要取得網址對應的資訊,請依照下列步驟操作:
- 前往「Load balancing」(負載平衡) 頁面。
- 按一下負載平衡器的「名稱」。
- 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯) 。
- 檢視「Host and path rules」(主機與路徑規則)。
gcloud
如要使用 Google Cloud CLI 取得單一網址對應的資訊,請使用 url-maps describe
指令。
gcloud compute url-maps describe URL_MAP_NAME
刪除網址對應
您必須先刪除所有參照網址對應的目標 Proxy,才能刪除網址對應。詳情請參閱「刪除目標 Proxy」。
主控台
如需刪除網址對應,請依照下列步驟操作:
- 前往「Load balancing」(負載平衡) 頁面。
- 按一下負載平衡器的「名稱」。
- 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯) 。
- 在「Load Balancer Details」(負載平衡器詳細資料) 頁面上,檢視「Host and path rules」(主機與路徑規則)。
- 按一下網址對應旁的「X」,即可刪除網址對應。網址對應就會消失。
- 確認「Host and Path Rules」(主機與路徑規則) 左邊出現了藍色勾號,然後按一下「Update」(更新) 按鈕。
gcloud
如要使用 Google Cloud CLI 刪除網址對應,請使用 url-maps delete
指令。刪除網址對應前,必須先刪除任何參考該網址對應的目標 HTTP Proxy。
gcloud compute url-maps delete URL_MAP_NAME [--quiet]
刪除路徑比對器
主控台
如要刪除路徑比對器,請依照下列步驟操作:
- 前往「Load balancing」(負載平衡) 頁面。
- 按一下負載平衡器的「名稱」。
- 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯) 。
- 選取 [Host and path rules] (主機與路徑規則)。
- 在現有網址對應的「Paths」(路徑) 欄位,按一下路徑比對器名稱上的「x」。
- 確認「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]
刪除主機規則
主控台
若要刪除主機規則,請依照下列步驟操作:
- 如果尚未進入「Host and path rules」(主機與路徑規則) 頁面,請前往「Load balancing」(負載平衡) 頁面。
- 按一下負載平衡器的「名稱」。
- 在「Load Balancer Details」(負載平衡器詳細資料) 頁面中,按一下所選負載平衡器的「Edit」(編輯) 。
- 選取 [Host and path rules] (主機與路徑規則)。
- 在現有網址對應的「Hosts」(主機) 欄位中,按一下主機名稱上的「x」。
- 確認「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
流量管理指南
並非所有產品都支援所有網址對應功能。網址對應會與負載平衡器搭配使用,支援多項進階流量管理功能不支援所有功能。
請參閱下表,瞭解管理作品的網址對應功能。
產品 | 網址對應功能和流量管理指南 | 區域性外部應用程式負載平衡器 | 負載平衡器功能:轉送和流量管理 |
---|---|
內部應用程式負載平衡器 | 負載平衡器功能:轉送和流量管理 |
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
指令匯入檔案。
後續步驟
- 請參閱網址對應總覽,瞭解網址對應的運作方式。
- 如要瞭解網址對應在外部應用程式負載平衡器中的作用方式,請參閱「外部應用程式負載平衡器總覽」一文。
- 如要瞭解網址對應在內部應用程式負載平衡器中的作用方式,請參閱「內部應用程式負載平衡器總覽」一文。