我有两个运行mod_proxy_balancer的负载平衡服务器。 每台服务器在两台Web服务器之间平衡。 现在我想find一种方法来在这两个负载平衡服务器之间共享一个IP地址,以一种可以故障切换的方式。 是否有可能使用心跳(没有ldirectord)共享一个IP地址,mod_proxy_balancer? 如果是这样,有人可以指示我一些指示,或build议的方式进行? 我所见过的所有心跳指南假设你使用ldirectord或起搏器(因为我的云服务器的限制,我无法使用它)。
我一直在玩高可用性解决scheme几天,到目前为止,我发现UCARP非常有用的IP故障切换。 这是死了简单,做这项工作。 我正想着更进一步: 如果连接共享相同IP的两个节点的路由器将始终发送所有分组到两个节点 (总是),那么我可以实现更大的负载平衡 。 这就像一个“主 – 主”解决scheme,而不是“主备”。 来源IP是可分的。 如上所述,冗余组合 ,假设两个这样的节点共享一个(“虚拟”)IP。 当他们都起来的时候,他们会简单地分开客户端的源IP(它的普通数字),并知道如何做出反应。 例如,Node1使用除以2的IP。 剩下的就是Node2。 客户端启动TCP / IP连接(通过共享IP)。 连接两个节点的路由器都将此请求发送给两者。 如果客户端的IP完全被2分割,则Node1应答。 此时Node2忽略,因为它知道Node1。 如果一个节点发生故障,例如Node1,则另一个节点(Node2)检测到它 – 通常情况下, 就像UCARP一样! 那时Node2将开始为其他客户提供服务。 当Node1回来的时候,Node2将停止从一个可被2除尽的IP来的SYN请求(TCP / IP连接启动的第一步),让Node1继续服务。 从路由器的方向可能会出现一个可能的问题 :它需要将每个传入的数据包发送到冗余组中的X个节点。 高(er)内部networking负载。 另一个可能的问题是,每个节点实际上获得很多很多的数据包,即使是那些“不需要”的数据包。 有了今天的路由器/networking卡,我认为这是一个非常小的价格,而非常高的可用性 。 更不用说,在这种情况下,我会充分利用我的资源(以一种好的方式),而不是使用一个或多个“待命”服务器,这些服务器只能做到“待命”。 我确切的问题是: 1)有没有这样的解决scheme? (开源,免费,基于Linux)。 2)路由器能支持这样的事情吗? 它应该支持哪些标准? 我会问DS / VPS提供商有关这种能力的是什么? 无论如何,这是我对这个问题的一些思考。 我很乐意得到一个简洁的答案支持的链接和几个字。 不仅如此,显然是欢迎:)
我有以下设置: 左边的路由器是一个棍子上的路由器,用于在具有不同VLAN的LAN内路由stream量。 左边的交换机是我们LAN的根交换机,可以作为VTP服务器。 这也连接到路由器6。 这是我想要做的: 我想用这四台路由器将这个局域网连接到一个未来的其他局域网(这个局域网将以类似的方式连接到路由器4和5),因为这个连接必须是高可用的。 但是,当然,交换机不能有2个默认网关(对吧?),我不能给路由器在相同的范围内的IP地址。 我将如何最好地解决这个问题? 这样,交换机就可以ping任何这些路由器,并在将来ping任何其他LAN中的设备。 这里是运行configuration: 路由器在左边: Building configuration… Current configuration : 1291 bytes ! version 12.4 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption ! hostname Router ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! […]
我们目前有一个简单的3服务器设置: Cloud NGinx / Apache web服务器(NGinx提供静态,dynamic代理到Apache / PHP后端) 专用数据库服务器 云传出电子邮件+监控服务器 我们正处于需要扩展/扩展我们的Web服务器的地步。 我们希望获得以下成果: 如果Web服务器失败,最大限度地减less停机时间 在高峰时段提供额外的容量 允许我们升级一个networking节点,而不会取消网站 也允许SSL服务 我想添加一个额外的networking节点,与原来的networking节点具有相同的容量,而不是将现有networking节点的容量加倍,因为这会给我们一个故障转移/镜像节点(当负载平衡时)来提高容量并提供冗余。 我已经深入地研究了这些选项,目前HAProxy似乎无法处理SSL问题(并且不希望在负载均衡器中终止,所有SSLstream量都必须进行端对端encryption,结束)。 我的select似乎是: 答:在两个networking节点的前面添加一个软件负载平衡器(例如Nginx)。 这里的问题是用户上传UGC时,在其他节点上不可用。 通过粘性会话这不是一个问题,但最终我们需要同步上传的内容,否则节点将失去同步。 可以使用Rsync,但我们正在看master-masternetworkingconfiguration,需要双向…。 B:如上所述,但是使用负载平衡器也可以提供静态内容。 然后,这将从Web节点卸载一些处理。 我们可以将所有从networking节点上传到负载均衡节点的rsync同步,这样它就只能从web-> load balancer单向rsync。 任何非静态请求都会对Web节点进行负载平衡。 这将所有的静态内容保留在一个地方,但我的目标是有一个小的负载平衡节点,这可能会增长相当大? c:作为A,但是使用NGinx来指示上传可能(这很容易分割)的任何访问者stream量到一个“主”服务器上传,并且在其它节点之间为“只读”stream量进行相当的负载平衡。 这使得同步变得简单,因为它将是单向的(主节点networking节点 – >从属节点),使我们能够更好地使用networking节点上的磁盘空间,并保持负载平衡器的静态内容不变。 但是,这意味着如果主节点出现故障,我们需要手动将我们的“上传”区域的stream量切换到剩余的服务器(nginx可能能够做这个切换,我们只是有一个不同的负载平衡configuration我们的上传区域) B似乎是一个很好的configuration,而且我可以将Load Balancer节点与我们现有的电子邮件/监控服务器结合,因为它闲置。 负载均衡节点有一个单点故障,但是在紧急情况下,我们可以调出一个新的云实例来替代这个实例。 不过,我不喜欢只有在一个节点上的静态图像的想法,因为我们没有固有的备份。 我也喜欢C的想法,因为这意味着它保持简单。 如果负载平衡器失败,我们可以直接将stream量引导到其中一个networking节点,而没有任何问题(因为它们都有一整套静态文件)。 任何上述解决scheme的input将非常感激
Hy,我想在我的mysql服务器上更新我的数据库,但是现在我通常在更新之前将服务器closures。 我不知道是否有任何解决scheme,使更新没有任何中断的网站disponibility? 谢谢你的帮助。
我一直在寻找支持SSL的服务器集群的不同设置,我想用你的标准来衡量我的想法。 要求: 群集中的所有服务器应该位于相同的完整域名下。 (http和https) 路由到子系统是在HA代理中进行URI匹配。 所有URI都支持SSL支持。 希望: 集中路由规则 —<—-http—–<– | | Inet –>HA–+—https—>NGInx_SSL_1..N | | +—http—> Apache_1..M | +—http—> NodeJS 想法:configurationHA将所有SSLstream量(mode = tcp,algorithm = Source)路由到一个将httpsstream量转换为http的NGInx集群。 将来自NGInx的httpstream量重新传递给HA,以实现基于HAconfiguration的负载平衡。 我的问题很简单:这是根据以上要求进行configuration的最佳方式吗?
在发生故障的情况下,如何确保两台物理服务器上的数据的高可用性? 我有两台戴尔T710,都是Windows Server 2008 R2 Standard。 我最重要的是要确保这些数据随时可用。 集群是我唯一的select吗?
我正在学习使用keepalived; 现在在一台机器内 – 只是为了确保转发工作。 我开始在192.168.56.200:8080上侦听一个模拟networking服务器。 它只是回复主机名。 $ curl http://192.168.56.200:8080/ controller-1 现在我configuration了keepalived(/etc/keepalived/keepalived.conf): virtual_server 192.168.111.1 8082 { delay_loop 30 lb_algo rr lb_kind DR persistence_timeout 50 protocol TCP real_server 192.168.56.200 8080 { weight 1 TCP_CHECK { } } } vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 1 priority 100 virtual_ipaddress { 192.168.111.1/24 } } 但是,似乎并不奏效。 $ curl […]
我们正在寻找不同的select,以便在我们的主要数据中心(DC1)出于任何原因停机时保持运行。 使用日志传送作为热备份,使非现场服务器始终保持最新状态的主要区别是什么? (这意味着我们将手动redirectDNS,如果DC 1下降或离线DC2)。 与运行Hyper V群集并将其设置为在DC 1closures时自动故障切换到DC 2? 虽然不清楚stream量如何实时redirect,除非我们在云中运行某种负载平衡器? 如果是自动的,我认为Hyper V集群选项将为我们提供最less的停机时间? 那么我们甚至打扰与SQL服务器日志传送? 看来这两件事在某些方面是重叠的,我们不需要两者兼而有之。 我知道Hyper V群集需要某种共享的光盘(在这种情况下,将iscsi target视为服务器映像的san选项),但是sql server日志传送也似乎需要一个见证服务器,所以无论哪种方式引入更多的硬件pipe理。 DB是SQL 2008 R2上运行的30Gb,Web是2008 R2(计划在未来几个月内升级到2012)。
使用Amazon Route53 DNS ,是否可以构build指向不在Amazon的多个Web服务器的高可用性设置? 我不需要担心会话粘性。 假设我有两个Web服务器: web1 – 50.23.45.100 web2 – 50.23.45.101 如果我为mydomain.com.创build两个Aloggingmydomain.com. 指向50.23.45.100和50.23.45.101 ,每个TTL为1分钟,这个工作吗? 当两个Web服务器都启动时,请求是如何发送的? 均匀? 只有到web1 ? 当web2出现故障时,我可以使用一个自动脚本删除Alogging为50.23.45.101 ? 那么当web2恢复时,简单地重新创buildAlogging? 谢谢。