Nginx+Consul+Upsync实现动态负载均衡

动态负载均衡概念

传统的负载均衡,如果Upstream参数发生变化,每次都需要重新加载nginx.conf文件,因此扩展性不是很高,所以我们可以采用动态负载均衡,实现Upstream可配置化、动态化,无需人工重新重启nginx。这类似分布式的配置中心。

Consul介绍

Consul是一款开源的分布式服务注册与发现系统,通过HTTP API可以使得服务注册、发现实现起来非常简单,它支持如下特性。
服务注册:服务实现者可以通过HTTP API或DNS方式,将服务注册到Consul。
服务发现:服务消费者可以通过HTTP API或DNS方式,从Consul获取服务的IP和Port。
故障检测:支持如TCP、HTTP等方式的健康检查机制,从而当服务有故障时自动摘除。
K/V存储:使用K/V存储实现动态配置中心。
多数据中心:使用多数据中心集群,可以避免单数据中心的单点故障。
注:nginx会通过Upsync模块间隔读取配置中心Consul的服务信息。

猜你喜欢

转载自www.cnblogs.com/feiqiangsheng/p/11333564.html