

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Envoy 影像
<a name="envoy"></a>

**重要**  
支援終止通知：在 2026 年 9 月 30 日， AWS 將停止對 的支援 AWS App Mesh。2026 年 9 月 30 日之後，您將無法再存取 AWS App Mesh 主控台或 AWS App Mesh 資源。如需詳細資訊，請參閱此部落格文章[從 遷移 AWS App Mesh 至 Amazon ECS Service Connect](https://aws.amazon.com/blogs/containers/migrating-from-aws-app-mesh-to-amazon-ecs-service-connect)。

AWS App Mesh 是以 [Envoy](https://www.envoyproxy.io/) 代理為基礎的服務網格。

![](http://docs.aws.amazon.com/zh_tw/app-mesh/latest/userguide/images/proxy.png)


您必須將 Envoy 代理新增至 App Mesh 端點所代表的 Amazon ECS 任務、Kubernetes Pod 或 Amazon EC2 執行個體，例如虛擬節點或虛擬閘道。App Mesh 提供 Envoy 代理容器映像，並修補最新的漏洞和效能更新。App Mesh 會根據 App Mesh 功能集測試每個新的 Envoy 代理版本，然後再為您提供新的映像。

## Envoy 映像變體
<a name="envoy-variants"></a>

App Mesh 提供兩種 Envoy 代理容器映像變體。兩者之間的差異在於 Envoy 代理如何與 App Mesh 資料平面通訊，以及 Envoy 代理如何互相通訊。一個是與標準 App Mesh 服務端點通訊的標準映像。另一個變體符合 FIPS 規範，可與 App Mesh FIPS 服務端點通訊，並在 App Mesh 服務之間的 TLS 通訊中強制執行 FIPS 密碼編譯。

您可以從以下清單中選擇區域映像，或從我們名為 的[公有儲存庫](https://gallery.ecr.aws/appmesh/aws-appmesh-envoy)中選擇映像`aws-appmesh-envoy`。

**重要**  
從 2023 年 6 月 30 日開始，只有 Envoy 映像`v1.17.2.0-prod`或更新版本與 App Mesh 相容。對於在 之前使用 Envoy 映像的目前客戶`v1.17.2.0`，雖然現有的 Envoy 將繼續相容，但我們強烈建議遷移至最新版本。
最佳實務是，強烈建議定期將 Envoy 版本升級至最新版本。只有最新的 Envoy 版本會使用最新的安全修補程式、功能版本和效能改進進行驗證。
版本 `1.17` 是 Envoy 的重大更新。如需詳細資訊，請參閱[更新/遷移至 Envoy 1.17。](https://docs.aws.amazon.com/app-mesh/latest/userguide/1.17-migration.html)
版本 `1.20.0.1`或更新版本`ARM64`相容。
如需`IPv6`支援，需要 Envoy 版本 `1.20` 或更新版本。

**注意**  
FIPS 僅適用於美國和加拿大的 區域。

所有[支援](https://docs.aws.amazon.com/general/latest/gr/appmesh.html)的區域都可以將{{區域碼}}取代為 `me-south-1`、`ap-east-1`、`ap-southeast-3`、`eu-south-1`、 `il-central-1`和 以外的任何區域`af-south-1`。  
標準  

```
840364872350.dkr.ecr.{{region-code}}.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```
符合 FIPS 規範  

```
840364872350.dkr.ecr.{{region-code}}.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod-fips
```

`me-south-1`  
標準  

```
772975370895.dkr.ecr.me-south-1.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```

`ap-east-1`  
標準  

```
856666278305.dkr.ecr.ap-east-1.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```

`ap-southeast-3`  
標準  

```
909464085924.dkr.ecr.ap-southeast-3.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```

`eu-south-1`  
標準  

```
422531588944.dkr.ecr.eu-south-1.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```

`il-central-1`  
標準  

```
564877687649.dkr.ecr.il-central-1.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```

`af-south-1`  
標準  

```
924023996002.dkr.ecr.af-south-1.amazonaws.com/aws-appmesh-envoy:v1.34.13.0-prod
```

`Public repository`  
標準  

```
public.ecr.aws/appmesh/aws-appmesh-envoy:v1.34.13.0-prod
```
符合 FIPS 規範  

```
public.ecr.aws/appmesh/aws-appmesh-envoy:v1.34.13.0-prod-fips
```

**注意**  
我們建議將 512 個 CPU 單位和至少 64 MiB 的記憶體配置給 Envoy 容器。在 Fargate 上，您可以設定的最低記憶體量為 1024 MiB 的記憶體。如果容器洞察或其他指標指出由於負載較高而導致資源不足，則可以增加 Envoy 容器的資源配置。

**注意**  
從 開始的所有`aws-appmesh-envoy`映像發行版本`v1.22.0.0`都是建置為無痕的 Docker 映像。我們進行此變更，以便減少映像大小，並減少映像中未使用套件的漏洞暴露。如果您是在 aws-appmesh-envoy 映像的基礎上建置，並且依賴某些 AL2 基礎套件 （例如 yum) 和功能，則建議您從`aws-appmesh-envoy`映像內複製二進位檔，以使用 AL2 基礎建置新的 Docker 映像。  
執行此指令碼以產生具有 標籤的自訂 Docker 映像 `aws-appmesh-envoy:v1.22.0.0-prod-al2:`  

```
cat << EOF > Dockerfile
FROM public.ecr.aws/appmesh/aws-appmesh-envoy:v1.22.0.0-prod as envoy

FROM public.ecr.aws/amazonlinux/amazonlinux:2
RUN yum -y update && \
    yum clean all && \
    rm -rf /var/cache/yum

COPY --from=envoy /usr/bin/envoy /usr/bin/envoy
COPY --from=envoy /usr/bin/agent /usr/bin/agent
COPY --from=envoy /aws_appmesh_aggregate_stats.wasm /aws_appmesh_aggregate_stats.wasm

CMD [ "/usr/bin/agent" ]
EOF

docker build -f Dockerfile -t aws-appmesh-envoy:v1.22.0.0-prod-al2 .
```

在 Amazon ECR 中存取此容器映像是由 AWS Identity and Access Management (IAM) 控制。因此，您必須使用 IAM 來驗證您是否具有 Amazon ECR 的讀取存取權。例如，使用 Amazon ECS 時，您可以將適當的任務執行角色指派給 Amazon ECS 任務。如果您使用限制存取特定 Amazon ECR 資源的 IAM 政策，請務必確認您允許存取識別`aws-appmesh-envoy`儲存庫的區域特定 Amazon Resource Name (ARN)。例如，在 `us-west-2`區域中，您可以允許存取下列資源：`arn:aws:ecr:us-west-2:840364872350:repository/aws-appmesh-envoy`。如需更多資訊，請參閱 [Amazon ECR 受管政策](https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr_managed_policies.html)。如果您在 Amazon EC2 執行個體上使用 Docker，請向儲存庫驗證 Docker。如需詳細資訊，請參閱[登錄檔身分驗證](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)。

我們偶爾會發佈新的 App Mesh 功能，這些功能取決於尚未合併到上游 Envoy 映像的 Envoy 變更。若要在 Envoy 變更在上游合併之前使用這些新的 App Mesh 功能，您必須使用 App Mesh 提供的 Envoy 容器映像。如需變更清單，請參閱 `Envoy Upstream`標籤的 [App Mesh GitHub 藍圖問題](https://github.com/aws/aws-app-mesh-roadmap/labels/Envoy%20Upstream)。我們建議您使用 App Mesh Envoy 容器映像作為最佳支援選項。