本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
重要
支援終止通知:2026 年 9 月 30 日, AWS 將停止支援 AWS App Mesh。2026 年 9 月 30 日之後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請參閱此部落格文章從 遷移 AWS App Mesh 至 Amazon ECS Service Connect
路由與虛擬路由器相關聯。此路由用於比對虛擬路由器的請求,並將流量分配到其相關聯的虛擬節點。如果路由符合請求,則可以將流量分配到一或多個目標虛擬節點。您可以為每個虛擬節點指定相對權重。本主題可協助您使用服務網格中的路由。
建立路由
使用 建立路由 AWS Management Console
-
在 https://https://console.aws.amazon.com/appmesh/
開啟 App Mesh 主控台。 -
選擇您要建立路由的網格。會列出您擁有和已與您共用的所有網格。
-
在左側導覽中,選擇 Virtual routers (虛擬路由器)。
-
選擇您要與新路由建立關聯的虛擬路由器。如果沒有列出,則需要先建立虛擬路由器。
-
在 Routes (路由) 表中,選擇 Create route (建立路由)。若要建立路由,您的帳戶 ID 必須列為路由的資源擁有者。
-
對於 Route name (路由名稱),指定您的路由要使用的名稱。
-
針對路由類型,選擇您要路由的通訊協定。您選取的通訊協定必須符合您為虛擬路由器選取的接聽程式通訊協定,以及您路由流量的虛擬節點。
-
(選用) 針對路由優先順序,指定要用於路由的優先順序,範圍為 0-1000。將依指定值比對路由,0 為最高優先順序。
-
(選用) 選擇其他組態。從下面的通訊協定中,選擇您為 Route 類型選取的通訊協定,並視需要在主控台中指定設定。
-
針對目標組態,選取現有的 App Mesh 虛擬節點以將流量路由到 ,並指定權重。您可以選擇新增目標以新增其他目標。所有目標的百分比最多必須加 100。如果未列出任何虛擬節點,則您必須先建立一個。如果選取的虛擬節點有多個接聽程式,則需要目標連接埠。
-
針對相符組態,指定:
比對組態不適用於
tcp
-
如果 http/http2 是選取的類型:
-
(選用) 方法 - 指定要在傳入 http/http2 請求中比對的方法標頭。
-
(選用) 連接埠比對 - 比對傳入流量的連接埠。如果此虛擬路由器有多個接聽程式,則需要連接埠比對。
-
(選用) Prefix/Exact/Regex - 符合 URL 路徑的方法。
-
字首比對 - 根據預設
/
,閘道路由的相符請求會重寫至目標虛擬服務的名稱,相符字首則會重寫至 。視您設定虛擬服務的方式而定,它可以使用虛擬路由器,根據特定字首或標頭,將請求路由到不同的虛擬節點。注意
如果您啟用以路徑/字首為基礎的比對,App Mesh 會啟用路徑標準化 (normalize_path
和 merge_slashes ),以將路徑混淆漏洞的可能性降至最低。 當參與請求的各方使用不同的路徑表示法時,會發生路徑混淆漏洞。
-
完全相符 - 精確參數會停用路由的部分相符,並確保只有在路徑符合目前 URL 時,才會傳回路由。
-
Regex 比對 - 用於描述多個 URLs可能實際識別網站上的單一頁面的模式。
-
-
(選用) 查詢參數 - 此欄位可讓您比對查詢參數。
-
(選用) 標頭 - 指定 http 和 http2 的標頭。它應該符合傳入請求,以路由到目標虛擬服務。
-
-
如果 grpc 是選取的類型:
-
服務名稱 - 要比對請求的目的地服務。
-
方法名稱 - 符合請求的目的地方法。
-
(選用) 中繼資料 -
Match
根據中繼資料的存在來指定 。所有 必須符合才能處理請求。
-
-
-
選取建立路由。
(選用) 相符
-
(選用) 輸入要符合 請求的目的地服務的服務名稱。如果您未指定名稱,則會比對對任何 服務的請求。
-
(選用) 輸入要比對請求之目的地方法的方法名稱。如果您未指定名稱,則會比對任何方法的請求。如果您指定方法名稱,則必須指定服務名稱。
(選用) 中繼資料
選擇 Add metadata (新增中繼資料)。
-
(選用) 輸入您要根據其路由的中繼資料名稱,選取相符類型,然後輸入相符值。選取反轉將符合相反項目。例如,如果您指定 的中繼資料名稱
myMetadata
、Exact 的相符類型、 的相符值123
,然後選取反轉,則路由會針對中繼資料名稱開頭為 以外的任何請求進行比對123
。 -
(選用) 選取新增中繼資料以新增最多十個中繼資料項目。
(選用) 重試政策
重試政策可讓用戶端保護自己免於間歇性的網路故障或間歇性的伺服器端故障。重試政策是選用的,但建議使用。重試逾時值會定義每次重試的逾時 (包括初始嘗試)。如果您未定義重試政策,則 App Mesh 可能會為每個路由自動建立預設政策。如需詳細資訊,請參閱預設路由重試政策。
-
針對重試逾時,輸入逾時持續時間的單位數量。如果您選擇任何通訊協定重試事件,則需要值。
-
針對重試逾時單位,選取單位。如果您選擇任何通訊協定重試事件,則需要值。
-
針對重試次數上限,輸入請求失敗時的重試次數上限。如果您選擇任何通訊協定重試事件,則需要值。我們建議值至少為兩個。
-
選取一或多個 HTTP 重試事件。我們建議至少選取 stream-error 和 gateway-error。
-
選取 TCP 重試事件。
-
選取一或多個 gRPC 重試事件。我們建議至少選取已取消和無法使用。
(選用) 逾時
-
預設值為 15 秒。如果您指定重試政策,則您在此指定的持續時間應一律大於或等於重試持續時間乘以您在重試政策中定義的重試次數上限,以便您的重試政策完成。如果您指定的持續時間大於 15 秒,則請確保為任何虛擬節點目標的接聽程式指定的逾時也大於 15 秒。如需詳細資訊,請參閱虛擬節點。
-
值為
0
會停用逾時。 -
路由可閒置的時間上限。
(選用) 相符
-
指定路由應相符的字首。例如,如果您的虛擬服務名稱是
service-b.local
,而您希望路由以配對請求和service-b.local/metrics
,則字首應該為/metrics
。指定 會/
路由所有流量。 -
(選用) 選取方法。
-
(選用) 選取結構描述。僅適用於 HTTP2 路由。
(選用) 標頭
-
(選用) 選取新增標頭。輸入您要路由的標頭名稱,選取相符類型,然後輸入相符值。選取反轉將符合相反項目。例如,如果您指定名為 的標頭
clientRequestId
,123
並選取反轉,則路由會比對具有開頭為 以外的任何標頭的任何請求123
。 -
(選用) 選取新增標頭。您最多可以新增十個標頭。
(選用) 重試政策
重試政策可讓用戶端保護自己免於間歇性的網路故障或間歇性的伺服器端故障。重試政策是選用的,但建議使用。重試逾時值會定義每次重試的逾時 (包括初始嘗試)。如果您未定義重試政策,則 App Mesh 可能會為每個路由自動建立預設政策。如需詳細資訊,請參閱預設路由重試政策。
-
針對重試逾時,輸入逾時持續時間的單位數量。如果您選擇任何通訊協定重試事件,則需要值。
-
針對重試逾時單位,選取單位。如果您選擇任何通訊協定重試事件,則需要值。
-
針對重試次數上限,輸入請求失敗時的重試次數上限。如果您選擇任何通訊協定重試事件,則需要值。我們建議值至少為兩個。
-
選取一或多個 HTTP 重試事件。我們建議至少選取 stream-error 和 gateway-error。
-
選取 TCP 重試事件。
(選用) 逾時
-
請求逾時 – 預設值為 15 秒。如果您指定重試政策,則您在此指定的持續時間應一律大於或等於重試持續時間乘以您在重試政策中定義的重試次數上限,以便您的重試政策完成。
-
閒置持續時間 – 預設值為 300 秒。
-
值為
0
會停用逾時。
注意
如果您指定大於預設值的逾時,請確定為所有虛擬節點參與者的接聽程式指定的逾時也大於預設值。不過,如果您將逾時減少到低於預設值的值,您可以選擇更新虛擬節點的逾時。如需詳細資訊,請參閱虛擬節點。
(選用) 逾時
-
閒置持續時間 – 預設值為 300 秒。
-
值為
0
會停用逾時。
刪除路由
使用 刪除路由 AWS Management Console
-
在 https://https://console.aws.amazon.com/appmesh/
開啟 App Mesh 主控台。 -
選擇您要從中刪除路由的網格。會列出您擁有和已與您共用的所有網格。
-
在左側導覽中,選擇 Virtual routers (虛擬路由器)。
-
選擇您要從中刪除路由的路由器。
-
在路由表中,選擇您要刪除的路由,然後選取右上角的刪除。
-
在確認方塊中,輸入
delete
,然後按一下刪除。