AWS Elastic Beanstalk 环境的静态 IP,带有用于 Tableau 可信身份验证的负载均衡器

Posted

技术标签:

【中文标题】AWS Elastic Beanstalk 环境的静态 IP,带有用于 Tableau 可信身份验证的负载均衡器【英文标题】:Static IP for AWS Elastic Beanstalk environment with load balancer for Tableau Trusted Authentication 【发布时间】:2018-06-14 04:58:50 【问题描述】:

我有一个带有负载均衡器的 Elastic Beanstalk 环境。此外,我还有一个与负载均衡器关联的托管区域,以便通过自定义域名访问环境。

现在我希望在 Tableau 可信身份验证中使用静态 IP。我很迷惑。我不知道从哪里可以获得所需的静态 IP。

this question 接受的答案是 5 岁,从那时起情况发生了变化。

【问题讨论】:

Elastic IP on application deployed using Elastic Beanstalk的可能重复 【参考方案1】:

遗憾的是,由于 AWS 仅提供对 DNS 的支持,因此无法在负载均衡器上自动分配 Elastic-ip。

但还有另一种解决方案,添加一个脚本,在启动时自动为实例分配 ip。正如下一个参考文献所建议的那样。

https://support.asperasoft.com/hc/en-us/articles/216129788-Server-on-Demand-with-EIP-and-Autoscale#prereqs

https://blog.cloudthat.com/auto-attach-elastic-ip-to-ec2-classic-instance-for-autoscaling/

https://github.com/skymill/aws-ec2-assign-elastic-ip

您需要执行以下步骤:

    预留与 Auto Scaling 组中实例的最大数量一样多的弹性 ip

    使用当前的 Elastic Beanstalk AMI创建实例

    使用python的pip安装 aws-ec2-assign-elastic-ip 。

    将当前脚本添加到实例中

    #!/bin/sh
    #
    # This script is launched at boot, and assigns an AWS elastic ip.
    
    AWS_ACCESS_KEY_ID=#<acces_key_value>#
    AWS_SECRET_ACCESS_KEY=#<Secret_key_Value>#
    
    #Regions Virgina: us-east1   Oregon: us-west2 ...
    AWS_DEFAULT_REGION=#<EB_ENV_REGION>#
    
    #Set of valid IP comma(,) separated
    VALID_IP_VALUES=<IP_VALUE>,<IP_VALUE>,<...>
    
    
    /usr/local/bin/aws-ec2-assign-elastic-ip --region  $AWS_DEFAULT_REGION --access-key $AWS_ACCESS_KEY_ID --secret-key $AWS_SECRET_ACCESS_KEY --valid-ips $VALID_IP_VALUES
    

    在 /etc/rc.local 中添加这个脚本

    bash /usr/local/bin/auto-assign-eip.sh
    

    使用此实例创建一个新的基础 AMI,并将其设置为您的 EB AMI。

【讨论】:

【参考方案2】:

您的意思是要使用静态 IP 访问弹性 beanstalk 应用程序?如果您想使用静态 IP 访问您的应用程序,请启动 EC2 并部署您的应用程序。为该实例分配一个静态弹性 IP。弹性 IP 是一个静态公共 IP,除非您发布它,否则它不会改变。有关 AWS 弹性 IP 的更多信息,请参阅以下链接。

AWS Elastic IP

【讨论】:

我尝试将弹性 IP 关联到 ec2 实例,但没有成功。我想我需要将 IP 关联到弹性 beanstalk 负载均衡器。

以上是关于AWS Elastic Beanstalk 环境的静态 IP,带有用于 Tableau 可信身份验证的负载均衡器的主要内容,如果未能解决你的问题,请参考以下文章