【发布时间】:2016-10-29 10:48:40
【问题描述】:
我在 Amazon EC2 中部署了一个 Web 服务应用程序,并将一个弹性 IP 地址与其关联。我们的移动设备使用弹性 IP 与此 Web 服务进行交互。现在我想在 EC2 上实现自动缩放。
但我不确定我的单个弹性 IP 在扩展时如何与多个 EC2 实例相关联?这可能吗。请指导。
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon
我在 Amazon EC2 中部署了一个 Web 服务应用程序,并将一个弹性 IP 地址与其关联。我们的移动设备使用弹性 IP 与此 Web 服务进行交互。现在我想在 EC2 上实现自动缩放。
但我不确定我的单个弹性 IP 在扩展时如何与多个 EC2 实例相关联?这可能吗。请指导。
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon
弹性 IP 地址只与单个 EC2 实例相关联。
如果您想开始自动扩展您的应用程序,那么您需要在您的 EC2 实例前面放置一个负载均衡器。这可以是 AWS Elastic Load Balancer 或其他。
用户将连接到负载均衡器,负载均衡器会将请求转发到底层 EC2 实例。
假设您使用弹性负载均衡器,您需要删除弹性 IP 地址,因为 ELB 无法使用它们。相反,您将为 ELB 创建一个 CNAME(或别名,如果您的 DNS 使用 Route 53)。
【讨论】:
不,那是不可能的。您可能需要使用弹性负载均衡器。
【讨论】:
使用 EC2 和自动扩展,您需要在 EC2 中使用 user data 将弹性 IP 自动附加到 EC2 实例以进行自动扩展
#!/bin/bash
aws configure set aws_access_key_id "XYZ..."
aws configure set aws_secret_access_key "ABC..."
aws configure set region "ap-..."
aws ec2 associate-address --instance-id "$(curl -X GET "http://169.254.169.254/latest/meta-data/instance-id")" --public-ip your_elastic_IP
注意:您应该创建新用户,并且 IAM 只有权限关联地址才能创建/获取 aws 密钥
希望对你有帮助:)
【讨论】: