ubuntu下LVS + Keepalived 实现mysql高可用负载均衡实现

原创 2011年01月19日 14:50:00

 

LVS Server   : 192.85.1.5
Virtual IP   : 192.85.1.10
Real Server1 : 192.85.1.4
Real Server2 : 192.85.1.9
在 LVS Server 上安装 ipvsadm 和 keepalived。
$ sudo apt-get install ipvsadm keepalived
使用这两个做配合时,无需配置 ipvsadm,直接修改 keepalived.conf 即可。
$ sudo vim /etc/keepalived/keepalived.conf 

global_defs {
    router_id LVS_DEVEL
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100   #100为从服务器,主服务器为:101     
    advert_int 1        

    authentication {
        auth_type PASS
        auth_pass 1111
    }

    virtual_ipaddress {
        192.85.1.10
    }
}

virtual_server 192.85.1.10 3306{
    delay_loop 1        # 每隔 1 秒查询 RealServer 状态
    lb_algo wrr         # LVS 算法
    lb_kind DR          # Direct Route
    #persistence_timeout 60 # 同一 IP 在 60 秒内分配到同一台 RealServer
    protocol TCP        # 使用 TCP 协议检查 RealServer 状态

    real_server 192.85.1.4 3306{
        weight 3    # 权重
        TCP_CHECK {
            connect_timeout 10 # 10 秒无响应超时
            nb_get_retry 3
            delay_before_retry 3
            connect_port 3306
        }
    }

    real_server 192.85.1.9 3306 {
        weight 3    
        TCP_CHECK {
            connect_timeout 10 
            nb_get_retry 3
            delay_before_retry 3
            connect_port 3306
        }
    }
}}
启动 keepalived 服务。
$ sudo service keepalived start #应该先启动mysql集群
 
检查 ipvsadm 设置。
$ sudo ipvsadm -ln

IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.85.1.10:3306 wrr
  -> 192.85.1.4:3306           Route   3      0          0         
  -> 192.85.1.9:3306           Route   3      0          0 
 
在所有 RealServer /etc/rc.local 中添加配置信息后重启
$ sudo nano /etc/rc.local

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

ifconfig lo:0 192.85.1.10 netmask 255.255.255.255 broadcast 192.85.1.10 up
route add -host 192.85.1.10 dev lo:0

echo "0" > /proc/sys/net/ipv4/ip_forward
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

exit 0
 
这时我们就可以进行测试了。在Real Server1 上,创建数据库:clustertest,
sudo /usr/local/mysql/bin/mysql -u root -p
密码默认为空
mysql> GRANT ALL ON clustertest.* TO 'zichen'@'$' IDENTIFIED BY '62672000';
mysql> FLUSH PRIVILEGES;
mysql> CREATE DATABASE clustertest;
mysql> USE clustertest;
mysql> CREATE TABLE test(id INT) ENGINE=NDBCLUSTER;
mysql> INSERT INTO test VALUES(1);
mysql> quit;
在 Real Server2上
sudo /usr/local/mysql/bin/mysql -u root -p
密码默认为空
mysql> GRANT ALL ON clustertest.* TO 'zichen'@'$' IDENTIFIED BY '62672000';
mysql> FLUSH PRIVILEGES;
mysql> quit;
 
在192.85.1.4上,在终端输入:sudo /usr/local/mysql/bin/mysql -h 192.85.1.10 -u zichen -p
enter password:62672000
正常情况下,应该能进入如下界面:
mysql >
mysql > use clustertest;
mysql > show tables;
mysql > select * from test;
mysql > insert into test values (2);
在两个SQL节点上查看数据是否同步。

LVS+Keepalived实现高可用负载均衡

  • 2017年09月13日 16:44
  • 169KB
  • 下载

[高可用]Ubuntu下LVS + Keepalived 实现SuperMap iServer高可用负载均衡实现

题记前面已经介绍了实现MySQL和RabbitMQ的集群部署,但是一个OpenStack环境的高可用性,简单的说就是任何一个节点的高可用性,每个节点又包括不同的服务和组件,这里面我们先不具体谈及细节,...

利用lvs+keepalived实现高可用负载均衡环境的部署

http://wangwq.blog.51cto.com/8711737/1852212 ,运行即可(注意脚本的VIP,不同的realserver对应不同的VIP) ...

利用LVS+Keepalived 实现高性能高可用负载均衡服务器

转自:http://www.discuz.net/thread-1100984-1-1.html 作者:NetSeek http://www.linuxtone.org(IT运维专家网|集群架构|性...

LVS + Keepalived 实现高可用负载均衡

LVS + Keepalived 实现高可用负载均衡
  • xymyeah
  • xymyeah
  • 2011年03月16日 17:54
  • 728

利用LVS+Keepalived DR 实现高性能高可用负载均衡

最近公司用做负责均衡,研究了一下lvs,做为我的第一篇博客吧。 一.            LVS+Keepalived 介绍 1.      LVS LVS是Linux Virtual Serve...

LVS+Keepalived实现高可用负载均衡

转载自:http://blog.chinaunix.net/uid-16723279-id-3651396.html 原文地址:LVS+Keepalived实现高可用负载均衡 作者:scq209...
  • lkx94
  • lkx94
  • 2017年01月03日 18:08
  • 139

LVS(NAT)+keepalived实现高性能高可用负载均衡

背景:         随着你的网站业务量的增长你网站的服务器压力越来越大?需要负载均衡方案!商业的硬件如F5又太贵,你们又是创业型互联公司如何有效节约成本,节省不必要的浪费?同时实现商业硬件一样的高...

centos部署lvs+keepalived+apache/tomcat实现高性能高可用负载均衡

前言: 常用的有的负载均衡软件有lvs、haproxy、nginx 一般lvs和keeplavied一起使用 lvs是实现负载均衡作用的,即将客户端的需求采用特定的负载均衡算法分发到后端的Web应用服...
  • nuli888
  • nuli888
  • 2016年07月14日 19:10
  • 3426

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

一、简介 VS/NAT原理图: 二、系统环境 实验拓扑: 系统平台:CentOS 6.3 Kernel:2.6.32-279.el6.i686 LVS版本:ipvsadm-1....
  • midion9
  • midion9
  • 2015年10月16日 08:38
  • 350
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ubuntu下LVS + Keepalived 实现mysql高可用负载均衡实现
举报原因:
原因补充:

(最多只允许输入30个字)