Articles of 负载均衡

Apache mod_remoteip和访问日志

从Apache 2.4开始,我已经开始使用mod_remoteip而不是mod_extract_forwarded来重写前端服务器(varnish,squid,apache等)提供的来自x- forward的客户端地址。 到目前为止,一切工作正常与模块,即PHP,CGI,WSGI等… – 客户端地址显示为他们应该是,但我不能在访问日志(%a,%h,%{c }一个)。 没有运气 – 我总是得到127.0.0.1(localhost forward ex。)。 如何使用mod_remoteiplogin客户端的IP地址? 更新: IT WORKS O_O – 请参阅下面的答案

有没有HTTPS感知的DNS系统或服务?

基本上我需要DNS来响应不同的CNAMES,这取决于是否为HTTPS或HTTP对象提出请求。 s.test.com -> IF(https) RESPONSE special.domain.com ELSE simple.domain.com 可能吗? 还有什么其他可行的方法呢?

谷歌云http(s)负载均衡返回502尽pipe健康的后端服务

我有一个GCE http(s)负载均衡器被configuration为将stream量引导到2个后端: – 默认后端 – 具有单独的主机/path规则( <host>:/* )的第二个后端 两个后端都存在于同一个实例组上 – 一个运行两个kubernetes服务的容器集群,用于公开不同的NodePort。 实例组具有两个命名端口,每个暴露的NodePort都有一个端口。 尽pipe后端都报告健康,但是对第二个后端的所有请求都返回502。 服务本身不是问题 – 如果我将第二个后端后面的服务切换为默认,那么它工作正常。 注意 :自从首次发布以来,我已经更新/简化了这个描述,因为我可以用更简单的configuration来重现问题。

对于SSL桥接,HTTPS后端validation负载均衡器是否使用相同的私钥? 如果是这样,怎么样?

我们使用F5来执行负载平衡。 当使用SSL桥接而不是终止时,我们通常在前端使用通配符,在HTTPS后端使用常规的SSL证书。 然而,有些同事相信,对于像MS Exchange这样的应用,我们必须在后端和负载平衡器中使用相同的私钥。 我无法围绕后端如何检查负载均衡器使用的私钥。 我查了F5的文档,但是找不到任何相关的东西。 有人能帮我理解吗? 更新1:我开始强烈怀疑,这是一个虚假陈述,尽pipe有几个同事的帐户实际上发生了什么。 这种怀疑现在已被其他人重申。 当我find决定性的东西时我会更新。 如果有其他人有想法,请提交。 更新2:对于VMware Horizo​​n,我发现了一篇KB文章,解释了证书不匹配时收到的错误 。 我可以从这里得出结论:Horizo​​n正在做的是通过比较协议中的指纹来实现自己的检查吗?

如何WCF服务HTTPS绑定和terminalconfiguration与IIS中的负载平衡器?

我们有一个WCF服务,托pipe在一台12台机器上。 有一个负载平衡器是这些机器的网关。 现在该站点被设置为SSL; 就像用户通过使用带有https的URL访问它一样。 我知道这一点,寻址该网站的URL是https,但没有一个服务器有一个https绑定或被设置为需要SSL。 这使我相信,负载平衡器处理的HTTPS和从平衡器到服务器的连接是不encryption的(这发生在防火墙后面,所以没有biggie那里)。 我们遇到的问题是,当Silverlight客户端尝试访问WCF服务时,会出现“Not Found”错误。 我已经和我们的开发者机器一起build立了一个testing网站,并确保web.config中的绑定和端点与客户端一起工作。 在生产环境中似乎是这样,我们得到这个错误。 下面的web.config有什么问题吗? 我们应该如何设置https以不同的方式处理? 由于我已经尝试了使用端点和绑定的每个程序化解决scheme,所以我们目前处于这种状态。 我发现的解决scheme中没有一个以我们正在处理的方式处理负载平衡器。 Web.config服务模型信息: <system.serviceModel> <behaviors> <serviceBehaviors> <behavior name="TradePMR.OMS.Framework.Services.CRM.CRMServiceBehavior"> <serviceMetadata httpsGetEnabled="true" /> <serviceDebug includeExceptionDetailInFaults="false" /> </behavior> <behavior name="TradePMR.OMS.Framework.Services.AccountAggregation.AccountAggregationBehavior"> <serviceMetadata httpsGetEnabled="true" /> <serviceDebug includeExceptionDetailInFaults="false" /> </behavior> </serviceBehaviors> </behaviors> <bindings> <customBinding> <binding name="SecureCRMCustomBinding"> <binaryMessageEncoding /> <httpsTransport /> </binding> <binding name="SecureAACustomBinding"> <binaryMessageEncoding /> <httpsTransport /> </binding> </customBinding> […]

Nginx应该位于HAProxy的前端还是相反?

我在网站基础架构devise方面没有经验。 我知道这可能是具体情况。 该网站应该: 1)需要某些页面(例如login页面)的HTTPS支持,而其他页面只是HTTP页面。 2)需要多个Web服务器,以便需要一些负载平衡。 3)需要HTTPcaching和压缩来提升性能。 4)一些请求(例如图像上传)应该被路由到专用的后端服务器。 所以,基于URL的平衡是必需的。 我知道Nginx和HAProxy都是很好的开源反向代理和/或负载平衡器。 由于HAProxy不支持SSL,而Nginx负载平衡不如HAProxy。 我将采取两个。 那么,我应该把Nginx(作为反向代理)放在HAProxy(作为负载平衡器)的前面,还是相反? 谢谢

在使用NameVirtualHosts并redirect到www时,如何configuration我的ELB健康检查?

我的ELB不断让我的实例退出服务,因为HTTP健康检查失败。 我们有一个DNS通配符,并将所有内容redirect到www: vhost.conf: ServerName www.example.com ServerAlias *.example.com RewriteEngine on RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC] RewriteRule ^ http://www.example.com/$1 [R=301,L] 这适用于实际的浏览器,但HTTP健康检查/失败,大概是因为它得到了302。 是使用TCP健康检查的最佳select,还是有办法让HTTP工作?

我怎么知道我已经负载均衡的服务器?

我想testing一些configuration更改,以便在位于负载平衡器后面的两台服务器之间进行单向同步(这是所有Rackspace云基础架构的FYI)。 我遇到的问题是,我无法确定哪台服务器的负载均衡,因为我给出的IP始终是负载均衡器的IP。 有没有一个简单的(甚至不是很简单)的方式来告诉我实际上被引导到哪个服务器。 理想情况下,我喜欢浏览器中的某些内容,因为这意味着非技术团队成员也可以相对轻松地报告问题,但是有关最佳方法的任何想法都将得到赞赏。 其他信息:两台服务器都运行Apache,负载均衡器configuration了会话持久性。

基本重量与HAProxy的问题

分配给服务器的权重只影响特定后端的平衡吗? 当我第一次实行权重时,如果我把所有的服务器放在后端的数目相同,那么当我们没有权重的时候,是否和以前一样? 如何通过调整权重一定的数量来计算我正在炫耀的stream量。 例如: 服务器web1 10.10.10.10重量100 服务器web2 10.10.10.11权重100 服务器web3 10.10.10.12权重90 服务器web4 10.10.10.13权重90

Active Directoryauthentication负载平衡和故障转移

对于通过Active Directory DC进行身份validation的应用程序,显然最好将其指向主域DNSlogging,而不是用于故障转移,负载平衡等的特定DC。 那些迫使你对DC的IP进行硬编码的应用程序的最佳实践是什么? 我们可以硬编码一个负载均衡器的IP地址,所以如果一个DC发生故障,应用程序仍然可以进行身份​​validation。 有没有更好的select?