Nginx 在 Nginx 开源的配置文件中使用 AWS Auto Scaling Group 实例
Nginx Using AWS Auto Scaling Group instances in configuration files with Nginx open source
我想将 AWS Auto Scaling Group 后面的服务器添加到 Nginx 配置文件中,我看到 Nginx 加上有一个代理 nginx-asg-sync 我们可以直接使用它会完成工作.
有没有可能我们可以在Nginx开源服务中使用同样的东西? ,我正在使用 Nginx 开源,但我没有找到解决这个问题的方法
谢谢
在 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。或者你可以简单地 add/delete ip 和 sed
这里有更多示例,您可以如何执行此操作:
https://serverfault.com/questions/704806/how-to-get-autoscaling-group-instances-ip-adresses
您还可以在更改上游之前添加健康检查。
我想将 AWS Auto Scaling Group 后面的服务器添加到 Nginx 配置文件中,我看到 Nginx 加上有一个代理 nginx-asg-sync 我们可以直接使用它会完成工作.
有没有可能我们可以在Nginx开源服务中使用同样的东西? ,我正在使用 Nginx 开源,但我没有找到解决这个问题的方法
谢谢
在 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。或者你可以简单地 add/delete ip 和 sed
这里有更多示例,您可以如何执行此操作: https://serverfault.com/questions/704806/how-to-get-autoscaling-group-instances-ip-adresses
您还可以在更改上游之前添加健康检查。