标签: load-balancing

Linux 相当于 Windows NLB

使用 Windows,我们可以通过安装 NLB 并选择我们想要在集群中的节点来为任意 IP 服务设置负载平衡。它会改变一些 MAC 地址,然后有算法来决定哪个节点处理传入的请求。

是否有与 Linux 相当的生产级?我不想要需要前端服务器物理地(网络方面)位于机器前面的东西(就像某些硬件 LB 那样,而 Linux 虚拟服务器那样,AFAIK)。我想要一些类似于 Microsoft 的 NLB 的东西——选择 N 个节点,它们都在同一个 IP 上侦听,并分配传入的请求。

linux windows load-balancing nlb

7
推荐指数
3
解决办法
1万
查看次数

负载均衡和 HTTPS 策略

我面临以下问题:服务器饱和,因为当前的负载平衡策略是基于客户端 IP 的。一些企业客户端从大型代理后面访问我们的服务器,因此所有客户端对我们的负载平衡器都具有相同的 IP。我认为我们正在使用一些硬件负载平衡设备(如有必要,可以进一步调查)。我们需要保持会话亲和性(站点是在 ASP 中构建的),因此所有具有相同 IP 的请求都会路由到同一个节点。

由于所有通信都通过 HTTPS,因此没有请求数据(如会话 ID)可用于平衡器作为客户端鉴别器。有没有办法使用除 IP 之外的其他一些数据来区分客户端并将客户端路由到不同的节点?

注意:我需要保持平衡器和节点之间的流量安全(加密)。

cluster https load-balancing

7
推荐指数
1
解决办法
3793
查看次数

如何扩展 Web 应用程序?

我主要是一名 Web 应用程序开发人员,我对缩放/可扩展性技术知之甚少。我的应用程序是用 Python 编写的,使用 Django;一个相当标准的设置。

我目前使用 Apache 2.2 作为我的网络服务器,而 MySQL 作为我的数据库服务器;两者都运行在同一个 VPS 上。

到目前为止,它基本上是一个原型,并且在任何给定时间只有 15-30 个并发用户;所以我没有问题,但现在由于我们将添加更多用户,我们将遇到性能问题。

所以我的问题是如何扩展我的网络应用程序?我目前的计划如下:

  1. 现在我只有一台 vps 服务器在运行,apache + MySQL。
  2. 接下来,我计划添加另一个 vps 服务器,仅运行 MySQL,因此我将拥有一个网络服务器和一个数据库服务器。
  3. 接下来,我将向网络服务器添加 memcache 以缓存数据,以减轻 MySQL 的负担。
  4. 接下来,另一个用于提供所有静态内容的 Web 服务器。
  5. 接下来,一个用于负载平衡的 VPS 服务器(nginx/varnish),后面将是我的两个网络服务器,然后是 db-server。

这听起来像一个可行的策略吗?请指导我在这里。

nginx scaling load-balancing apache-2.2

7
推荐指数
1
解决办法
611
查看次数

如何扩展我的 EC2 实例?

我对服务器配置和 Linux 很陌生,所以请耐心等待:

我有一个在 Ubuntu 10.04 LTS 上运行 LAMP 服务器的小型 EC2 实例。

如果需要,我完全不知道如何扩大规模以满足流量需求。我可以将服务器类型更改为大型吗?或者创建另一个实例并做一些负载平衡?我什至不知道如何开始那里。如果有人可以提供一些提示并为我指明正确的文档方向,我将永远感激不尽。谢谢!

ubuntu scaling load-balancing amazon-ec2

7
推荐指数
1
解决办法
2365
查看次数

多个 vCPU 或多个相同的 VM,哪个更好?

我想升级我们的一台服务器,一台运行 VMware Server 2 的 8 核服务器。它运行的虚拟机主要是 Web、文件和电子邮件服务器;具体来说,它运行三个网络服务器、两个电子邮件/文件服务器和几个 Jabber/XMPP 服务器。

当我们最初设置这台机器时,我们有两个 Web 服务器配置了两个 vCPU。我们遇到了一些非常严重的性能问题。当时我们只运行了 3 个虚拟机,总共有 5 个 vCPU。我们还运行了VMware Server 1和一个RAID1。我们现在已经升级到 RAID10,我永远不会考虑任何更少的东西!:-)

新服务器上将安装 VMware ESXi 而不是 VMware Server。我们正在寻找另一款具有更快处理器的 8 核机器,或者 16 核或 32 核服务器。我想确保避免我们之前遇到的问题。

因为我之前在多个 vCPU 上遇到过此类问题,所以我的计划是用多个相同的 Web 服务器 VM (2 - 4) 替换主 Web 服务器 VM,每个 VM 都有一个 vCPU,从 NFS 共享提供内容,并将它们放在负载中- 平衡配置。所以我基本上会用至少 4:2 个小型网络服务器 VM、一个文件服务器 VM 和一个负载平衡 VM 替换一个 VM。我的计划是双重的:首先,我可以避免我之前看到的任何多个 vCPU 使用,其次,我可以生成新的 Web 服务器虚拟机来处理增加的负载。

请注意,我知道我没有获得负载平衡的所有好处,因为我仍然存在单点故障

这是一个好的计划,还是没有必要?VMware ESXi 能否比三年前的VMware …

vcpu load-balancing smp vmware-esxi

7
推荐指数
1
解决办法
3832
查看次数

haproxy httpchk 对后端的多重检查

是否可以在一个后端检查两个条件?例子

backend web-static
        option httpchk GET /path/alive.php HTTP/1.1\r\nHost:\ www1.domain.com
        option httpchk GET /path2/alive.php HTTP/1.1\r\nHost:\ www1.domain.com
        server appsrv1 192.168.1.10:80 check inter 3000 weight 1
Run Code Online (Sandbox Code Playgroud)

load-balancing haproxy

7
推荐指数
2
解决办法
1万
查看次数

使用 HAProxy 对 MySQL 进行负载平衡:读取通信数据包时出错?

我已经通过 xinetd 使用 HAProxy设置了负载平衡 MySQL 从站。2 个负载均衡器共享一个由 Pacemaker 管理的虚拟 IP:

crm configure show

node SVR120-27148.localdomain
node SVR255-53192.localdomain
primitive failover-ip ocf:heartbeat:IPaddr2 \
    params ip="192.168.5.9" cidr_netmask="32" \
    op monitor interval="5s" \
    meta is-managed="true"
primitive haproxy ocf:heartbeat:haproxy \
    params conffile="/etc/haproxy/haproxy.cfg" \
    op monitor interval="30s" \
    meta is-managed="true"
colocation haproxy-with-failover-ip inf: haproxy failover-ip
order haproxy-after-failover-ip inf: failover-ip haproxy
property $id="cib-bootstrap-options" \
    dc-version="1.0.12-unknown" \
    cluster-infrastructure="openais" \
    no-quorum-policy="ignore" \
    expected-quorum-votes="2" \
    stonith-enabled="false" \
    last-lrm-refresh="1342783084"
Run Code Online (Sandbox Code Playgroud)

/etc/haproxy/haproxy.cfg

global
    log 127.0.0.1 local1 debug …
Run Code Online (Sandbox Code Playgroud)

mysql connection load-balancing haproxy

7
推荐指数
1
解决办法
6727
查看次数

HAProxy 没有公平地平衡服务器负载

HAProxy 似乎并没有保持与服务器的连接平衡。

请记住这一点:

  • 使用 HAProxy v1.3.26
  • 5 个均衡的服务器规格
  • 算法是循环的,但没有对每个服务器应用权重
  • 在 haproxy 中设置的全局最大连接数为 80,000

如图所示,服务器 C 和 D 的连接似乎比其他服务器多。由于这种额外的负载,它们会继续下降并自动重新启动。

状态 配置

我尝试阅读 HAproxy 官方文档并进行了一些谷歌搜索,但没有发现任何有用的信息。希望这里有人可以提供帮助。

几个问题:

  1. 为什么当配置说使用 roundrobin、服务器规格相同并且没有应用权重时会出现这种情况?

  2. 什么决定了“会话”列中的“最大”子列(表示 1970、1444 等的那个)。服务器 C、D、E 在 3K 范围内,其他 2 个在 2K 以下。为什么会有差异?

  3. 如何让这一切保持平衡?

  4. 有人可以解释每一列吗?我很惊讶 HAproxy 的官方文档并没有真正解释它。

scaling load-balancing haproxy

7
推荐指数
1
解决办法
2924
查看次数

如何扩展支持长轮询的 Web 服务器

我计划添加更多 Web 应用程序服务器以支持不断增加的客户端,部署 HAproxy 和 Keepalived 以实现负载平衡和高可用性。

我的服务器使用具有以下特点:

  1. 作业不是 CPU 密集型的。消息是少于 100 个字符的 JSON 文本。
  2. 用户将通过客户端设备 Y 向服务器发送消息。通常每天 4-5 条消息
  3. 客户端设备 X 一直在等待来自服务器的消息。如果消息在服务器上可用,客户端设备 X 必须能够在 2 秒内得到它。否则,此消息已过时。

为此原因,

  1. 客户端设备 X 正在使用长轮询 HTTP 连接以进行响应。每个连接将持续 5 秒并重新连接。
  2. 客户端设备 X 和客户端设备 Y 连接到同一服务器,因此 X 和 Y 可以轻松发送消息

如果有超过 60,000 个客户端设备 X 连接到服务器,我的负载平衡器或路由器将耗尽 TCP 端口。例如,扩展 20,000 个用户的最佳方法是什么?

我的服务器在 Ubuntu 服务器上运行,使用 tomcat 和 Java Servlet。

linux ubuntu tomcat high-availability load-balancing

7
推荐指数
1
解决办法
3559
查看次数

Amazon Web Services 上的负载平衡 Wordpress:管理更改

我对 Amazon Web Services 比较陌生,我正在尝试了解 Elastic Load Balancing 如何在我的 wordpress 设置上下文中工作。此外,我想就拟议的基础设施提供一些建议。

我最初提议的基础设施如下:

  • 1x EC2 m1.small - Ubuntu 12.04.3 LTS 64 位(带有 1 个 EBS 卷)
  • 1x EC2 t1.micro - Ubuntu 12.04.3 LTD 64 位(有或没有 EBS 卷?)
  • 1 个微型 RDS 实例 - MySQL 5.6.13

EC2 我当前的 EC2 (t1.micro) 正在运行 LAMP 堆栈并配置为运行 wordpress。

我想用 m1.small 实例来负载平衡,运行 t1.micro 实例的克隆。

我目前的未知数如下:

  • 负载平衡设置将如何管理跨实例在 wordpress CMS 上所做的更改?每次在 wordpress 中进行更改时,我是否都必须不断更新 AMI?
  • 我的网站是一个电子商务网站。这在负载平衡设置中是否有任何影响?即,订单是否有可能存在于一个实例而不是另一个实例上?

这可能是一个非常愚蠢的问题,但我认为有些问题不会相关,因为基础设施正在引用一个数据库。

最后,有没有更好的方法来设置负载平衡的基础设施?即我是否应该考虑使用 Amazon S3 来存储我的所有文件并使用 Cloudfront 作为 CDN 以确保高效运行并解决任何 EBS 文件复制问题。

非常感谢任何帮助。

劳埃德

load-balancing wordpress amazon-web-services

7
推荐指数
1
解决办法
5999
查看次数