`
jack_boy
  • 浏览: 138098 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

LVS+keepalived配置备忘

阅读更多
LVS + keepalived实现负载均衡的文档很多,这里不再重复说明,只记录在配置过程中容易忘记的地方。
1. 确保IP转发功能开启
# sysctl -a | grep ip_forward
net.ipv4.ip_forward = 1

方法有三种
  1)sysctl net.ipv4.ip_forward=1
  2) echo "1" > /proc/sys/net/ipv4/ip_forward
  3) 修改sysctl.conf, net.ipv4.ip_forward = 1, 执行sysctl -p命令

2. virtual ip的配置
  keepalived 采用RD转发模式
  测试拓扑结构
                 linux director
                 ip:192.168.1.199
                vip:192.168.1.210
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
          |                          |
real server                    real server
ip: 192.168.1.13               ip: 192.168.1.14
vip: 192.168.1.210             vip: 192.168.1.210

lvs客户端也就是real server的vip,要和linux director的vip保持一致
lvs-real.sh
#!/bin/bash
VIP=192.168.1.210
/etc/rc.d/init.d/functions
case "$1" in
start)
       ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
       /sbin/route add -host $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 $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


linux director上keepalived.conf
! Configuration File for keepalived

global_defs {
   notification_email {
        #huaying@staff.sina.com.cn
   }
   #notification_email_from Alexandre.Cassen@firewall.loc
   #smtp_server 127.0.0.1
   #smtp_connect_timeout 30
   router_id LVS_DEVEL
}

virtual_server 192.168.1.210 80 {
   delay_loop 3
   lb_algo rr
   lb_kind DR
   persistence_timeout 120
   protocol TCP

   real_server 192.168.1.13 80 {
     weight 100
     TCP_CHECK {
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
     }
   }

   real_server 192.168.1.14 80 {
     weight 100
     TCP_CHECK {
        connect_timeout 3
        nb_get_retry 3
        delay_before_retry 3
        connect_port 80
     }
   }
}


说明:由于是测试lvs负责均衡功能,没有配置vrrp_instance,在实际应用中,可以配置双linux director。所以在linux director上手工添加vip:192.168.1.210,可以使用如下方法
# ip addr add 192.168.1.210 dev eth0


3. keepalived DR转发模式,需要将real server的ip与virtual ip设定在同一个网段

4. linux director 需要安装ipvsadm,当ipvsadm启动后可以查看它是否被加载
# lsmod | grep ip_vs
ip_vs                  94742  5 

#lpvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.1.210:80 rr persistent 120
  -> 192.168.1.13:80              Route   100    0          0         
  -> 192.168.1.14:80              Route   100    0          0   


5. 如果配置都正确,需要考虑是否将ipvs框架编译进keepalived
6. 如还不行,考虑其它原因


二. NAT转发模式的配置
1. linux director需要两块网卡,一块对外提供服务,一块对内作为转发用,对内ip作为real server的网关
2. real server 不需要配置成lvs客户端,只要将网关配置为linux director的对内ip即可
3. 如果开启了iptables,请注意调整iptables FORWARD链的规则


参考:
1. lvs + keepalived 系统架构测试
2. Keepalived+LVS-DR模式配置高可用负载均衡集群
3.Linux Virtual Server Tutorial
4. The Keepalived Solution
分享到:
评论

相关推荐

    LVS+Keepalived高可用负载均衡集群

    随着你的网站业务量的增长你网站的服务器压力越来越大?需要负载均衡方案!商业的硬件如F5又太贵,你们又是创业型互联公司...我们利用LVS+Keepalived基于完整开源软件的架构可以为你提供一个负载均衡及高可用的服务器。

    搭建LVS+KEEPALIVED负载均衡.pdf

    搭建LVS+KEEPALIVED负载均衡需要安装ipvsadm和Keepalived软件,配置Keepalived的配置文件,并部署Master-lvs和Backup-lvs服务器。同时,LVS和KEEPALIVED可以实现高可用性和高性能,且可以灵活地配置Real Server和...

    lvs+KeepAlived搭建实战.pdf

    Lvs抗负载能力强,因为 lvs 工作方式的逻辑是非常之简单,而且工作在网络 4 层仅做请求分发之用,没有流量,所以在效率上基本不...文档简单演示了lvs+keepalived的搭建过程和负载测试,顺便记录下来。每天进步一点。

    Mysql双主热备+LVS+Keepalived高可用操作记录-精华版

    本篇文档为Mysql双主热备+LVS+Keepalived高可用操作记录,可作为线上实操手册,有需要的朋友可以拿走,希望能帮助到有用到的人~

    Mysql双主热备+LVS+Keepalived高可用操作记录(个人精华版)

    本篇文章详细记录了Mysql双主热备+LVS+Keepalived高可用操作过程,可作为线上长期的实操手册.特此分享,希望能帮助到有用到的朋友.

    lvs+keepalived+vsftp配置FTP服务器负载均衡

    在构建大型、高可用性的FTP(File ...通过上述步骤,我们可以构建一个基于lvs+keepalived+vsftp的FTP服务器负载均衡环境,提供高可用性和良好的扩展性。记住,实施过程中应根据实际需求和服务器环境进行适当的调整。

    lvs+Keepalived+nginx高可用负载均衡搭建部署方案

    lvs+Keepalived+nginx高可用负载均衡搭建部署方案

    LVS+Keepalived+MySQL半同步主主复制高可用方案.docx

    【LVS+Keepalived+MySQL半同步主主复制高可用方案】 1. 方案概述 LVS(Linux Virtual Server)结合Keepalived构建的高可用解决方案,通常用于实现负载均衡和故障转移,以提高系统的整体可用性。在这个方案中,MySQL...

    LVS+KeepAlived+Nginx高可用实现方案.pdf

    "LVS+KeepAlived+Nginx高可用实现方案" LVS(Linux Virtual Server)是一种虚拟服务器集群系统,旨在提供高性能、高可用的服务器解决方案。其主要特点包括可伸缩性、可靠性和可管理性。LVS通过IP负载均衡技术实现...

    LVS+keepalived负载均衡系统资料合集

    综上所述,LVS+keepalived负载均衡系统是构建高可用、高性能服务的关键技术之一,其强大的功能和灵活的配置使得它在各类规模的网络环境中都有广泛的应用。通过深入理解和熟练掌握这些知识点,可以有效地提升系统稳定...

    (带目录版)MySQL LVS+Keepalived+MHA 高可用群集 应用部署操作手册

    ### MySQL LVS+Keepalived+MHA 高可用群集应用部署操作手册知识点解析 #### MHA 架构介绍与工作原理 - **MHA(Master High Availability)概述** - MHA 是一套用于MySQL高可用环境下的故障切换和主从提升方案,由...

    第三十三章:Lvs+Keepalived+Nginx+Tomcat高可用集群1

    LVS+Keepalived+Nginx+Tomcat 高可用集群项目 本文主要讲述了如何构建一个高可用集群项目,使用 LVS、Keepalived、Nginx 和 Tomcat 实现高可用性和负载均衡。该项目的架构中,Keepalived 负责对 LVS 架构中的调度器...

    lvs+keepalived+mha+mysql架构最佳部署手册

    ### lvs+keepalived+mha+mysql高可用架构配置说明 #### 第一部分 MHA介绍 **MHA**(Master High Availability)作为一种成熟的MySQL高可用性解决方案,它由日本开发者Youshimaton创建,旨在为MySQL环境提供故障...

    lvs+keepalived+mha+mysql架构配置说明

    lvs+keepalived+mha+mysql 架构配置说明 LVS(Linux Virtual Server)是一种开源的负载均衡解决方案,旨在提高服务器集群的可用性和可扩展性。在高可用架构中,LVS 通常与 Keepalived 配合使用,以提供高可用的负载...

    Linux负载均衡--LVS+Keepalived(终极文档).pdf

    Linux 负载均衡 -- LVS+Keepalived 终极指南 Linux 负载均衡是当前网站业务量增长面临的主要挑战之一。如何实现高性能高可用的负载均衡方案,降低成本,提高网站的可靠性和灵活性,是每个网站管理员和架构师所面临...

    LVS+Keepalived+NFS集群

    LVS+Keepalived+NFS集群是一种高度可用的网络文件系统集群,它结合了Linux虚拟服务器(LVS)和Keepalived的高可用性(HA)功能,以及NFS(网络文件系统)的分布式文件共享功能。该集群提供了一种可靠和高效的共享...

Global site tag (gtag.js) - Google Analytics