安装nginx
https://nginx.org/en/download.html
首先从nginx官网中下载nginx 1.12.2.tar.gz
解压nginx.1.22.2.tar.gz
之后,执行以下命令基于stream编译Nginx,使得Nginx能够提供tcp
代理的功能
./configure --with-stream
make
make install
配置Nginx
对/usr/local/nginx/conf/nginx.conf
进行配置
[hadoop@hadoop102 nginx]$ vim conf/nginx.conf
在下方的配置中,我指定了访问的策略为least_conn(最小连接个数)
,并对外开放3306
端口。这样我就能通过虚拟IP:3306访问SQL节点的mysqld服务
stream {upstream mysqld {least_conn;server 192.168.182.103:3306 max_fails=3 fail_timeout=30s;server 192.168.182:103:3306 max_fails=3 fail_timeout=30s;}server {listen 3306;proxy_connect_timeout 30s;proxy_timeout 43200s;proxy_pass mysqld;}
}
我最后用sysbench对虚拟IP:3306进行压测后发现负载均衡配置成功,两台SQL节点服务器均能banlace并发请求