Articles of 负载均衡

无法启动haproxy

使用Ubuntu作为我的服务器我试图设置负载平衡使用HAProxy。 当我尝试使用“haproxy -f haproxy.cfg”运行时出现此错误。 [警告] 035/115820(1148):[haproxy.main()]无法将FD限制提高到8224. [ALERT] 035/115820(1148):启动代理webservice:无法绑定套接字 我认为释放port80可以解决问题,所以我卸载了可能使用port80的apache2。 但无济于事依然没有解决我的问题。 那么我怎样才能杀死一个使用80端口的应用呢? 我的haproxy.cfg # this config needs haproxy-1.1.28 or haproxy-1.2.1 global log 127.0.0.1 local0 log 127.0.0.1 local1 notice #log loghost local0 info maxconn 4096 #chroot /usr/share/haproxy user haproxy group haproxy daemon #debug #quiet defaults log global mode http option httplog option dontlognull retries 3 option redispatch […]

为什么软件负载平衡器掩盖客户端IP?

目前我正在使用Cisco CSS硬件负载平衡器。 从Web服务器的angular度来看,最终用户的IP地址在所有stream量上都被标记,就好像负载均衡器不存在一样。 我现在正在考虑像HAProxy,Pound或AWS ELB这样的软件替代品。 它们都有一个共同点:Web服务器接收负载均衡器的IP而不是最终用户的IP。 如果您想要最终用户的IP,或者在SSL的情况下,您的系统必须意识到这一点,并访问X-Forwarded-For标题,解密并重新encryptionstream量。 所以我的问题是:这是为什么? 为什么软件负载均衡器不能像硬件负载均衡器那样运行,只是像传统的networking设备那样传递TCP数据包呢?

为什么第7层负载均衡器configuration不需要任何客户端configuration更改?

例如,对于haproxy (第7层)负载均衡,您只需要configurationVIP(即集群IP)后面的“真实服务器”或“后端”。 例如: listen smtp 192.168.3.10:25 mode tcp balance roundrobin server smtp1 192.168.3.1:25 check server smtp1 192.168.3.2:25 check 但是,对于lvs (第4层),我需要: 设置lvs机为路由器,实现“NAT路由” lvs机器和后端拥有在后端configuration了一些ARP mod的VIP 第7层负载平衡如何在没有更多涉及的configuration的情况下做到这一点? 我在这里误解或错过了一些根本性的东西吗?

Apache SSL通过负载平衡器丢失会话

负载平衡器后面有两台物理Apache服务器。 应该设置负载平衡器,以便在第一次请求后始终将用户发送到同一物理服务器,以保留会话。 这对我们的Web应用程序正常工作,直到我们添加到设置的SSL。 现在,用户可以成功login,看到主页,但点击任何其他内部链接logging用户的权利。 我将这个问题追溯到这样的事实,即当初始authentication由服务器1执行时,点击内部链接导致请求发送到服务器2.服务器2不共享与服务器1的会话,并且用户被踢出。 我该如何解决? 我需要在两台服务器之间共享会话吗? 如果是这样,你能指点一个好的指导吗? 谢谢。

承载非常高带宽的网站

我一直负责规划一个网站的基础设施要求,这个网站每个月要吸引超过1000万的独立访问者。 本网站将在内容明智的几个演出。 我知道所有的互动内容都将放在CDN上,但后端呢? 这个网站也将有一个CMS附加,这意味着任何双服务器设置将需要群集,我猜负载均衡。 只是想要你可能有的任何build议。 添加更多的细节。 我们很可能会使用webmux负载均衡器。

是否有一个负载平衡器,可以让我部署时手动取下服务器?

看起来HAProxy不允许这样做。 我们在后端有Tomcat服务器,并计划使用Apache + mod_jk来实现负载平衡。 我们正在考虑改用像Netscaler这样更全面的function,但是我并没有出售,因为我正在寻找的部分function是能够进行无缝部署,在此之前我可以从负载平衡器中移除一个Tomcat服务器重新启动它。

为什么负载均衡algorithm不允许根据当前的CPU或内存使用情况select工作机器

我目前正在用Apache mod_load_balancer和mod_proxy调查负载平衡。 以后我也会看看其他负载平衡器,但有一点已经变得清晰了。 为什么几乎没有任何负载平衡器(如果有的话)根据工人机器的实际负载作出分配决定。 例如,Apache根据请求的数量,数据吞吐量和请求队列的长度来分配请求。 为什么他们没有一些机制将请求分发给CPU或内存使用率最低的机器? 我正在构build一个系统,每个请求都需要大量的CPU,以至于在我最大化所有CPU之前,2或3个工作机器只能服务10或20个并发客户机。 一些XML的请求是非常轻量级的,而其他的东西真的很重。 这是否真的在事物的计划上有所作为? 有人发现,即使是一个基于CPU的分配algorithm,最终也可以归结为循环方式。 它是否增加额外的开销,使得它不值得。 有没有其他的负载平衡器提供这种设施,他们提供它,没有人因为什么原因使用它。 这似乎是一个很好的东西,但似乎没有人执行它。 我很困惑,需要一些关于这个问题的build议。

消息队列与负载平衡。 我真的不了解其中的差别

帮助我理解一些东西。 我已经看了几个企业应用程序体系结构,我注意到其中有几个使用了Message Queue服务,比如ActiveMQ或者RabbitMQ。 我对消息排队服务器有什么样的表面层次的知识,但是我不明白为什么我会select使用一种应用程序基础结构,而不是使用像HAProxy这样的标准负载平衡技术。 两者的真正区别是什么? 两者似乎都将stream量和/或消息路由到订阅队列或池的节点。 这些每个都有利/弊吗?

主动主动故障切换

我有一个处理UDP通信的应用程序。 需要使用两台机器在主动 – 主动模式下运行设置,并且只有一个IP暴露于外部世界。 在这种情况下,LVS会有帮助吗?还是其他可用的工具?

nginx proxy_cache:限制对同一个URL的并行请求

我们使用nginx作为反向代理从上游服务器获取文件。 这些文件不是dynamic的 – 至less不是基于每个请求的 – 并且(有时)在高延迟之后。 我想限制同一个URL的请求到1。 我想避免的一个例子是: 127.0.0.1 – – [03/Jan/2013:16:08:15 +0100] "GET /part-00132.ts HTTP/1.0" 200 1506068 "-" "Prefetch" "-" 127.0.0.1 – – [03/Jan/2013:16:08:28 +0100] "GET /part-00133.ts HTTP/1.0" 200 1189476 "-" "Prefetch" "-" 127.0.0.1 – – [03/Jan/2013:16:08:29 +0100] "GET /part-00133.ts HTTP/1.0" 200 1189476 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/536.26.17 (KHTML, like […]