• LVS+keepalived负载均衡实战


    1 首先安装虚拟机 安装系统 这里 配置两台虚拟机 1:192.168.137.102   2:192.168.137.103 分别安装tomcat 默认80端口,同时都是开启状态

    配置192.168.137.102 的   /etc/rc.d/init.d/realserver  新建文件拷贝下面的内容进去,赋予权限,并启动该虚拟网卡,并同理 操作在192.168.137.103  并修改

    SNS_VIP=192.168.137.98 这个虚拟地址,并启动成功,ifconfig 查看该虚拟ip是否存在
    #!/bin/bash
    #chkconfig: 2345 79 20
    #description:realserver
    SNS_VIP=192.168.137.99
    . /etc/rc.d/init.d/functions
    case "$1" in
    start)
    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 1
    esac
    exit 0

     2 在1:192.168.137.101 虚拟机上为服务端 安装keepalived-1.2.7-3.el6.i686.rpm 包,也可yum安装 安装成功后,> /etc/keepalived/keepalived.conf 清空这配置文件,修改如下配置内容

    global_defs {                       ##全局配置部分
    #   notification_email {             ##下面几行均为全局通知配置,可以实现出现问题后报警,但功能有限,因此注释掉,并采用Nagios监视lvs运行情况
    #       admin@toxingwang.com
    #   }
    #   notification_email_from master@toxingwang.com
    #   smtp_server smtp.exmail.qq.com
    #   smtp_connect_timeout 30
        router_id LVS_DEVEL             ##设置lvs的id,在一个网络内应该是唯一的
    }
    vrrp_instance VI_1 {            ##设置vrrp组,唯一且同一LVS服务器组要相同
        state MASTER             ##备份LVS服务器设置为BACKUP
        interface eth1             # #设置对外服务的接口
        virtual_router_id 51        ##设置虚拟路由标识
        priority 100                   #设置优先级,数值越大,优先级越高,backup设置为99,这样就能实现当master宕机后自动将backup变为master,而当原master恢复正常时,则现在的master再次变为backup。
        advert_int 1            ##设置同步时间间隔
        authentication {         ##设置验证类型和密码,master和buckup一定要设置一样
            auth_type PASS
            auth_pass 1111
        }
        virtual_ipaddress {          ##设置VIP,可以多个,每个占一行
            192.168.137.99
        }
    }
    virtual_server 192.168.137.99 80 {
        delay_loop 6            ##健康检查时间间隔,单位s
        lb_algo wrr             ##负载均衡调度算法设置为加权轮叫
        lb_kind DR                              ##负载均衡转发规则
        nat_mask 255.255.255.0   ##网络掩码,DR模式要保障真实服务器和lvs在同一网段
        persistence_timeout 50    ##会话保持时间,单位s
        protocol TCP                           ##协议
        real_server 192.168.137.102 80 {      ##真实服务器配置,80表示端口
            weight 3                             ##权重
            TCP_CHECK {                       ##服务器检测方式设置 keepalived的健康检查方式 有:HTTP_GET|SSL_GET|TCP_CHECK|SMTP_CHECK|MISC_CHECK
                connect_timeout 5    ##连接超时时间
                nb_get_retry 3         ##失败重试次数
                delay_before_retry 3 ##失败重试的间隔时间
                connect_port 80      ##连接的后端端口
            }
        }
    
        real_server 192.168.137.103 80 {
            weight 3
            TCP_CHECK {
                connect_timeout 10
                nb_get_retry 3
                delay_before_retry 3
                connect_port 80
            }
        }
    }

    启动  service keepalived start

  • 相关阅读:
    tcprstat分析服务的响应速度
    mysqldump之不老将
    Java数据持久层框架 MyBatis之API学习二(入门)
    Java数据持久层框架 MyBatis之API学习一(简介)
    插入数据库日期格式转换
    eclipse出现错误:he type java.util.Map$Entry cannot be resolved. It is indirectly referenced
    注释中不允许出现字符串 "--"。
    mybatis if条件查询 及<号的问题
    This is probably because there is no OLE editor registered against the type of file you were trying to open.
    github not authorized eclipse
  • 原文地址:https://www.cnblogs.com/kedoudejingshen/p/5792848.html
Copyright © 2020-2023  润新知