Keepalived:双机热备
Keepalived + LVS实现高可用集群和负载均衡集群
keepalived特点:
1.提供故障切换功能
2.提供真实服务器健康监测功能
Keeplived与HSRP(vrrp)工作原理一致,配置后会产生虚拟IP和主备关系,主设备承担虚拟IP
转发流量,当主设备故障,备份设备自动接替VIP继续工作
	
keepalived+LVM

keepalived配置

  1. 安装软件包

    yum -y install keepalived ipvsadm

    设置开机自启

    systemctl enable keepalived

    systemctl enable ipvsadm

  2. 复制一份配置文件

    cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak

    编辑配置文件

    vim /etc/keepalived/keepalived.conf

    global_defs {               #全局配置
    	router_id HA_1          #服务器名字两边不一样
    }
    vrrp_instance VI_1 {
    	state MASTER            #确定热备类型:主MASTER,备BACKUP
    	interface ens33         #热备份接口
    	virtual_router_id 1     #热备份组号
    	priority 100            #优先级 高的为主  #备份优先级为50
    	advert_int 1            #Hello time
    	authentication {        #密码认证 两端一样
    		auth_type PASS      #认证的方式为密码认证
    		auth_pass 123456
    	}
    	virtual_ipaddress {     #虚拟IP
    		192.168.112.100
    	}
    }
    virtual_server 192.168.112.100 80 {         #创建虚拟服务器 VIP 端口
    	lb_algo rr                         #确定调度方法:轮询rr
    	lb_kind DR                         #群组工作模式 NAT DR TUN
    	delay_loop 15                      #健康检测时间
    	protocol TCP                       #使用为TCP协议
    	
    	real_server 192.168.112.129 80 {      #添加真实服务器
    		weight 1                       #分配权重
    		TCP_CHECK {                    #检测模块
    			connect_port 80            #检测端口
    			connect_timeout 3          #超时时间
    			nb_get_retry 3             #重试次数
    			delay_before_retry 4       #重试间隔时间
    		}
    	}
    	real_server 192.168.112.135 80 {      #添加真实服务器
    		weight 1                       #分配权重
    		TCP_CHECK {                    #检测模块
    			connect_port 80            #检测端口
    			connect_timeout 3          #超时时间
    			nb_get_retry 3             #重试次数
    			delay_before_retry 4       #重试间隔时间
    		}    
    	} 
    }
    			
  3. 启动服务

    systemctl start keepalived

    查看IP

    ip a

    查看调度器

    ipvsadm -ln

后端DR模式配置步骤

  1. 复制一份网络配置文件

    cp /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-scripts/ifcfg-lo:0

  2. 编辑/etc/sysconfig/network-scripts/ifcfg-lo:0
    DEVICE=lo:0
    # 与调度器配置的保持一致
    IPADDR=192.168.112.100
    NETMASK=255.255.255.255
    ONBOOT=yes
    			
  3. 重启网络

    systemctl restart network

  4. 配置路由

    route add -host 192.168.112.100 dev lo:0

  5. 关闭arp响应

    编辑/etc/sysctl.conf

    net.ipv4.conf.all.arp_ignore = 1
    net.ipv4.conf.all.arp_announce = 2
    net.ipv4.conf.default.arp_ignore = 1
    net.ipv4.conf.default.arp_announce = 2
    			
  6. 刷新系统管理器配置

    sysctl -p

  7. 客户端访问

    http://192.168.112.100