我有一个带有负载均衡器的Elastic Beanstalk环境。此外,我还有一个与负载均衡器关联的托管区域,以便通过自定义域名访问环境。
现在我想在Tableau受信任的身份验证中使用静态IP。我很迷惑。我无法弄清楚从哪里可以获得所需的静态IP。
this question接受的答案是5岁,自那时起事情发生了变化。
答案 0 :(得分:2)
可悲的是,由于AWS仅提供对DNS的支持,因此无法在负载均衡器上自动设置Elastic-ip。
但还有另一种解决方案,即添加一个脚本,在启动时自动将ip设置为实例。正如下一篇参考文献所示。
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 。
将当前脚本添加到实例
pip3 install psycopg2
在/etc/rc.local
添加此脚本#!/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
使用此实例创建新的基础 AMI,并将其设置为您的EB AMI。
答案 1 :(得分:0)
您的意思是您想要使用静态IP访问弹性beanstalk应用程序?如果您想使用静态IP访问您的应用程序,请转动并启动EC2并部署您的应用程序。为该实例分配静态弹性IP。弹性IP是一种静态公共IP,除非您将其发布,否则不会发生变化。有关AWS弹性IP的更多信息,请参阅以下链接。