当前位置: 首页 > 知识库问答 >
问题:

EC2 实例无法访问弹性缓存

从渊
2023-03-14

如题所示,我正在努力通过EC2实例连接到我的elasticache实例。我有一个orm连接到EC2实例中的redis,但它在我的日志中失败了,所以我登录到EC2实例,尝试手动连接到redis实例,但超时了:

< code >无法连接到位于的Redis

它们位于不同的VPC中(弹性缓存实例和EC2实例),但在我的弹性缓存实例的安全组中,我在端口6379处有来自任何来源的自定义TCP入站规则。

哈尔普。

共有2个答案

朱祺
2023-03-14

创建VPC对等连接后,您还需要修改路由表。请记住,您需要修改这两个路由表。你还需要加上当地VPC的CIDR。

这可能会混淆“本地”VPC和“目标”VPC。在我的例子中,本地VPC包含需要其他VPC中Redis数据库的EC2实例。以这种格式创建对等连接后,我需要做两件事:

  • 编辑本地 VPC 和目标 VPC 的路由表。
  • 编辑 Redis 数据库的安全组以接受来自本地 VPC 的连接。

如果进行相应设置,您应该能够从本地VPC上的EC2实例连接到目标VPC中的Redis数据库。

以下是 AWS 中相对容易理解的文档:http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide/vpc-pg.pdf

你的情况可以在第16页找到。

封俊艾
2023-03-14

您设置了安全规则,但是否正确设置了VPC对等:

VPC 对等连接是两个 VPC 之间的网络连接,使您能够使用私有 IP 地址在它们之间路由流量。任一 VPC 中的实例都可以相互通信,就好像它们位于同一网络中一样。您可以在您自己的 VPC 之间创建 VPC 对等连接,也可以在单个区域内的另一个 AWS 账户中的 VPC 中创建 VPC 对等连接。

http://docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide/Welcome.html

 类似资料:
  • 我使用terraform创建了一个新的EC2实例来安装vertica,但无法在实例中访问Internet或pinggoogle.com。 我已使用私有子网设置了 ec2 实例,并使用公有子网设置了 nat 网关。 主路由表允许 0.0.0.0/0 作为目标,目标作为 nat 网关。另一个路由表将子网关联作为私有子网 10.103.2.0/24。互联网网关也连接到 VPC。 我的ec2实例安全组允许

  • 我有一个正在运行的Amazon EC2实例,它具有开放的IAM策略,可以调用通过调用公共S3 bucket来证明的任何资源。但是,如果我自己创建一个S3 bucket(带有一些。csv文件的mybucket)并提供bucket策略 要被EC2用户调用,我会得到以下错误。 为什么我会得到这个400错误代码?

  • 我们刚刚开始使用AWS,并要求使用AWS ElasticCache和带有Spring的Redis绝地。Spring数据redis 1.8.8。发布aws java sdk 1.11.228 Spring 4.2.9。释放绝地武士2.9.0 我能够连接和缓存数据到本地redis与下面的代码。我尝试过https://github.com/fishercoder1534/AmazonElastiCach

  • 我正在运行一个AWS ECS服务,它正在运行一个具有多个容器的任务。任务在awsvpc网络模式下运行。(EC2,不是Fargate) 集装箱港口映射在ECS任务定义中。 PS:目标(公共IP)可以从远程PC访问。只是不是从港口来的。

  • 我在aws上工作。我创建了一个公共子网,该子网具有允许所有网络流量的网络ACL,并与路由表中的Internet网关相关联。 然后我创建了一个没有弹性ip的ec2实例和一个有弹性ip的ec2实例,安全组也允许所有流量。 我ssh到具有弹性ip的实例。当我运行yum update和curl www.baidu.com等软件时,效果很好。但是当我ssh到没有弹性ip的ec2实例时,我无法访问互联网。有人

  • 我编写了一个非常简单的spring boot应用程序,并将其打包在Docker中。 docker文件的内容是: 我把它推到了docker hub。 我在aws上创建了一个新的EC2实例。然后我连接到它并键入以下命令: 最后一个命令在屏幕上给出了许多消息,表示spring boot应用程序正在运行。 看起来很棒。但是,当我打开浏览器并键入:http://ec2-54-86-87-68.compute