Articles of 负载平衡

需要帮助解决HAProxy中的间歇性TCP超时问题

我有一个应用程序,客户端通过基于TLS / SSL的简单TCP协议连接到服务器。 在开发过程中,在我们构build应用程序的过程中,这已经运行了好几个月。 最近,当我们准备启动时,我已经提前将HAProxy添加到混合中,以便实现一些负载分配的顺序。 从技术上讲,一切都是有效的,但问题是,客户现在看到了完全随机的超时。 它们通常不一致,但发生时间大约为60秒。 有时会在25秒后发生。 haproxy转发TCP连接的服务器来通知并做一个干净的断开连接,问题是你不希望大量的同时连接中断和重新连接,没有任何理由反复。 除了其他方面之外,这对我们的发布/订阅基础设施也有影响。 客户很聪明,可以马上重新连接 – 但是这不是我们想要的行为。 负责通过SSL接受这些TCP连接的服务器不需要保持活动状态。 我将继续,并假设有一些隐含的价值,我没有看到我的HAProxyconfiguration造成这些随机超时,或需要一个TCP保持活着的东西。 事实上,超时并不总是一致的,但是,让我怀疑,否则。 如果每一次我都相信这是一个configuration问题,那么这个点就是60秒。 在这种情况下,并不总是60秒。 以下是我现在的configuration: global stats socket /home/haproxy/status user haproxy group haproxy log 127.0.0.1 local1 info # log 127.0.0.1 local5 info maxconn 4096 ulimit-n 8250 # typically: /home/haproxy chroot /home/haproxy user haproxy group haproxy daemon quiet pidfile /home/haproxy/haproxy.pid defaults log […]

DNS轮询故障转移和负载平衡

在阅读了关于DNS负载平衡和循环DNS的所有问题和解答( 1 2 3等)之后,仍然有许多未解答的问题。 大公司,我正在看Google,Facebook和Twitter这里,做了多个Alogging。 1)如果DNS负载平衡/故障转移是如此的狡猾,为什么大型组织做到这一点? 尽pipe有这个 (PDF)文件,但似乎很less提及“DNS固定”。 2)为什么很less提到DNS钉住? 3)有哪些ISP等实际重写DNS TTL的具体例子? 也就是说,我并不完全支持使用DNS进行故障转移或任何forms的负载平衡。 对于大多数networking来说,BGP不同的路由似乎更适合。 DNS再次提高了丑陋的头脑。 🙁

MySQL负载平衡

我正在考虑如何平衡我们的MySQL基础设施的负载,似乎无法find一个适合我的答案… 🙂 所以,我有一个大的,胖的服务器,处理一切。 许多数据库,许多读取,许多写入等,它处理得很好,但它是一个单一的故障点。 我们build立了一些奴隶来redirect读取它们,但是却遇到了两个问题:重build所有程序来分割读取和写入需要花费很多的精力; 有时候奴隶会落后,这会导致应用程序中非常有趣的文物。 奴隶们陷入困境的问题:因为许多数据库是混合在一起的 – 在数据挖掘方面有十到二十分钟的重复查询,以及没有时间的primefaces查询。 但是Slave一次只运行一个查询,所以所有的primefaces查询必须等到重写完成。 为了解决这两个问题,我在考虑像代理这样的东西, 自动分割读/写 充当单个入口点,然后将请求redirect到具有所需数据库的相应服务器(例如,在后端将db1和db2分开,但对应用程序具有透明性) 知道奴隶滞后,并发送读取到主时,奴隶滞后发生(如果这可以做,比如说,每个数据库是理想的;但服务器范围也将非常好) 所有合格的从站之间的负载均衡读取(通过简单循环或通过监视LA) 一个仍然存在的问题,但我想考虑的是故障切换。 如果主人失败了 – 如果奴隶要承担主人的责任,而主人又回来了 – 那么奴隶会变成奴隶。 任何指向RTFM或关于这个问题的案例研究的指针将是值得欢迎的=) 编辑:谷歌search了一些,除了钨企业 – 发现dbShards和Schooner。 在深入研究的同时,有没有人有这些解决scheme的经验? 任何反馈?

创build一个带有两个互联网连接和一个局域网连接的多宿主linux负载均衡器

好的…这个可能已经被回答了,不幸的是,我还没有发现任何看起来可能是这个决议的东西。 我看了这些页面,他们有一些有用的信息,但不是完整的决议: 在Linux上负载均衡和NAT多个ISP连接 两个Internet连接和1个NIC,可能吗? Linux分割访问(多个互联网连接与负载平衡) linux防火墙+负载均衡ISP连接 我将要么使用Debian 8,Ubuntu 16.04桌面或Ubuntu 16.04服务器(说实话,最有可能的是Debian)。 好的,所以我将有三个网卡安装两个千兆网卡和板载100 Mbps LAN连接。 ISP连接将通过两个nics上的PPPoE身份validation使用千兆局域网卡(如果这是甚至可能,否则,我会解决DSL调制解调器上的非桥接模式)。 这两个networking将有一个静态的IP分配给他们。 目前(这将改变)主连接有一个五人小组。 我需要将来自其中一个IP地址的stream量路由到networking上的适当服务器。 这是我的问题: 我如何设置? 我是否使用NAT,IP Chans,IP Masquerading,路由等等? 如何将从外部进入系统的stream量路由到networking上的特定IP地址? 请温柔一点,这是我以前第一次尝试过这样的东西:)。 编辑1 忘了添加networking拓扑: 编辑2 刚刚意识到一些事情…为了做PPPoE身份validation,我将不得不在特定的接口上强制身份validation。 这是怎么做的? 我在这里发布了这个问题: 创build一个带有两个互联网连接和一个局域网连接的多宿主linux负载均衡器 更新1 仍然无法获得多跳循环工作。 我试图按照以下站点中列出的步骤运行: 在Linux上负载均衡和NAT多个ISP连接 Linux – 双因特网连接/负载平衡 HOWTO:Linux多path 我要么不断收到一个消息,说明文件已经存在或无效的设备。 这是/我的设置/信息 IFCONFIG eth0 Link encap:Ethernet HWaddr ec:08:6b:04:8e:ac inet addr:172.16.0.2 Bcast:172.16.0.255 Mask:255.255.255.0 inet6 addr: fe80::ee08:6bff:fe04:8eac/64 Scope:Link […]

负载均衡器说明

我试图找出像Facebook / YouTube的网站的负载平衡如何工作,但我有几个问题。 所以很多读后,我发现负载平衡看起来像这样:当loadbalancer应该是一个服务器,谁分开服务器之间的stream量。 我的问题是:如果负载均衡器是单服务器,其他服务器之间的stream量分裂,像facebook / youtube这样的网站每秒可以处理超过50,000个请求吗? 如果负载均衡器是单服务器将不会死,他如何能够路由10Gbps的stream量或更多? 另外,这个负载平衡器如何知道XXXX(例如)在哪个服务器上?

负载平衡长时间运行的TCP连接

我正在尝试研究以下情况下负载平衡长时间运行的TCP连接的最佳方法: 我们有多台服务器在一组冗余的防火墙之后,并且客户端build立长期运行(通常是10-15小时)的TCP连接到我们的后端服务器。 目前,“负载均衡”是通过客户端循环方法处理的,通过一系列IP地址,这些IP地址全部驻留在我们的防火墙中,并相应地NAT到后端服务器。 我想摆脱这种方式,只有一个公共IP,并有一个单独的负载平衡器,可以检查服务器的健康/负载,并相应地分配传入的客户端连接请求。 这里的一个问题是,每个客户端在3个不同的端口上build立3个套接字连接,我更喜欢这些连接是“粘性”的,所以这3个连接请求都发送到同一个后端服务器。 我一直在看例如HAProxy,但我不确定是否真的适合我的情况。 我们有一个相对较低的连接数(~300个客户端*每个3套接字连接)。 通常我们会看到每个sockets的连续数据传输量〜15KB / s。 任何input这是非常感谢! 谢谢, 汤姆

linux多path路由负载均衡

我想知道如何平衡两个具有固定IP的Business DLS链接。 我相信它会看起来像这样: ip route add default scope global \ nexthop via gatewayDLS1 dev interface1 weight 1 \ nexthop via gatewayDLS2 dev interface2 weight 1 为了获得多path路由,这是我需要的吗? 请给我一个更详细的答案,如果可能的话,谢谢你。

如何通过ssh禁用和重新启用BIG-IP池中的机器?

我似乎无法find使用ssh接口禁用和重新启用计算机的任何简单示例。 有人能给我一个简短的例子或指针体面的文件?

负载平衡器和SQL备份

我们的生产环境通常包含4-8个Apache Web服务器和2个(My)SQL服务器: 每个Web服务器都隶属于一个SQL服务器SQL服务器有一个循环复制设置所有的Web服务器都是负载平衡的,例如磅。 每天晚上一份工作备份SQL服务器之一,locking附属的Web服务器约10-15分钟。 有没有办法configuration平衡,以避免短时间到达那些locking的服务器? 除了备份非生产性的第三台服务器之外,还有其他的方法来处理这个锁吗? PS:我们打算在备份之前和之后用适当的configuration文件重新加载磅configuration,但是感觉有点奇怪… 这个问题已经在StackOverflow上被问到了,但是被closures为“不以开发为中心”的目的。 事实上,这更多的是一个生产和运行的讨论。

Redis高可用性和负载平衡

我正在使用Redis一段时间,现在我们要迁移到一个容错,高可用性和负载平衡的冗余群集。 我主要使用Redis的一些PHP Web应用程序,它存储了一些进程状态信息(我正在使用PHPRedis),我也想用它来在负载平衡的集群中进行PHP会话存储。 我已经有了一个用于Nginx和MySQL的负载均衡(基于pfSense)。 我看到Redis 3存在Redis Cluster,但是我也读了一些关于它尚未准备好生产的评论,其他人则说Redis不能做一个完整的主/主集群configuration。 你有什么build议? 尝试Redis集群 移动到另一个键=值引擎(CouchDB?Memcached?其他?) 不要介意负载平衡,并且每次只使用集群的一个节点,并且手动故障切换,因为我不使用持久性 其他想法? 非常感谢您的帮助!