本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
特使图片
Amazon App Mesh是基于 Envo y

您必须将 Envoy 代理添加到由您的 App Mesh 终端节点代表的 Amazon ECS 任务、Kubernetes pod 或 Amazon EC2 实例,例如虚拟节点或虚拟网关。App Mesh 出售 Envoy 代理 Docker 容器镜像,并验证该容器镜像是否已使用最新的漏洞和性能补丁进行修补。在向你提供新的容器映像之前,App Mesh 会根据 App Mesh 功能集测试新的 Envoy 代理版本。
您可以从下面的列表中选择区域图像,也可以从我们的公共存储库aws-appmesh-envoy
。
-
版本
1.17
是 Envoy 的重大更新。有关更多详细信息,请参阅更新/迁移到 Envoy 1.17。 -
版本
1.20.0.1
或更高版本ARM64
兼容。 -
要获得
IPv6
支持,需要 Envoy1.13
或更高版本。
-
除
me-south-1
、、ap-east-1
ap-southeast-3
、eu-south-1
和以外的所有支持区域af-south-1
。您可以将区域代码
替换为me-south-1
、、ap-east-1
ap-southeast-3
eu-south-1
、和以外的任何区域af-south-1
。840364872350.dkr.ecr.
region-code
.amazonaws.com/aws-appmesh-envoy:v1.24.0.0-prod -
me-south-1
地区:772975370895.dkr.ecr.me-south-1.amazonaws.com/aws-appmesh-envoy:v1.24.0.0-prod
-
ap-east-1
地区:856666278305.dkr.ecr.ap-east-1.amazonaws.com/aws-appmesh-envoy:v1.24.0.0-prod
-
ap-southeast-3
地区:909464085924.dkr.ecr.ap-southeast-3.amazonaws.com/aws-appmesh-envoy:v1.24.0.0-prod
-
eu-south-1
地区:422531588944.dkr.ecr.eu-south-1.amazonaws.com/aws-appmesh-envoy:v1.24.0.0-prod
-
af-south-1
地区:924023996002.dkr.ecr.af-south-1.amazonaws.com/aws-appmesh-envoy:v1.24.0.0-prod
-
cn-north-1
地区:919366029133.dkr.ecr.cn-north-1.amazonaws.com.cn/aws-appmesh-envoy:v1.24.0.0-prod
-
cn-northwest-1
地区:919830735681.dkr.ecr.cn-northwest-1.amazonaws.com.cn/aws-appmesh-envoy:v1.24.0.0-prod
-
Public repository
public.ecr.aws/appmesh/aws-appmesh-envoy:v1.24.0.0-prod
仅支持 v1.9.0.0-prod 或更高版本与 App Mesh 一起使用。
我们建议为 Envoy 容器分配 512 个 CPU 单元和至少 64 MiB 的内存。在 Fargate 上,你可以设置的最低内存量是 1024 MiB 的内存。
从开始的所有aws-appmesh-envoy
映像发行版本v1.22.0.0
都是作为无发行版的 Docker 镜像构建的。我们进行此更改是为了减小图像大小并减少图像中存在的未使用软件包中的漏洞暴露程度。如果您在 aws-appmesh-envoy 映像之上构建并且依赖某些 AL2 基础包(例如 yum)和功能,那么我们建议您从aws-appmesh-envoy
映像内部复制二进制文件,使用 AL2 base 构建新的 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 中访问此容器映像由Amazon Identity and Access Management (IAM) 控制。因此,您必须使用 IAM 来验证您是否拥有 Amazon ECR 的读取权限。例如,在使用 Amazon ECS 时,您可以为 Amazon ECS 任务分配适当的任务执行角色。如果您使用限制访问特定 Amazon ECR 资源的 IAM 策略,请务必验证您是否允许访问标识aws-appmesh-envoy
存储库的特定区域亚马逊资源名称 (ARN)。例如,在us-west-2
区域中,您允许访问以下资源:arn:aws:ecr:us-west-2:840364872350:repository/aws-appmesh-envoy
。有关更多信息,请参阅 Amazon ECR ECR 托管策略。如果您在Amazon EC2 实例上使用 Docker,请向存储库验证 Docker。有关更多信息,请参阅注册表身份验证。
我们偶尔会发布新的 App Mesh 功能,这些功能依赖于 Envoy 的更改,这些更改尚未合并到上游 Envoy 镜像中。要在 Envoy 更改合并到上游之前使用这些新的 App Mesh 功能,必须使用 App Mesh 出售的 Envoy 容器镜像。有关更改列表,请参阅 App Mesh GitHub 路线图中的Envoy Upstream
标签问题