主页 > 电脑硬件  > 

HAProxy实现MySQL服务器负载均衡实验

HAProxy实现MySQL服务器负载均衡实验
一、实验目标

通过配置 HAProxy 实现对 MySQL 服务器的负载均衡,确保请求能够均匀分配到后端的多个 MySQL 数据库服务器上,提高系统的可用性和性能。

二、实验环境

服务器 IP 分配:

haproxy节点192.168.65.131mysql服务器1192.168.65.132mysql服务器2192.168.65.133 三、实验步骤 (一)安装 HAProxy

更新系统:

sudo yum update -y

安装 HAProxy:

sudo yum install haproxy -y (二)安装 MySQL 服务

在每台 MySQL 服务器上安装 MySQL 服务。

更新系统:

sudo yum update -y

安装 MySQL :

yum install mysql-server.x86_64 -y

启动 MySQL 服务:

sudo systemctl start mysqld sudo systemctl enable mysqld

设置 MySQL 根用户密码:

alter user root@localhost identified by 'mysql@123';

按提示设置 root 用户密码,并完成安全设置。

(三)配置 MySQL 数据库

登录 MySQL 数据库:

mysql -u root -p

创建测试数据库:

CREATE DATABASE testdb_1; #mysql服务器1 CREATE DATABASE testdb_2; #mysql服务器2

为了确保 HAProxy 节点能够连接到后端 MySQL 数据库服务器,需要在每台 MySQL 服务器上授权远程连接。

登录 MySQL 数据库:

mysql -u root -p

授权远程连接:

USE mysql; CREATE USER 'root'@'192.168.65.131' IDENTIFIED BY 'mysql@123'; GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.65.131' WITH GRANT OPTION; FLUSH PRIVILEGES;

重启 MySQL 服务:

sudo systemctl restart mysqld (五)配置 HAProxy

编辑 HAProxy 配置文件:

sudo vi /etc/haproxy/haproxy.cfg

配置内容:

global log /dev/log local0 log /dev/log local1 notice stats timeout 30s daemon defaults log global mode tcp option tcplog option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 frontend mysql_front bind *:3306 mode tcp default_backend mysql_back backend mysql_back mode tcp balance roundrobin server mysql1 192.168.65.132:3306 check server mysql2 192.168.65.133:3306 check listen stats bind *:8080 mode http stats enable #启用统计页面 stats uri /stats #定义统计页面的访问路径为 /stats stats realm "HAProxy Statistics" #设置访问统计页面时的认证提示信息 stats auth admin:password #设置访问统计页面的用户名和密码

重启 HAProxy 服务:

sudo systemctl restart haproxy (六)验证负载均衡

多次在客户端连接 MySQL:

mysql -h 192.168.65.131 -P 3306 -u root -p

由于默认采用轮询算法,所以第一次连接后数据库为testdb_1,第二次为testdb_2

(七)监控 HAProxy 状态

访问 HAProxy 状态页面: 在浏览器中访问 http://192.168.65.131:8080/stats并输入用户名和密码

查看后端服务器状态: 确保所有后端 MySQL 服务器状态为 UP。

四、实验结果

通过 HAProxy 配置,MySQL 服务器的请求被成功均衡分配到后端的三台 MySQL 服务器上,实现了负载均衡。客户端通过 HAProxy 连接 MySQL 时,能够正常访问数据库,并且后端服务器的负载得到了有效分担。

标签:

HAProxy实现MySQL服务器负载均衡实验由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“HAProxy实现MySQL服务器负载均衡实验