新手一枚,请问下,在实际生产中,各位有给多个tidb-server做负载均衡,再对外提供服务吗?
是的,需要在tidb-server前面用一个loadbalancer,例如haproxy、nginx,或者云厂商的LB
需要做,否则没有高可用,计算也无法均衡了
好的,谢谢!
需要做,有钱就上f5
我猜你需要这个
建议官方提供一个负载均衡解决方案
是的,tidb server是无状态的节点,为了保证高可用,是需要和负载均衡工具一起搭配使用的
这类工具有很多,比如HAproxy、Nginx等
花钱的使用F5,云上可以使用ELB之类的。
不花钱的,使用HAproxy或LVS,高可用环境搭建参考我写的两篇文章:
搭建TiDB负载均衡环境-HAproxy+KeepAlived实践 - 我是咖啡哥 的专栏 - 专栏 - 搭建TiDB负载均衡环境-HAproxy+KeepAlived实践 | TiDB 社区
搭建TiDB负载均衡环境-LVS+KeepAlived实践 - 我是咖啡哥 的专栏 - 专栏 - 搭建TiDB负载均衡环境-LVS+KeepAlived实践 | TiDB 社区
通常会使用多个 TiDB Server 实例进行负载均衡,并对外提供服务。这样做的目的是提高系统的性能、容错能力和可扩展性
tidb前面可以使用haproxy,但是haproxy的高可用怎么保证
再加个keepalive 就高可用了
keepalived还得需要VIP。我的想法是使用域名解析,使用consul添加三个haproxy解析到一个域名上,不知道有没有这样部署过
一般大型网站使用DNS域名解析作为第一级负载均衡手段,但是给后台服务做负载均衡我没试过,这种做法有个弊端就是每一个环节都可能存在解析记录缓存。如果服务器IP发生变动,即使修改了A记录,也需要各级缓存失效后才能生效。
这个是开源产品的解决方案,我的意思是不需要客户自己配置任何其他的组件的功能,比如Oracle RAC 提供SCAN VIP是自动部署的,可以默认提供负载均衡功能。
国内分布式数据库应该都没这个功能,如oceanbase也得上负载均衡设备
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。