Amazon web services AWS Neptune主机未及时响应-请检查服务器状态并再次提交

Amazon web services AWS Neptune主机未及时响应-请检查服务器状态并再次提交,amazon-web-services,amazon-ec2,gremlin-server,amazon-neptune,Amazon Web Services,Amazon Ec2,Gremlin Server,Amazon Neptune,我浏览了整个启动教程,从同一VPC中的EC2远程连接到tinkerpop3服务器,得到了错误信息 gremlin>g.addV('person').property(id,'1').property('name','marko')) 主机未及时响应-检查服务器状态并提交ag ain。 键入“:help”或“:h”以获取帮助。 显示堆栈跟踪?[yN] 发生这种情况的原因是什么?让我们尝试几件事,让您开始调试此问题: 你试过击中终点吗?如果此端点正在工作,则控制台配置存在问题。如果不是,则EC2实例

我浏览了整个启动教程,从同一VPC中的EC2远程连接到tinkerpop3服务器,得到了错误信息

gremlin>g.addV('person').property(id,'1').property('name','marko'))
主机未及时响应-检查服务器状态并提交ag ain。
键入“:help”或“:h”以获取帮助。
显示堆栈跟踪?[yN]


发生这种情况的原因是什么?

让我们尝试几件事,让您开始调试此问题:

  • 你试过击中终点吗?如果此端点正在工作,则控制台配置存在问题。如果不是,则EC2实例与数据库的连接存在问题
  • 您是否可以确保EC2实例已使用您授予DB上端口8182入站访问权限的同一安全组启动(在中的步骤#8期间)
  • 请确保从Neptune控制台观察到您的集群和实例状态为“可用”

  • 管理此类连接的建议方法是:2有2个安全组:

  • client
    -附加到所有客户端(如Lambdas、EC2实例等)的安全组。默认出站规则允许您对专有网络中的每个资源进行出站访问。如果愿意,您可以加强这一点
  • db
    -您应该连接到Neptune群集的安全组。在此安全组中,编辑hte入站规则,并显式添加允许入站连接到数据库端口的TCP规则(8182是默认端口)

  • 您可以在创建集群期间或通过修改现有集群将
    db
    安全组附加到您的集群。

    我在这里发布了一个类似的问题:@Fook谢谢您的回答!我能够让它工作的唯一方法是为EC2的特定IP地址添加入站规则,我假设lambda也会这样做/EB/ECS********.neptune.amazonaws.com/status curl:(7)无法连接到******neptune.amazonaws.com端口443:连接超时这是我执行curl时发生的情况。在我添加了一个专门用于EC2 IP的入站规则后,它在周五工作,如上所述,并且仍然通过gremlin控制台连接并访问图形节点。所有状态都可用,EC2处于相同的SG/VPCs a中相同,我的neptune实例确实有两个属于neptune群集的安全组,它们引用相同的vpc(默认/自定义),这可能是一个问题吗?您可以通过为单个IP添加入站规则连接到neptune,但不能为SG(例如,客户端SG)添加入站规则它连接到EC2实例。另外,Neptune实例有两个SGs连接到它(默认和自定义).1.客户端sg是否以任何方式限制出站流量?2.默认或自定义sg是否从客户端sg为8182打开入站?连接多个sg并不重要,因为规则允许最宽松的限制:对任何一个都没有出站限制,入站仅适用于特定IP。如果我理解正确,这就是唯一的方法是什么?有关更多详细信息,请参阅。基本上,您应该为客户端和数据库关联一个单独的安全组,为附加到数据库的安全组设置入站规则。