HAProxy基础

介绍

运维

安装

CentOS7中在线安装HAProxy1.5

1
2
3
4
5
6
7
8
9
$ yum install haproxy -y
### 配置HAProxy
$ vi /etc/haproxy/haproxy.cfg
### 启动HAProxy
$ service haproxy start
### 设为开机启动
$ chkconfig haproxy on
### 查看HAProxy的版本
$ haproxy -v

CentOS7中在线安装HAProxy1.8

1
2
3
4
5
6
7
8
9
10
$ yum install centos-release-scl -y
$ yum install rh-haproxy18-haproxy rh-haproxy18-haproxy-syspaths -y
### 配置HAProxy
$ vi /etc/haproxy/haproxy.cfg
### 启动HAProxy1.8
$ systemctl start rh-haproxy18-haproxy
### 查看HAProxy1.8的状态
$ systemctl status rh-haproxy18-haproxy
### 设为开机启动
$ systemctl enable rh-haproxy18-haproxy

CentOS7中编译安装HAProxy

1
2
3
$ cd /usr/local/
$ wget http://www.haproxy.org/download/1.8/src/haproxy-1.8.7.tar.gz
$ tar zxvf haproxy-1.8.7.tar.gz

Ubuntu中安装HAProxy

1
2
3
4
5
6
7
8
9
10
11
$ sudo add-apt-repository ppa:vbernat/haproxy-1.8
$ sudo apt-get update
$ sudo apt-get install haproxy
### 卸载haproxy
$ sudo apt-get remove haproxy
### 卸载haproxy及其依赖包
$ sudo apt-get remove --auto-remove haproxy
### 清除haproxy(删除haproxy的配置和/或数据文件)
$ sudo apt-get purge haproxy
### 清除haproxy(删除haproxy的配置和/或数据文件及其依赖项)
$ sudo apt-get purge --auto-remove haproxy

Mac中安装HAProxy

1
2
$ brew install haproxy
$ vi /usr/local/etc/haproxy.cfg

内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
defaults
mode tcp

frontend shadowsocks-in
mode tcp
bind *:8388
default_backend shadowsocks-out

backend shadowsocks-out
mode tcp
balance roundrobin
server server1_name 123.123.123.101:8388
server server2_name 123.123.123.102:8388
server server3_name 123.123.123.103:8388

配置

配置文件位置

操作系统 位置
Ubuntu /etc/haproxy/haproxy.cfg
MacOS 默认不带配置文件需要自己创建。建议位置:
/usr/local/etc/haproxy.cfg

配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
defaults
mode tcp

frontend shadowsocks-in
mode tcp
bind *:8050
default_backend shadowsocks-out

backend shadowsocks-out
mode tcp
balance roundrobin
server server1_name 127.0.0.1:8050
server server2_name 127.0.0.1:8050
server server3_name 127.0.0.1:8050

重启Haproxy

1
2
3
4
# 重启前验证配置
$ haproxy -c -f /etc/haproxy/haproxy.cfg
# 重启Haproxy
$ sudo service haproxy restart

验证HaProxy配置

访问监听地址中绑定的ip:port。

常见问题

Mac安装注意事项

如果要用brew services后台运行haproxy,一定不要把haproxy自身配置成daemon运行。如果在配置文件中有这句配置:

1
2
global
daemon

而你又用brew services后台自动运行,那么会发现隔几分钟haproxy就会生成一个新的进程,直到耗尽系统资源。

参考

坚持原创技术分享,您的支持将鼓励我继续创作!
0%