amazon-ecs

无法在 Amazon ECS 上设置 Envoy 前端代理
amazon-ecs

无法在 Amazon ECS 上设置 Envoy 前端代理

我正在尝试使用 Amazon Elastic Container Service (ECS) 上的 Envoy Sidecar 容器设置 Envoy 前端代理,参考此关联。 Envoy Sidecar 配置如下: #service-envoy.yaml static_resources: listeners: - address: socket_address: address: 0.0.0.0 port_value: 80 filter_chains: - filters: ...

Admin

将 AssignPublicIp 设置更改为使用 CodeDeploy 部署控制器部署的 ECS 服务
amazon-ecs

将 AssignPublicIp 设置更改为使用 CodeDeploy 部署控制器部署的 ECS 服务

我有一个通过 AWS CloudFormation 堆栈部署的 ECS Fargate 服务,并且NetworkConfiguration.AwsvpcConfiguration.AssignPublicIp设置为ENABLED。我想将该值更改为DISABLED。 但是,在部署更新的堆栈时,它会出现错误并回滚,并显示以下消息: 提供的请求无效:UpdateService 错误:无法使用 CODE_DEPLOY 部署控制器更新服务上的网络参数。使用 AWS CodeDeploy 触发新部署。 有没有办法使用 CodeDeploy 部署执行此更改?如果没有,...

Admin

AWS 上的 NAT 网关成本
amazon-ecs

AWS 上的 NAT 网关成本

我在 AWS 上有一个 Django 应用程序,使用 VPC 后面的 ECS Fargate。此设置需要 NAT 网关,但大部分成本来自 NAT 网关。 我该如何减少这个量?我的 docker 镜像是 600 MB。在 cloudwatch 中有一个图表,我浏览了一下,通过 NAT 网关生成了这么多字节。不确定这是正常量还是高量(峰值为 124M 字节 == 0.124GB)。 如果您需要任何其他信息,请在评论中询问。 ...

Admin

将 AWS ECS 集群 IPV4 迁移到 IPV6
amazon-ecs

将 AWS ECS 集群 IPV4 迁移到 IPV6

我正在尝试避免这笔新费用(公共 IPv4) 在 AWS 中用于小型项目,因为它将占成本的很大一部分。 在我的 ECS 集群中,我使用 EC2 实例作为容量提供者,因此,我遵循本文档让每个新的 EC2 实例都使用 IPV6 而不是 IPV4——这是有效的。 但是这些实例不会加入集群以成为容量提供者,因此服务将无法正常运行。此集群在 IPV4 下运行良好。我在子网中尝试了不同的配置,例如: 启动时启用资源名称 DNS A 记录 启动时启用资源名称 DNS AAAA 记录 主机名类型:资源名称 主机名类型:IP 名...

Admin

无法通过 SSH 访问 ASG 启动的 EC2 实例,但我可以访问其他方面相同的实例
amazon-ecs

无法通过 SSH 访问 ASG 启动的 EC2 实例,但我可以访问其他方面相同的实例

我正在尝试通过 SSH 连接到与 ECS 服务关联的 ASG 中的 EC2 实例。为了缩小问题范围,我从同一个启动模板创建了新实例。我仔细验证了我使用的模板版本是否相同,甚至手动翻阅并验证了所有内容(IP 地址等唯一元素除外)是否相同:相同的密钥对、VPC、子网、可用区、安全组、IAM 角色。 我看到的唯一区别是相关的 ASG 和第二个网络接口。 我将非常感激任何关于如何解决此问题的建议或指导。如果有人能给我提供好的资源,我很乐意阅读手册,但到目前为止,我在 AWS 文档迷宫中有点迷失了方向。 编辑:为了添加一些背景信息,我还注意到,我通过 ECS 服务运行...

Admin

FROM php:7.4-fpm-alpine app.dockerfile 在添加 sh 文件作为入口点运行时导致 fastcgi 错误
amazon-ecs

FROM php:7.4-fpm-alpine app.dockerfile 在添加 sh 文件作为入口点运行时导致 fastcgi 错误

我正在使用 AWS ECS Faragate 生成 Docker 容器并将其部署到任务中。 我正在使用来自 php:7.4-fpm-alpine 的 docker 镜像作为我的应用程序容器。 我一直在研究一种针对应用程序容器的 cron 类型解决方案的解决方法。此解决方案运行 php yii2 命令,然后在 while 循环中休眠 1 分钟。 应用程序容器现在导致以下错误消息,这不会导致任务定义持续存在,并不断重新启动,这是我从应用程序容器收到的错误: [error] 22#22: *135 connect() failed (111: Connection...

Admin

无法让 nginx 解析器工作
amazon-ecs

无法让 nginx 解析器工作

当网络中的容器更改其 IP 时,我遇到了 nginx 问题,我可以在 Linux 操作系统中访问它,但 nginx 无法解析新 IP...我搜索了很多解决方案,我发现 nginx 告诉我们使用解析器指令,然后我尝试了它但没有任何变化....无法使这个解析器工作,有什么我应该检查的吗?我什么都试过了.... 西蒙尼能帮我提供一些提示吗? 注意:我正在使用 ecs fargate。 先谢谢了。 docker-compose.yml: version: "3.7" x-aws-loadbalancer: *** services: i***-root: ...

Admin

AWS:从公共 Web 应用程序访问私有 API
amazon-ecs

AWS:从公共 Web 应用程序访问私有 API

我有: 在内部负载均衡器后面的 ECS 集群上运行的私有 API。此 API 供 VPC 内的其他服务使用。 一个公共的 Next.js Web 应用程序。 我需要的: 向 Next.js Web 应用授予私有 API 访问权限。来自此应用外部的互联网流量不得访问该 API。 防止机器人等滥用,只应允许真实的人类流量。 可能对原始客户端 IP 进行速率限制。 我正在考虑在 Next.js 服务器上结合使用反向代理配置,将 API 请求代理到内部负载均衡器,并在前端使用某种 Google recaptcha 来仅允许人工请求(但我对这里所述的 reca...

Admin

Fargate 上的 AWS Batch 未分配正确数量的 vCPU
amazon-ecs

Fargate 上的 AWS Batch 未分配正确数量的 vCPU

我有一个 Web 应用程序,将一些资源密集型任务卸载到由 Fargate 支持的 AWS Batch。 这是一个非常简单的设置 - 单个队列、单个作业定义和单个计算环境。计算环境有限制Maximum vCPUs: 128,没有最低 vCPU。 可以预先估计作业的复杂性,因此在提交作业时,应用程序会覆盖resourceRequirement参数以满足估计的计算能力需求。等效的 CLI 命令如下: aws batch submit-job \ --job-name "test-job-1" \ --job-definition "staging-batc...

Admin

Elastic Beanstalk 多容器 Docker 环境到 AL2 的迁移选项之间有何区别?
amazon-ecs

Elastic Beanstalk 多容器 Docker 环境到 AL2 的迁移选项之间有何区别?

我们正在 Amazon Linux 1 上运行 Elastic Beanstalk 多容器 Docker 环境,该环境已被弃用,需要迁移到 Amazon Linux 2。 该文档提供了两种选择: 迁移到在 Amazon Linux 2 上运行的 ECS 迁移到在 Amazon Linux 2 上运行的 Docker 据我了解,他们推荐第一个选项,因为 ECS 平台与 AL1 上的当前平台更相似。 不过,我想知道这两个选项之间有什么实际区别。ECS 在其中扮演什么角色?与纯 Docker 相比,它有什么优势? 在 ECS 上,我们使用 Dockerrun....

Admin

如何将 SSL 置于 ECS Fargate 容器前面
amazon-ecs

如何将 SSL 置于 ECS Fargate 容器前面

将 SSL 证书放在 ECS Fargate 容器前面的最佳方法是什么?我有 letsencrypt 证书,每 90 天更新一次,并上传到 SecretsManager 和证书管理器。现在我有一个网络负载均衡器和一个应用程序负载均衡器链接在一起,然后指向 ECS 容器。但这非常昂贵,因为负载均衡器要花很多钱。尤其是当每个容器都需要这样做时,因为所有容器都需要 SSL。有什么想法吗? ...

Admin

为什么要在单个 EC2 实例中运行同一个 Docker 镜像的多个容器
amazon-ecs

为什么要在单个 EC2 实例中运行同一个 Docker 镜像的多个容器

我是 docker 新手,我的问题基于以下 Reddit 帖子:https://www.reddit.com/r/docker/comments/p7d12j/why_run_multiple_docker_instances_of_1_image_in/ 该主题中的某些评论暗示负载平衡是某些人可能想要启动同一图像的多个容器的原因,但我不明白这如何适用于在同一个 EC2 实例中启动多个容器。 我的情况:我有一个简单的后端服务器,通过 HTTP 提供请求。 我的问题:我了解有些工作负载可以从动态启动和销毁容器的能力中受益。如果我错了,请纠正我,但在这种情况下,...

Admin

ECS 部署停滞在“正在进行”状态
amazon-ecs

ECS 部署停滞在“正在进行”状态

几个月前,我用 ec2 创建了这个 ecs 集群,它工作了一段时间,我做了一些更改,但它停止工作了。该服务尚未准备好投入生产,所以我不介意。但问题是部署停滞了好几天,它甚至没有失败,我不知道为什么。我只是用不同的 terraform 脚本重建了我的 ecs 集群,以防万一。 我刚刚检查了我的 ec2 实例是否已连接到我的集群 如您所见,我没有看到任何事件。此外,我在 CloudWatch 中也没有看到任何日志。只有服务以前运行时的旧日志。我快疯了,因为我删除了服务器并重新创建了很多次。我之前使用的是私有子网,为了以防万一,我刚刚将其更改为公共子网。 ...

Admin

RDS 未通过机密管理器与 ECS Fargate 连接
amazon-ecs

RDS 未通过机密管理器与 ECS Fargate 连接

我在 AWS ECS 上部署 Laravel 应用程序时遇到问题。部署过程涉及 Jenkins、AWS ECR 和 ECS。新任务已创建,但连接到 RDS 数据库时出现“访问被拒绝”错误。 我已经创建了一个 RDS 实例,并将用户名和密码保存到 Secret Manager 中。我已将 Secret Manager 密钥作为 ValueFrom 放入环境变量中的 ECS 任务定义中,如下所示 arn:aws:secretsmanager:us-east-1:794664117291:secret:product-management-secrets-83qa...

Admin