博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LVS+Keepalived 配置
阅读量:4348 次
发布时间:2019-06-07

本文共 3275 字,大约阅读时间需要 10 分钟。

LVS+Keepalived配置

环境准备

LVS1:192.168.1.1

LVS2:192.168.1.2

MySQL Server1:192.168.1.13

MySQL Server2:192.168.1.11

VIP:192.168.1.100

 

 

yum -y install keepalived ipvsadm

vi /etc/keepalived/keepalived.conf    ! Configuration File for keepalivedglobal_defs {   router_id LVS_DB}vrrp_instance VI_1 {    state BACKUP #全部设置为BACKUP,防止脑裂,抢资源    interface eth0 #虚拟IP所在网    virtual_router_id 51 #VRID,相同VRID为一个组,决定多播MAC地址    priority 100 #优先级,另一台改为90 节点不一样    advert_int 1  #检查间隔    authentication {        auth_type PASS  #认证方式,可以是pass或ha        auth_pass 1111  #认证密码    }    virtual_ipaddress {        192.168.1.100  #VIP    }}virtual_server 192.168.1.100 3306 {    delay_loop 6  #服务轮询的时间间隔    lb_algo wrr  #加权轮询调度,LVS调度算法 rr|wrr|lc|wlc|lblc|sh|sh    lb_kind DR   #LVS集群模式 NAT|DR|TUN,其中DR模式要求负载均衡器网卡必须有一块与物理网卡在同一个网段    #nat_mask 255.255.255.0    persistence_timeout 50  #会话保持时间    protocol TCP  #健康检查协议     ## Real Server设置,3306就是MySQL连接端口    real_server 192.168.1.13 3306 {        weight 3  ##权重        TCP_CHECK {            connect_timeout 3            nb_get_retry 3            delay_before_retry 3            connect_port 3306        }    }    real_server 192.168.1.11 3306 {        weight 3        TCP_CHECK {            connect_timeout 3            nb_get_retry 3            delay_before_retry 3            connect_port 3306        }    }}

配置LVS

编写LVS启动脚本/etc/init.d/realserver

SNS_VIP=192.168.1.100/etc/rc.d/init.d/functionscase "$1" instart)       ifconfig lo:0 $SNS_VIP netmask 255.255.255.255 broadcast $SNS_VIP       /sbin/route add -host $SNS_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 $SNS_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 1esacexit 0

将lvs脚本加入开机自启动

# chmod +x /etc/init.d/realserver# echo "/etc/init.d/realserver" >> /etc/rc.d/rc.local

分别启动LVS和keepalived

# service realserver start# service keepalived start

 

配置iptables

# Generated by iptables-save v1.4.21 on Wed Aug 16 16:57:15 2017*filter:INPUT ACCEPT [10:716]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [19:3472]-A INPUT -d 224.0.0.0/8 -i em2 -p vrrp -j ACCEPT-A INPUT -s 192.168.1.100/32 -i em2 -p vrrp -j ACCEPT-A OUTPUT -d 224.0.0.0/8 -o em2 -p vrrp -j ACCEPTCOMMIT# Completed on Wed Aug 16 16:57:15 2017# Generated by iptables-save v1.4.21 on Wed Aug 16 16:57:15 2017*nat:PREROUTING ACCEPT [3159:201889]:INPUT ACCEPT [1934:114711]:OUTPUT ACCEPT [4248:256174]:POSTROUTING ACCEPT [4248:256174]-A PREROUTING -d 192.168.1.0/32 -p tcp -m tcp --dport 3306 -j REDIRECTCOMMIT

 

2.在每台真实服务器上运行

ifconfig lo:0 192.168.1.100(虚拟IP地址) netmask 255.255.255.255 up

vi /etc/sysctl.conf#或者vi /usr/lib/sysctl.d/00-system.conf#添加如下代码:net.ipv4.ip_forward=1#重启network服务systemctl restart network

 

转载于:https://www.cnblogs.com/w2206/p/7397495.html

你可能感兴趣的文章
【转载】Unity3D研究院之IOS触摸屏手势控制镜头旋转与缩放
查看>>
C#小知识
查看>>
windows平台下IPython的安装
查看>>
[源码分析]AbstractStringBuilder
查看>>
leetcode 637 python3 76ms 二叉树的层平均值
查看>>
数据机构与算法--索引优先队列
查看>>
互联网史上最伟大的12个网络应用和软件
查看>>
yum安装jdk
查看>>
1127 ZigZagging on a Tree (30 分)树的层次遍历
查看>>
关于UITableView Grouped 头部和尾部的空白留于
查看>>
web.py学习遇到的问题
查看>>
Windows下QT4.8.4编译环境的搭建(转载http://blog.csdn.net/bestgonghuibin/article/details/38933141)...
查看>>
各种光照算法
查看>>
201521123042 《java程序设计》 第八周学习总结
查看>>
python3 “POST data should be bytes or an iterable of bytes...”的解决方法
查看>>
静态方法
查看>>
保护HTTP的安全
查看>>
js 选取子节点时去除非IE浏览器的换行符
查看>>
javascript是一朵奇葩
查看>>
c语言5-1
查看>>