一、IP信息列表:
名称 IP
LVS-DR-VIP 192.168.50.245
LVS-DR-Master 192.168.50.216
LVS-DR-BACKUP 192.168.50.217
MySQL1-Realserver 192.168.50.2
一、IP信息列表:
名称 IP
LVS-DR-VIP 192.168.50.245
LVS-DR-Master 192.168.50.216
LVS-DR-BACKUP 192.168.50.217
MySQL1-Realserver 192.168.50.212
MySQL2-Realserver 192.168.50.213
GateWay 192.168.50.254
其他(部署LVS过程中无需配置):
MGM管理节点 192.168.50.211
NDBD存储节点1 192.168.50.214
NDBD存储节点2 192.168.50.215
一. 安装LVS和Keepalvied软件包
1. 下载相关软件包
#cd /usr/local/src/tarbag
#wget http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
#wget http://www.keepalived.org/software/keepalived-1.1.15.tar.gz
2. 安装LVS和Keepalived
#lsmod |grep ip_vs
#uname -r
2.6.18-128.el5
#ln -s /usr/src/kernels/2.6.18-128.el5-i686/ /usr/src/linux
//这步一定要做,否则ipvsadm编译会报错
#tar zxvf ipvsadm-1.24.tar.gz
#cd ipvsadm-1.24
#make && make install
#tar zxvf keepalived-1.1.15.tar.gz
#cd keepalived-1.1.15
#./configure && make && make install
#cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
#cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
#mkdir /etc/keepalived
#cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
#cp /usr/local/sbin/keepalived /usr/sbin/
#chkconfig add keepalived
#chkconfig keepalived on #做成系统服务
#service keepalived start|stop|status
二、配置lvs与RealServer脚本
1.lvs脚本(主备两台LVS上操作)
#vi /usr/local/sbin/lvs-dr.sh
//以下为脚本内容
#!/bin/bash
# description: start LVS of DirectorServer
#Written by :NetSeek http://www.linuxtone.org
GW=192.168.50.254 #当前局域网网关ip
# website director vip.
MySQL_VIP=192.168.50.246 #MySQL虚拟IP地址
MySQL_RIP1=192.168.50.212
MySQL_RIP2=192.168.50.213
/etc/rc.d/init.d/functions
logger $0 called with $1 #记录到系统日志messages
case "$1" in
start)
# set squid vip
/sbin/ipvsadm --set 30 5 60 #分别为协议tcp tcpfin udp 的超时时间
/sbin/ifconfig eth0:0 $MySQL_VIP broadcast $MySQL_VIP netmask 255.255.255.255 broadcast $MySQL_VIP up #新建VIP
/sbin/route add -host $MySQL_VIP dev eth0:0 #为VIP添加路由
/sbin/ipvsadm -A -t $MySQL_VIP:3306 -s wrr -p 3 #添加一个VIP
/sbin/ipvsadm -a -t $MySQL_VIP:3306 -r $MySQL_RIP1:3306 -g -w 1 #将VIP:3306的请求转发到RIP1上,-g表示使用DR模式,-w表示权重为1
/sbin/ipvsadm -a -t $MySQL_VIP:3306 -r $MySQL_RIP2:3306 -g -w 1
touch /var/lock/subsys/ipvsadm >/dev/null 2>&1 #新建文件ipvsadm,主要用来表示服务器已经启动,为status做准备
;;
stop)
/sbin/ipvsadm -C #清空LVS所有规则
/sbin/ipvsadm -Z #所有服务器计数器清零
ifconfig eth0:0 down #禁用虚拟网卡eth0:0
route del $MySQL_VIP #删除VIP的路由
rm -rf /var/lock/subsys/ipvsadm >/dev/null 2>&1
echo "ipvsadm stoped"
;; #相当于C语言中的break,跳出case
status)
if [ ! -e /var/lock/subsys/ipvsadm ];then #如果ipvsadm不存在则输出ipvsadm stoped
echo "ipvsadm stoped"
exit 1
else
echo "ipvsadm OK"
fi
;;
*)
echo "Usage: $0 {start|stop|status}"
exit 1
esac
exit 0
2.RealServer脚本(所有MySQL上操作)
#vi /usr/local/sbin/realserver.sh
#!/bin/bash
# description: Config realserver lo and apply noarp
#Written by :NetSeek http://www.linuxtone.org
MySQL_VIP=192.168.50.245 #虚拟IP
/etc/rc.d/init.d/functions #这个作用暂时不知道,知道的同学帮忙修改一下
case "$1" in
start)
ifconfig lo:0 $MySQL_VIP netmask 255.255.255.255 broadcast $MySQL_VIP #新建虚拟ip,LVS中所有的VIP都一致
/sbin/route add -host $MySQL_VIP dev lo:0
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
sysctl -p >/dev/null 2>&1
echo "RealServer Start OK"
;;
stop)
ifconfig lo:0 down
route del $MySQL_VIP >/dev/null 2>&1
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
echo "RealServer Stoped"
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac
exit 0
三、启动相关服务
1.主备LVS
#chmod 755 /usr/local/sbin/lvs-dr.sh #赋予执行权限
#/usr/local/sbin/lvs-dr.sh #启动lvs
#service keepalived start #启动keepalived服务
2.MySQL Cluster中的2台SQL节点
#cd /usr/local/sbin
#chmod 755 realserver.sh
#./realserver.sh
四、测试
方法1:
#telnet 192.168.50.245 3306
N
5.1.39-ndb-7.0.9-cluster-gpl-log菔1sti5i5+;*^{qFI{OWJ
//出现以上内容说明请求转发成功
方法二:
使用mysql的各种客户端工具连接mysql。
分享到:
相关推荐
LVS是Linux虚拟服务器的缩写,主要用于实现服务器集群和负载均衡。LVS提供了两种集群模式:LVS-NAT集群和LVS-DR集群。通过使用ipvsadm命令,可以实现基于TCP的集群服务,添加、删除和修改LVS集群规则,并配置LVS集群...
随着你的网站业务量的增长你网站的服务器压力越来越大?需要负载均衡方案!商业的硬件如F5又太贵,你们又是创业型互联公司...我们利用LVS+Keepalived基于完整开源软件的架构可以为你提供一个负载均衡及高可用的服务器。
Linux 负载均衡 -- LVS+Keepalived 终极指南 Linux 负载均衡是当前网站业务量增长面临的主要挑战之一。如何实现高性能高可用的负载均衡方案,降低成本,提高网站的可靠性和灵活性,是每个网站管理员和架构师所面临...
【LVS+Keepalived+MySQL半同步主主复制高可用方案】 1. 方案概述 LVS(Linux Virtual Server)结合Keepalived构建的高可用解决方案,通常用于实现负载均衡和故障转移,以提高系统的整体可用性。在这个方案中,MySQL...
在构建大型、高可用性的FTP(File ...通过上述步骤,我们可以构建一个基于lvs+keepalived+vsftp的FTP服务器负载均衡环境,提供高可用性和良好的扩展性。记住,实施过程中应根据实际需求和服务器环境进行适当的调整。
本文将详细介绍如何在 Red Hat 6.5 操作系统下利用 VMware Workstation 构建基于 Keepalived 和 LVS-DR 的高可用负载均衡集群,并深入探讨其工作原理和配置步骤。 #### 二、Keepalived 原理与配置 ##### 1. ...
搭建LVS+KEEPALIVED负载均衡需要安装ipvsadm和Keepalived软件,配置Keepalived的配置文件,并部署Master-lvs和Backup-lvs服务器。同时,LVS和KEEPALIVED可以实现高可用性和高性能,且可以灵活地配置Real Server和...
本文档详细介绍了如何在 CentOS 7 系统上搭建 LVS+Keepalived 负载均衡集群,以应对单点故障问题,并提供了一个可实施的操作指南。 #### 二、Keepalived 简介及原理 **Keepalived** 是一款开源软件,用于实现 IPVS...
本篇文档为Mysql双主热备+LVS+Keepalived高可用操作记录,可作为线上实操手册,有需要的朋友可以拿走,希望能帮助到有用到的人~
综上所述,LVS+keepalived负载均衡系统是构建高可用、高性能服务的关键技术之一,其强大的功能和灵活的配置使得它在各类规模的网络环境中都有广泛的应用。通过深入理解和熟练掌握这些知识点,可以有效地提升系统稳定...
HAProxy+Keepalived+LVS实现负载平衡高可用集群最佳实践
lvs+Keepalived+nginx高可用负载均衡搭建部署方案
lvs+keepalived+mha+mysql 架构配置说明 LVS(Linux Virtual Server)是一种开源的负载均衡解决方案,旨在提高服务器集群的可用性和可扩展性。在高可用架构中,LVS 通常与 Keepalived 配合使用,以提供高可用的负载...
MySQL 双主复制 + LVS + Keepalived 实现 MySQL 负载均衡 MySQL 双主复制 + LVS + Keepalived 是一种常见的 MySQL 负载均衡解决方案,通过使用双主复制确保数据的一致性,使用 LVS 实现负载均衡,使用 Keepalived ...
MySQL 数据库与 SQL 优化 + 集群 + 负载均衡 MySQL 数据库与 SQL 优化是提高数据库性能的关键一步骤。 SQL 优化可以通过优化数据库结构、索引、查询语句等方式来实现。下面是 MySQL 数据库与 SQL 优化的主要知识点...
【负载均衡--LVS+Keepalived(终极文档)】 负载均衡是解决高并发访问和提高服务可用性的重要手段。在本文档中,我们将深入探讨如何利用开源软件LVS(Linux Virtual Server)和Keepalived来构建一个高性能、高可用的...