当前位置: 首页 > 面试题库 >

从VPC内部的EC2连接到ElastiCache(外部VPC)实例

汝墨一
2023-03-14
问题内容

我们有许多应用程序使用一个位于VPC外部(经典实例)的ElasticCache实例(Redis)。一些应用程序位于VPC中,而某些应用程序位于VPC外部(经典实例)。我们如何将所有应用程序连接到缓存?

我们将VPC外部的应用程序连接到缓存没有问题,因为缓存也位于VPC外部。VPC内部的应用程序数量较少,无法连接到缓存。

谢谢。


问题答案:

无法从VPC实例直接访问经典群集。解决方法是在经典实例上html" target="_blank">配置NAT。

NAT需要一个简单的TCP代理

YourIP=1.2.3.4
YourPort=80
TargetIP=2.3.4.5
TargetPort=22

iptables -t nat -A PREROUTING --dst $YourIP -p tcp --dport $YourPort -j DNAT \
--to-destination $TargetIP:$TargetPort
iptables -t nat -A POSTROUTING -p tcp --dst $TargetIP --dport $TargetPort -j SNAT \
--to-source $YourIP
iptables -t nat -A OUTPUT --dst $YourIP -p tcp --dport $YourPort -j DNAT \
--to-destination $TargetIP:$TargetPort

更多详细信息:https
:
//docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Access.Outside.html



 类似资料:
  • 背景: 我有一个具有 2 个私有子网的自定义 VPC,其中包含一个位于美国西部 2 区域内的 Postgres RDS 实例,以及一个包含美国西部 2 区域内 EC2 实例的公有子网。 专用子网ACL: < li >允许端口5432上的所有入站IPv4流量 RDS 实例安全组: < li >允许端口5432上的所有入站IPv4流量 公有子网 ACL: 允许所有端口上的所有入站/出站流量 公共子网在

  • 我有一个专有网络,在每个AZ为我的EC2提供专用子网。在专有网络中,我的ElastiCache(Redis)实例也有专用子网。设置是这样的 我还有安全组和NACL来控制对子网中资源的访问 当我想从运行在其中一个EC2实例上的程序访问ElastiCache群集时,我必须指定群集endpoint-例如: 我知道,使用读卡器endpoint可以实现读卡器实例之间的负载平衡,但由于所有资源都位于同一VPC

  • 我通过向导将 Amazon VPC 设置为“仅公有网络”,因此我的所有实例都位于公有子网中。 在VPC的实例,有弹性的IP分配连接到互联网没有任何麻烦。 但没有弹性IP的实例无法连接任何地方。 存在Internet网关。aws控制台中的路由表如下所示 和路由从内部实例显示 我尝试打开所有入站和出站流量,以0.0.0.0/0实例所属的安全组。仍然没有成功。 我还能做什么?

  • 我有: > MongoDB Atlas集群 GCP之间的VPC对等。 当我尝试从我的家用笔记本电脑连接到DB时: 我收到一个错误: 我看到收到的本地IP地址,但我不明白如何连接到私有VPC中的我的数据库? 我将非常高兴能得到任何帮助!

  • 我试图从我的localhost(在端口24000上)通过堡垒盒隧道到我的mongo实例(在27017上),该实例只能通过VPC私有子网获得,因此我可以在连接到暂存数据库的同时进行本地开发。在我的OSX盒子上使用此隧道命令: ssh-A-L 24000:ip-10-0-11-11。ec2.内部:27017 ec2-3-211-555-333。计算-1。amazonaws。com-N-v “ip-10

  • 我有一个面向互联网的V2 ELB。当我从笔记本电脑连接到VPC时,它可以将请求路由到VPC中的实例。然而,当我试图从同一VPC内的另一个实例连接到它时,安全组防火墙规则会阻止连接。 我可以让VPC中的实例连接到ELB的唯一方法是向世界开放https端口(443)。 我做错了什么? ELB(https://elb.domain.com)具有以下属性: 面向互联网,V2(非经典ELB) 从我的笔记本电