本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
服務網格
重要
支援終止通知:2026 年 9 月 30 日 AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日後,您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊,請造訪此部落格文章,從 遷移 AWS App Mesh 至 Amazon ECS Service Connect
服務網格是在它之內各服務之間網路流量的邏輯邊界。建立您的服務網格後,您可以建立虛擬服務、虛擬節點、虛擬路由器和路由,以分配網格中的應用程式之間的流量。
建立服務網格
注意
建立網格時,您必須新增命名空間選擇器。如果命名空間選擇器是空的,則會選取所有命名空間。若要限制命名空間,請使用標籤將 App Mesh 資源與建立的網格建立關聯。
- AWS Management Console
-
若要使用 建立服務網格 AWS Management Console
-
在 開啟 App Mesh 主控台https://console.aws.amazon.com/appmesh/
。 -
選擇 Create mesh (建立網格)。
-
對於 Mesh name (網格名稱),為您的服務網格指定名稱。
-
(選用) 選擇允許外部流量 。根據預設,網格中的代理僅互相轉送流量。如果您允許外部流量,則網格中的代理也會將TCP流量直接轉送至未透過網格中定義的代理部署的 服務。
注意
如果您在使用
ALLOW_ALL
時在虛擬節點上指定任何後端,您必須指定該虛擬節點的所有輸出作為後端。否則,ALLOW_ALL
將不再適用於該虛擬節點。 -
IP 版本偏好設定
透過切換覆寫預設 IP 版本行為 來控制網格內流量應使用的 IP 版本。根據預設,App Mesh 會使用各種 IP 版本。
注意
網格會將 IP 偏好設定套用至網格內的所有虛擬節點和虛擬閘道。當您建立或編輯節點時,可透過設定 IP 偏好設定,覆寫個別虛擬節點上的此行為。虛擬閘道上的 IP 偏好設定無法覆寫,因為虛擬閘道的組態允許它們同時接聽兩者IPv4,而無論網格上設定哪個偏好設定,IPv6流量都相同。
預設
-
Envoy 的DNS解析程式偏好
IPv6
,並回到IPv4
。 -
如果 AWS Cloud Map 可用,我們會使用 傳回
IPv4
的地址,並回復為使用該IPv6
地址。 -
為本機應用程式建立的端點會使用
IPv4
地址。 -
Envoy 接聽程式會繫結至所有
IPv4
地址。
-
IPv6 偏好
-
Envoy 的DNS解析程式偏好
IPv6
,並回到IPv4
。 -
如果可用,則會使用 AWS Cloud Map 傳回
IPv6
的地址,並回復為使用該IPv4
地址 -
為本機應用程式建立的端點使用
IPv6
地址。 -
Envoy 接聽程式會繫結至所有
IPv4
和IPv6
地址。
-
IPv4 偏好
-
Envoy 的DNS解析程式偏好
IPv4
,並回到IPv6
。 -
如果 AWS Cloud Map 可用,我們會使用 傳回
IPv4
的地址,並回復為使用該IPv6
地址。 -
為本機應用程式建立的端點會使用
IPv4
地址。 -
Envoy 接聽程式會繫結至所有
IPv4
和IPv6
地址。
-
IPv6 僅限
-
Envoy 的DNS解析程式僅使用
IPv6
。 -
只會 AWS Cloud Map 使用 傳回
IPv6
的地址。如果 AWS Cloud Map 傳回IPv4
地址,則不會使用 IP 地址,而空白結果會傳回至 Envoy。 -
為本機應用程式建立的端點使用
IPv6
地址。 -
Envoy 接聽程式會繫結至所有
IPv4
和IPv6
地址。
-
IPv4 僅限
-
Envoy 的DNS解析程式僅使用
IPv4
。 -
只會 AWS Cloud Map 使用 傳回
IPv4
的地址。如果 AWS Cloud Map 傳回IPv6
地址,則不會使用 IP 地址,而空白結果會傳回至 Envoy。 -
為本機應用程式建立的端點會使用
IPv4
地址。 -
Envoy 接聽程式會繫結至所有
IPv4
和IPv6
地址。
-
-
選擇 Create mesh (建立網格) 以完成。
-
(選用) 與其他 帳戶共用網格。共用網格可讓不同帳戶建立的資源在相同的網格中彼此通訊。如需詳細資訊,請參閱使用共用網格。
-
- AWS CLI
-
使用 建立網格 AWS CLI。
使用下列命令建立服務網格 (取代
red
您自己的值):-
aws appmesh create-mesh --mesh-name
meshName
-
輸出範例:
{ "mesh":{ "meshName":"meshName", "metadata":{ "arn":"arn:aws:appmesh:
us-west-2
:123456789012:mesh/meshName", "createdAt":"2022-04-06T08:45:50.072000-05:00", "lastUpdatedAt":"2022-04-06T08:45:50.072000-05:00", "meshOwner": "123456789012", "resourceOwner": "123456789012", "uid":"a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version":1 }, "spec":{}, "status":{ "status":"ACTIVE" } } }
如需使用 AWS CLI for App Mesh 建立網格的詳細資訊,請參閱 AWS CLI 參考中的 create-mesh 命令。
-
刪除網格
- AWS Management Console
-
使用 刪除虛擬閘道 AWS Management Console
-
在 開啟 App Mesh 主控台https://console.aws.amazon.com/appmesh/
。 -
選擇要刪除的網格。會列出您擁有和與您共用的所有網格。
-
在確認方塊中,輸入
delete
,然後按一下刪除 。
-
- AWS CLI
-
若要使用 刪除網格 AWS CLI
-
使用下列命令刪除您的網格 (取代
red
您自己的值):aws appmesh delete-mesh \ --mesh-name
meshName
-
輸出範例:
{ "mesh": { "meshName": "meshName", "metadata": { "arn":"arn:aws:appmesh:
us-west-2
:123456789012:mesh/meshName", "createdAt": "2022-04-06T08:45:50.072000-05:00", "lastUpdatedAt": "2022-04-07T11:06:32.795000-05:00", "meshOwner": "123456789012", "resourceOwner": "123456789012", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": {}, "status": { "status": "DELETED" } } }
如需使用 AWS CLI for App Mesh 刪除網格的詳細資訊,請參閱 AWS CLI 參考中的 delete-mesh 命令。
-