【问题标题】:Nginx Using AWS Auto Scaling Group instances in configuration files with Nginx open sourceNginx 在配置文件中使用 AWS Auto Scaling Group 实例和 Nginx 开源
【发布时间】:2021-03-02 11:25:14
【问题描述】:
我想将 AWS Auto Scaling Group 后面的服务器添加到 Nginx 配置文件中,我看到 Nginx 加上有一个代理 nginx-asg-sync ,我们可以直接使用它,它会完成工作。
有没有可能我们可以在 Nginx 开源服务中使用它? ,我正在使用 Nginx 开源,我没有找到解决这个问题的方法
谢谢
【问题讨论】:
标签:
amazon-web-services
nginx
nginx-reverse-proxy
nginx-config
aws-auto-scaling
【解决方案1】:
在 AWS 中,您只需要了解 CLI/API 的工作原理。
您只需使用两个 cli 命令即可构建此代理:
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names {PARAMS}
您在 {PARAMS} 中查询 Auto Scaling 组名称并从中获取实例 ID。
第二个命令是:
aws ec2 describe-instances --instance-ids {PARAMS}
那么您所要做的就是围绕此构建所有逻辑,例如在 bash 脚本中创建 nginx 上游模板,每次启动新实例时,您都会比较 IP 地址并交换上游并重新加载 nginx。或者你可以简单地使用sed添加/删除ip
这里有更多示例:
https://serverfault.com/questions/704806/how-to-get-autoscaling-group-instances-ip-adresses
您也可以在更改上游之前添加健康检查。