zoukankan      html  css  js  c++  java
  • LVS+keepalived快速搭建测试环境

    #LVS+keepalived快速搭建测试环境

    #LVS+keepalived快速搭建测试环境
    #centos6 X64
    # LVS 负载均衡模式:DR(直接路由)
    
    192.168.18.31 master(LVS)
    192.168.18.32 slave(LVS)
    192.168.18.18 VIP
    192.168.18.11 web1
    192.168.18.12 web2
    
    ##################################
    #手动配置测试
    
    ###LVS 安装配置
    yum  install ipvsadm -y
    rpm -ql ipvsadm
    # ipvsadm
    # lsmod|grep ip_vs
    #添加VIP
    /sbin/ifconfig eth1:1 192.168.18.18/24 up
    #ifconfig eth1:1 down #测试完后停止VIP
    ipvsadm -C #清空
    #添加虚拟服务
    ipvsadm -A -t 192.168.18.18:80 -s wrr -p 20
    #添加后端服务
    ipvsadm -a -t 192.168.18.18:80 -r 192.168.18.11:80 -g -w 1
    ipvsadm -a -t 192.168.18.18:80 -r 192.168.18.12:80 -g -w 1
    #删除ipvsadm -d -t 192.168.18.18:80 -r 192.168.18.11:80
    ipvsadm -L -n #查看列表
    ##########
    
    ##################################
    #后端WEB配置
    # #安装Apache或nginx,启动服务
    # yum install httpd -y
    # echo “this is rs1” > /var/www/html/index.html
    # service httpd restart
    vim lvs-rs.sh
    #!/bin/bash
    # 配置VIP、配置ARP抑制
    VIP=192.168.18.18
    . /etc/rc.d/init.d/functions
    
    case "$1" in
    start)
        echo " start LVS of REALServer"
        /sbin/ifconfig lo:0 $VIP broadcast $VIP netmask 255.255.255.255 up
        /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
        ;;
    stop)
        /sbin/ifconfig lo:0 down
        echo "close LVS Directorserver"
        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 "Usage: $0 {start|stop}"
        exit 1
    esac 
    exit 0
    
    #给脚本加权限,并执行
    chmod +x lvs-rs.sh
    chmod 755 /etc/rc.d/init.d/functions
     ./lvs-rs.sh start
    
    ##################################
    #LVS+keepalived 配置
    yum  install keepalived -y
    #rpm -ql keepalived
    #分别安装配置keepalived
    cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
    vim /etc/keepalived/keepalived.conf
    /etc/init.d/keepalived restart
    /etc/init.d/keepalived stop #关闭、开启LVS_MASTER测试
    ip add #查看VIP
    #配置如下:
    
    #####keepalived配置
    ! Configuration File forkeepalived
    global_defs {
        # notification_email {
            # test@sina.com    #故障接受联系人
        # }
        # notification_email_from admin@test.com  #故障发送人
        # smtp_server 127.0.0.1   #本机发送邮件
        # smtp_connect_timeout 30
        router_id LVS_MASTER
        #router_id LVS_BACKUP #LVS_BACKUP
    }
    vrrp_instance VI_1 {
        state MASTER
        #state BACKUP
        interface eth1
        virtual_router_id 18  #虚拟路由标识,主从相同
        priority 100
        #priority 90  #BACKUP
        advert_int 1 
        authentication {
            auth_type PASS 
            auth_pass 1111  #主从认证密码必须一致
        } 
        virtual_ipaddress {    #Web虚拟IP(VTP) 
            192.168.18.18/24
        }
    } 
    ###real_server###
    virtual_server 192.168.18.18 80 { #定义虚拟IP和端口 
        delay_loop 6    #检查真实服务器时间,单位秒 
        lb_algo rr      #设置负载调度算法,rr为轮训 
        lb_kind DR      #设置LVS负载均衡DR模式 
        persistence_timeout 30 #同一IP的连接30秒内被分配到同一台真实服务器 
        protocol TCP    #使用TCP协议检查realserver状态 
        real_server 192.168.18.11 80 {  #第一个web服务器
            weight 3          #节点权重值
            TCP_CHECK {      #健康检查方式
                connect_timeout 3 #连接超时 
                nb_get_retry 3    #重试次数
                delay_before_retry 3  #重试间隔/S
            } 
        } 
        real_server 192.168.18.12 80 {  #第二个web服务器
            weight 3
            TCP_CHECK {
                connect_timeout 3
                nb_get_retry 3
                delay_before_retry 3
            }
        } 
    }
    #####keepalived配置
    
    ##
    curl http://192.168.18.18 >/tmp/null #http访问测试
    tail -10 /var/log/nginx/access.log #查看nginx日志
    tail -10 /etc/httpd/logs/access_log #查看Apache日志
  • 相关阅读:
    公式编辑器mathtype中一些符号显示方框的解决方法
    I got my first job
    我的第二个面试通知
    清空visual studio2010的查找历史
    King Back
    IIS中“使用 XSL 样式表无法查看 XML 输入”问题的解决
    JDBC 各种连接方式[转载]
    力扣每日刷题(1)
    力扣每天刷题(3)
    力扣每天刷题(2)
  • 原文地址:https://www.cnblogs.com/elvi/p/7717635.html
Copyright © 2011-2022 走看看