zoukankan      html  css  js  c++  java
  • [HA]负载均衡:HAPROXY与KEEPALIVED强强联合

    第一步:更改系统控制配置文件,同意分配虚拟IP(VIP)

    /etc/sysctl.conf
    
    net.ipv4.ip_nonlocal_bind=1
    <pre style="word-wrap: normal; line-height: 18px;">sysctl -p

    
    步骤二:安装HAPROXY和KEEPALIVED
    

    apt-get update && apt-get install keepalived haproxy -y

    步骤三:配置KEEPALIVED

    etc/keepalived/keepalived.conf
    
    global_defs {
      router_id haproxy1
    }
    vrrp_script haproxy {
      script "killall -0 haproxy"
      interval 2
      weight 2
    }
    vrrp_instance 50 {
      virtual_router_id 50
      advert_int 1
      priority 101
      state MASTER
      interface eth0
      virtual_ipaddress {
        192.168.1.32 dev eth0
      }
      track_script {
        haproxy
      }
    }
    步骤四:配置HAPROXY

    /etc/haproxy/haproxy.cfg
    
    global
    	chroot /var/lib/haproxy
    	user haproxy
    	group haproxy
    	daemon
    	log 192.168.1.30 local0
    	stats socket /var/lib/haproxy/stats
    	maxconn 4000
    
    defaults
    	log	global
    	mode	http
    	option	httplog
    	option	dontlognull
            contimeout 5000
            clitimeout 50000
            srvtimeout 50000
    	errorfile 400 /etc/haproxy/errors/400.http
    	errorfile 403 /etc/haproxy/errors/403.http
    	errorfile 408 /etc/haproxy/errors/408.http
    	errorfile 500 /etc/haproxy/errors/500.http
    	errorfile 502 /etc/haproxy/errors/502.http
    	errorfile 503 /etc/haproxy/errors/503.http
    	errorfile 504 /etc/haproxy/errors/504.http
    
    listen stats 192.168.1.30:80
            mode http
            stats enable
            stats uri /stats
            stats realm HAProxy Statistics
            stats auth admin:password
    步骤五:启动HAPROXY和KEEPALIVED服务

    service keepalived restart
    service haproxy restart

    步骤六:检測虚拟IP

    # ip -a | grep eth0
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
        inet 192.168.1.30/24 brd 192.168.1.255 scope global eth0
        inet 192.168.1.32/32 scope global eth0





    版权声明:本文博客原创文章,博客,未经同意,不得转载。

  • 相关阅读:
    使用history.back()出现"警告: 网页已过期的解决办法"
    thinkphp5 如何将带分隔符的字符串转换成索引数组,并且遍历到前台
    MYSQL查询某字段中以逗号分隔的字符串的方法
    SpringBoot项目docker化
    全选Js
    【同步工具类】CountDownLatch
    Elasticsearch 2.3.2 安装部署
    从网络获取多张二维码图片,压缩打包下载
    传统的线程互斥技术:Synchronized关键字
    定时器的编写
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4664544.html
Copyright © 2011-2022 走看看