怎么搭建LVS+Keepalived+MySQL
发布时间:2021-12-17 09:53:40 所属栏目:MySql教程 来源:互联网
导读:本篇内容主要讲解怎么搭建LVS+Keepalived+MySQL,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习怎么搭建LVS+Keepalived+MySQL吧! LVS负责负载均衡转发请求,keepalived负责检查LVS的realserver状态,及时remove失
本篇内容主要讲解“怎么搭建LVS+Keepalived+MySQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么搭建LVS+Keepalived+MySQL”吧! LVS负责负载均衡转发请求,keepalived负责检查LVS的realserver状态,及时remove失效节点、add复活节点。 本实验主要功能测试,所以只准备了两台MySQL服务器,仅为简单说明问题。 vm1 10.0.0.11 master server_id 11 vm2 10.0.0.12 slave server_id 12 ![]() Director: vm3 10.0.0.14 VIP: 10.0.0.20 1 在Directory server vm3 上安装ipvsadm和keepalived yum install ipvsadm 安装keepalived yum install libnfnetlink* tar -zxvf keepalived-1.2.7.tar.gz ./configure --prefix=/usr/local/keepalived make && make install cp /usr/local/keepalived/sbin/keepalived /usr/sbin/ cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/ cp /usr/local/keepalived/etc/rc.d/init.d/keepalived /etc/init.d/ mkdir /etc/keepalived 2 vm1 vm2上,执行以下操作. echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce ifconfig lo:0 10.0.0.20 netmask 255.255.255.255 3 在Directory server vm3上编辑/etc/keepalived/keepalived.conf文件,内容如下: 点击(此处)折叠或打开 global_defs { router_id HaMySQL_1 } vrrp_sync_group VGM { group { VI_MYSQL } } vrrp_instance VI_MYSQL { state MASTER interface eth0 virtual_router_id 100 priority 100 advert_int 1 authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 10.0.0.20 } } virtual_server 10.0.0.20 3306 { delay_loop 6 lb_algo rr lb_kind DR protocol TCP nat_mask 255.255.255.0 persistence_timeout 10 real_server 10.0.0.11 3306 { weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } real_server 10.0.0.12 3306 { weight 3 TCP_CHECK { connect_timeout 3 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } } 4 启动MySQL和keepalived。 vm1: /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql3306/my.cnf & vm2: /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql3306/my.cnf vm3: /etc/init.d/keepalived start 5 验证 vm3: [root@vm3 keepalived]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.20:3306 rr persistent 2 -> 10.0.0.11:3306 Route 3 1 0 -> 10.0.0.12:3306 Route 3 1 0 可以看到负载均衡已启动,vm2 vm3都已加进来了。 从客户端连接VIP 10.0.0.20:3306 C:mysql-5.7.11-winx64mysql-5.7.11-winx64bin>mysql.exe -uroot -pmysql -h20.0.0.20 -P3306 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 90 Server version: 5.6.27-log Source distribution Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql> select @@server_id;exit; +-------------+ | @@server_id | +-------------+ | 11 | +-------------+ 1 row in set (0.00 sec) 从server_id可以看出客户端连接的是vm1。 关掉vm1上的MySQL服务。 [root@vm3 keepalived]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.20:3306 rr persistent 2 -> 10.0.0.12:3306 Route 3 1 0 LVS规则已经更新,remove了vm1,再次从客户端连接。 C:mysql-5.7.11-winx64mysql-5.7.11-winx64bin>mysql.exe -uroot -pmysql -h20.0.0.20 -P3306 mysql: [Warning] Using a password on the command line interface can be insecure. Welcome to the MySQL monitor. Commands end with ; or g. Your MySQL connection id is 61 Server version: 5.6.27-log Source distribution Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or 'h' for help. Type 'c' to clear the current input statement. mysql> select @@server_id;exit; +-------------+ | @@server_id | +-------------+ | 12 | +-------------+ 1 row in set (0.00 sec) 重新启动vm1上的MySQL服务。 [root@vm3 ~]# ipvsadm -Ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port Forward Weight ActiveConn InActConn TCP 10.0.0.20:3306 rr persistent 2 -> 10.0.0.11:3306 Route 3 1 0 -> 10.0.0.12:3306 Route 3 1 1 LVS规则已自动刷新,vm1重新被加入。 到此,相信大家对“怎么搭建LVS+Keepalived+MySQL”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习! (编辑:上海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
热点阅读