Amazon web services 从AWS Beanstalk函数连接到红移

Amazon web services 从AWS Beanstalk函数连接到红移,amazon-web-services,amazon-redshift,amazon-elastic-beanstalk,Amazon Web Services,Amazon Redshift,Amazon Elastic Beanstalk,使用Elastic Beanstalk中的Node.js函数,我试图: 通过JDBCURL连接到redshift 运行复制命令 在Redshift命令中,我将-credential选项指定为可以访问S3存储桶的IAM用户 我希望连接会成功,因为我创建了一个新的EC2安全组,添加了一个新的红移集群安全组;并将IAM用户的AWS帐户ID添加到EC2安全组 但是,AWS Beanstalk函数无法连接到红移: {错误:连接ETIMEDOUT代码:'ETIMEDOUT',错误号:'ETIMEDOUT',

使用Elastic Beanstalk中的Node.js函数,我试图:

  • 通过JDBCURL连接到redshift
  • 运行复制命令
  • 在Redshift命令中,我将
    -credential
    选项指定为可以访问S3存储桶的IAM用户

    我希望连接会成功,因为我创建了一个新的EC2安全组,添加了一个新的红移集群安全组;并将IAM用户的AWS帐户ID添加到EC2安全组

    但是,AWS Beanstalk函数无法连接到红移:

    {错误:连接ETIMEDOUT代码:'ETIMEDOUT',错误号:'ETIMEDOUT',系统调用:'connect'}

    我在AWS中看到AWS回复:

    用于将Beanstalk连接到红移。如果您的应用程序能够连接到postgresql数据库,那么将使用相同的方法连接到Redshift

    但是,据我所知,这是一个突出的功能要求:

    您可能需要在红移上调整CIDR规则,以便允许网络访问它。然而,红移团队并没有对其进行专门测试,所以我现在将其作为功能请求添加

    编辑


    创建集群安全组后,我需要手动将其添加到红移集群的安全组中。即使添加了新的安全组,我也会在Beanstalk日志中收到相同的
    ETIMEDOUT
    错误。

    您可以使用
    psql
    连接到红移吗?您确定在凭据上使用了正确的语法吗?您是否正在使用角色?
    凭据?
    是的,我可以在本地进行测试(尽管我的IP地址是根据红移群集的安全页面授权的)<代码>你在使用角色吗?我不这么认为-那是什么?