pfSense配置使用HAProxy进行Web负载均衡

HAProxy是一款开源软件,可为TCP/HTTP服务提供高可用性和负载平衡。它以速度和高效的性能而闻名。本文将介绍在pfSense上配置HAProxy实现负载平衡的过程。

HAProxy 有两个部分,第一个是前端,第二个是后端。

前端侦听对用户开放的端口,主要面向外部的。后端是本地服务器。创建一个前端并指向后端,后端可以连接多个服务器。

下面是本文使用的拓扑。

有三个网络服务器连接到pfSense的LAN 端,它在80端口上运行一个apache 服务。配置HAProxy以循环的方式在所有三个网络服务器上执行负载平衡。

在局域网内,可以正常访问 Web 服务。下面我们将通过设置HAProxy,让外部用户通过防火墙来平衡访问内部的三台服务器。

安装 HAProxy

转到系统 –> 插件管理,点击可用插件选项卡,搜索HAProxy,单击右侧的安装按钮进行安装。

安装完成后,如下图所示:

配置http服务负载均衡

现在为在 http 端口号上运行的三个Web服务器配置HAProxy 负载平衡。导航到服务>HAProxy,打开HAProxy。

配置后端服务器

首先配置后端服务器,后端服务器是局域网内的的虚拟服务器,包含Web 服务器 1、2 和 3。

单击后端选项卡。

单击添加配置后端服务器。

填写以下必填字段。

名称:提供一个用户友好的名称;如:http_web_server_pool1

在服务器列表下,可以单击添加服务器字段来逐一添加服务器。

需要填写的字段如下。

  • 模式:Active
  • 名称:web1
  • 地址:10.1.1.11
  • 端口:80

之后,单击左下角的添加按钮添加下一个服务器。

添加第二个服务器,如下所示。

  • 模式:Active
  • 名称:web2
  • 地址:10.1.1.12
  • 端口:80

按照上述步骤添加了第三个服务器,如下所示。

  • 模式:Active
  • 名称:web3
  • IP:10.1.1.13
  • 端口:80

配置负载平衡选项

现在配置负载平衡选项,它位于服务器列表的正下方。

有多个选项可用,我们使用循环方法,这是一种标准的负载平衡方法,将平均加载后端服务器。

还可以进一步配置 ACL – 访问控制列表和操作以及超时/重试设置,本文只介绍基本配置。

服务器健康检查

选中使用健康检查选项来监控后端服务器的健康状态。选择HTTP作为健康检查方法,因为它将使用 HTTP 协议检查 Web 服务器的健康状态。

可以启用日志检查,当任何 Web 服务器出现故障时,会自动生成日志。

选择HTTP 检查方法为 GET。

其他选项保留为默认值,然后单击“立即保存”并应用更改。

在没有将后端服务器附加到前段之前,后端服务器会显示为灰色,如下图所示:

配置前端

单击“前端”选项卡并单击“添加”按钮来配置前端。

编辑 HAProxy 前端。

  • 名称:http_access
  • 描述:提供对 web1、2 和 3 的 http 访问
  • 状态:Active
  • 外部地址:保留为默认设置。
  • 监听地址:WAN地址(ipv4)
  • 端口:80

设置将使前端 IP 地址开始侦听端口 80

将后端附加到前端

向下滚动并在默认后端、访问控制列表和操作下。

从下拉列表中选择新创建的后端服务器,然后单击保存来应用更改。

HAProxy设置

配置前端后,现在可以单击 HAProxy 配置上的设置选项卡。这是启用 HAProxy 进程的地方;选中启用 HAProxy 的选项。

在每个进程的最大连接数上输入1000。

将其他所有内容保留为默认值并向下滚动到下一部分统计选项卡,内部统计端口。

如果需要,可以添加任何可用的端口,这里选择 2000,这取决于你希望使用哪个端口号。

然后单击“保存”。

配置防火墙规则

配置防火墙规则,以允许从外部访问防火墙的80端口。单击防火墙–>规则策略–>WAN。单击添加新策略。

规则如下:

  • 动作:PASS
  • 接口:WAN
  • 地址系列:IPv4
  • 协议:TCP
  • 源:ANY
  • 目标:ANY
  • 目标端口:HTTP

测试

现在准备在pfSense上测试负载均衡服务,在这之前检查一下统计表,应该看到所有的网络服务器都显示为绿色。

在同一个HAProxy 配置窗口中,可以在同屏或全屏上查看统计信息。右键单击Stats FS,然后单击新选项卡中的打开链接。

这将在新选项卡中打开统计表,如下所示。

访问网页

在外部访问防火墙外网IP地址,第一个请求将连接到web1,第二个将连接到web2,依此类推。每当访问防火墙的80端口时,它都会转到内部的的不同虚拟服务器上。

检查统计数据

也可以从 HAProxy 统计信息屏幕进行验证。

当刷新Web服务器选项卡两次时,在统计信息中看到请求转到 web1和 web2。

原文地址

评论

  1. pfsense
    2 年前
    2023-1-05 22:55:21

    哈哈,我用的也是10.1.1.x网段

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇