我有一个 Amazon VPC 设置,其私有子网包含 2 个实例。其中一个在其上运行 redis,另一个实例我想用来连接到 redis 服务器。我让 redis 实例监听端口 6123。当我在 Redis 实例上本地连接时,一切正常,但是当我尝试从子网上的另一个实例连接时,我得到:
Connection refused - Unable to connect to Redis
Run Code Online (Sandbox Code Playgroud)
我设置了两个单独的 VPC 安全组,一个用于 redis 服务器,允许端口 6123 上的入站连接使用另一个实例的安全组作为源。同样,我为另一个实例的安全组添加了一条规则,以允许端口 6123 上的出站流量到达 redis-instance(使用 redis 实例的安全组作为目的地)。
有什么我在这里忘记了吗?我必须添加的另一个规则?还是我必须设置的特殊路线?
感谢您的任何帮助/指导,汤姆
我是不是做错了什么,或者 AWS VPC ec2 实例是否无法访问任何 AWS 托管服务 (s3/sns/sqs),而路由表中没有到 Internet 网关的公共路由?
我在这里被告知CloudFormation 中的 Aws vpc 默认路由表,AWS VPC默认路由表默认没有公共路由,因此它可以“保护”VPC。
但是,如果我没有公共路由就无法访问 AWS 服务......那只会违背目的,因为我实际上会向所有路由表添加公共路由?
我使用 AWS Docs 中的场景 2 设置了一个 VPC:http : //docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Scenario2.html
我已将弹性 IP 分配给在公共子网中运行的 EC2 实例。SSH 工作正常,我可以访问在其上运行的网站。但是,我不能发出传出的 HTTP 或 HTTPS 请求(我在尝试运行时注意到了这一点yum update)。
我相信我所有的安全设置都是正确的。我无法通过 Internet 网关发出传出 HTTP/HTTPS 请求吗?我特别要求在创建时不要将公共 IP 分配给此实例,因为我知道我将分配一个让网站 DNS 喜欢的弹性 IP。我在私有子网中为实例设置了 NAT,但我目前只有 RDS 实例在那里运行,所以我没有测试从那里发出的请求。
该 EC2 实例的安全组具有以下出站规则:

该子网的路由表具有以下设置:

网络 ACL 具有以下设置:

默认 DHCP 选项集具有以下设置:
domain-name = ec2.internal
domain-name-servers = AmazonProvidedDNS
Run Code Online (Sandbox Code Playgroud)
默认/etc/resolv.conf设置为:
search ec2.internal
nameserver 10.0.0.2
Run Code Online (Sandbox Code Playgroud)
VPC 和子网的 CIDR 块如下:
VPC: 10.0.0.0/16
Public Subnet: 10.0.0.0/24
Private DB Subnet in US East 1A: 10.0.1.0/24
Private DB Subnet in …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Amazon Linux 上使用 OpenVPN 将本地 LAN 连接到 EC2 上的 VPC。我有流量从 OpenVPN 实例流向 LAN 上的任何机器,但 VPC 上的其他机器没有看到来自 LAN 的流量。
这是网络的修剪版本:
Local network / EC2 VPC, 10.2.0.*/255.255.255.0
10.1.0.*/ ,'
255.255.255.0 ,'
.'
|
+---------------+ |
| OpenVPN on | |
| firewall XXX | +---------------+
| 10.1.0.1 | XXXX | OpenVPN server|
+------`.-------+ \ XX 10.2.0.10 `-. +-------------+
\ '. +---------------+ `-. Second server
+--------`.---+ | | 10.2.0.12 |
|Local server | \ +-------------+
| 10.1.0.3 | \
+-------------+ \
Run Code Online (Sandbox Code Playgroud)
从 …
我在 VPC 中的 Amazon EC2 中有一组服务器。在这个 VPC 中,我有一个私有子网和一个公共子网。在公共子网中,我在 t2.micro 实例上设置了一台 NAT 机器,它基本上在启动时运行这个 NAT 脚本,将规则注入 iptables。从私有子网内的机器从互联网下载文件工作正常。
但是,我将外部高带宽 FTP 服务器上直接从我的 NAT 机器上的文件下载速度与从我的私有子网内的机器(通过同一台 NAT 机器)的下载速度进行了比较。有一个非常显着的差异:从 NAT 机器下载大约 10MB/s,而从私有子网内的机器下载时大约为 1MB/s。
NAT 机器上没有 CPU 使用率,因此这不是瓶颈。在使用更大的机器(具有“中等网络性能”的 m3.medium 和具有“高网络性能”的 m3.xlarge)尝试相同的测试时,我也无法获得大于 2.5MB/s 的下载速度。
这是可以(并且应该)调整的一般 NAT 问题吗?性能下降从何而来?
更新
通过一些测试,我可以缩小这个问题的范围。当我从 2013 年开始使用 Ubuntu 12.04 或 Amazon Linux NAT 机器时,一切运行顺利,我获得了完整的下载速度,即使在最小的 t2.micro 实例上也是如此。无论我使用 PV 还是 HVM 机器都没有关系。问题似乎与内核有关。这些旧机器的内核版本为 3.4.x,而较新的 Amazon Linux NAT 机器或 Ubunut 14.XX 的内核版本为 3.14.XX。有没有办法调整较新的机器?
我有一个带有私有子网和公共子网的 VPC - 每个子网都包含一个相同构建的 RHEL7 服务器。我相信 VPC 设置正确(见下文)。但是,公共服务器可以使用 yum,而私有服务器则不能。私人收到错误...
$ yum search apache
Failed to set locale, defaulting to C
Loaded plugins: amazon-id, rhui-lb
Repo rhui-REGION-client-config-server-7 forced skip_if_unavailable=True due to: /etc/pki/rhui/cdn.redhat.com-chain.crt
Repo rhui-REGION-client-config-server-7 forced skip_if_unavailable=True due to: /etc/pki/rhui/product/rhui-client-config-server-7.crt
Repo rhui-REGION-client-config-server-7 forced skip_if_unavailable=True due to: /etc/pki/rhui/rhui-client-config-server-7.key
Repo rhui-REGION-rhel-server-releases forced skip_if_unavailable=True due to: /etc/pki/rhui/cdn.redhat.com-chain.crt
Repo rhui-REGION-rhel-server-releases forced skip_if_unavailable=True due to: /etc/pki/rhui/product/content-rhel7.crt
Repo rhui-REGION-rhel-server-releases forced skip_if_unavailable=True due to: /etc/pki/rhui/content-rhel7.key
Repo rhui-REGION-rhel-server-rh-common forced skip_if_unavailable=True due to: /etc/pki/rhui/cdn.redhat.com-chain.crt
Repo rhui-REGION-rhel-server-rh-common forced skip_if_unavailable=True due to: /etc/pki/rhui/product/content-rhel7.crt …Run Code Online (Sandbox Code Playgroud) 我\xe2\x80\x99m对AWS中的互联网网关感到困惑,如果它说为了让你的VPC访问互联网,你需要一个IGW,那么为什么当你使用EIP创建EC2实例时,你会自动访问互联网。
\n\n然后我有一个我无法回答的问题:
\n\n那么为什么当您在 AWS 中创建 EC2 实例(在默认 VPC 中创建)并分配弹性 IP 时,如果 AWS 文档中说为了让您的 VPC 能够访问互联网,您会自动访问互联网您需要互联网网关吗?
\n如何配置 EKS 集群以自动允许从工作程序节点访问 S3?
我已经按照入门指南设置了一个 EKS 集群并运行了示例留言簿应用程序。现在我想使用Snakemake在集群上运行生物信息学管道,这需要对工作节点进行 S3 访问。
我在 IAM 控制台中尝试了一些无效的方法:
在所有这些情况下,工作节点没有 S3 访问权限(我 ssh 来检查)。有什么建议吗?
amazon-s3 amazon-ec2 amazon-web-services amazon-vpc kubernetes
我目前是一个小组的一员,该小组正在处理部署 300 多个运行 Node.js 的 AWS Lambda 函数而不是更传统的 REST API 的影响。我最近实现了一个应用程序,该应用程序在私有子网上的 VPC 中的 EC2 实例上运行。因此,将与此应用程序大量通信的 Lambda 本身也被放置在同一 VPC 中的私有子网中。EC2 实例在 6 个私有/24 个子网中运行(我们地区的每个可用区一个)。lambdas 有 6 /20 个私有子网,它们被配置为在其中运行。据我所知,每次调用 lambda 都会在其中一个子网中分配一个 IP 地址,这在我们用完之前为我提供了大约 24,564 个 IP 地址。
我的问题是:
1) Lambda 是否只在实际运行期间占用IP地址,然后释放IP地址?更简洁地说,我们是否会很快用完 IP 地址,因为我们预计调用很快就会增加?我知道我可以将 VPC 中的更多地址空间分配给 lambda,但这会是我们一直在追寻的问题吗?
2) 如何在 AWS 控制台或其他地方查看 lambda 占用了多少 IP 地址?
注意:我是一名初级 DevOps 工程师,所以如果有什么不清楚的地方请原谅我并随时纠正我
在我的 AWS Lambda 函数上,每当我尝试使用nodemailer连接到我的 Amazon SES SMTP 服务器(端口 465)时,我的 javascript 代码就会超时。但是,如果我在本地运行脚本,它工作正常,这让我相信它要么是 lambda 拨出到 SMTP 服务器的问题,要么是 SMTP 服务器阻止 lambda 连接 - 我怀疑前者是问题.
我在 Cloudfront 发行版后面使用了防火墙,但我认为这不适用于传入的 SES 连接或传出的 lambda 函数。在 VPC 中,我可以看到有一个附加到实例的 Internet 网关。安全组的传出连接允许所有协议访问 0.0.0.0/0,但是,ACL 看起来很奇怪,因为它既允许又拒绝所有入站/出站连接:
在 VPC 中,我看到列出了 6 个子网,我不太清楚这些子网在宏伟计划中的作用。
在日志中,我只看到 Task timed out after 6.01 seconds
知道如何获得有关挂断位置的更多信息吗?
amazon-vpc ×10
amazon-ec2 ×3
nat ×2
amazon-s3 ×1
amazon-ses ×1
http ×1
https ×1
kubernetes ×1
openvpn ×1
redis ×1
route ×1
subnet ×1
yum ×1