您的位置:首页 > 运维架构 > 网站架构

Keepalived高可用集群应用实践

2019-01-31 21:02 281 查看

一、Keepalived介绍

   Keepalived软件主要是通过VRRP协议实现高可用功能的。目的就是为了解决静态路由单点故障问题的,它能够保证当个别节点宕机时,整个网络可以不间断地运行。Keepalived具有三个重要功能:

1.有配置管理LVS的功能;

2.对LVS下面节点进行健康检查功能;

3.实现系统网络服务的高可用功能。

二、Keepalived高可用服务搭建

1.安装Keepalived环境说明

      HostName             IP                            说明
lb01192.168.12.128Keepalived主服务器(Nginx主负载均衡器)VIP:192.168.12.126
lb02192.168.12.129Keepalived备服务器(Nginx备负载均衡器)VIP:192.168.12.127
web01
192.168.12.130web01服务器 
web02
192.168.12.131web02服务器
web03192.168.12.132web03服务器

2.开始安装Keepalived软件

[root@Nginx src]# wget http://www.keepalived.org/software/keepalived-1.2.24.tar.gz

[root@Nginx src]# tar -zxvf keepalived-1.2.24.tar.gz 

[root@Nginx src]# cd keepalived-1.2.24

[root@Nginx keepalived-1.2.24]# ./configure \

> --prefix=/usr/local/keepalived

[root@Nginx keepalived-1.2.24]# make && make install

[root@Nginx]# cd /usr/local/keepalived/etc/rc.d/init.d

[root@Nginx init.d]# cp keepalived  /etc/init.d/keepalived

[root@Nginx init.d]# cp keepalived  /etc/init.d/keepalived

[root@Nginx init.d]# chmod +x /etc/init.d/keepalived 

[root@Nginx init.d]# chkconfig keepalived on

[root@Nginx /]# ln /usr/local/keepalived/etc/sysconfig/keepalived  /etc/sysconfig/keepalived

[root@Nginx sbin]# ln -s /usr/local/keepalived/sbin/keepalived  /usr/sbin/keepalived 

[root@Nginx /]# mkdir /etc/keepalived

[root@Nginx /]# vim /etc/keepalived/keepalived.conf

#配置lb01 192.168.12.128的keepalived.conf

vrrp_instance VI_1 {

    state MASTER

    interface eth0

    virtual_router_id 55

    mcast_src_ip 192.168.12.128

    priority 150

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

      192.168.12.126/24  dev eth0 label eth0:1

    }

 }

vrrp_instance   VI_2 {

   state BACKUP

   interface eth0

   virtual_router_id 56

   priority 100

   advert_int 1

   authentication {

    auth_type PASS

    auth_pass 1111

  }

virtural_ipaddress {

   192.168.12.127/24   dev eth0 label eth0:2

   }

#配置lb02 192.168.12.129的keepalived.conf

[root@Nginx keepalived]# vim keepalived.conf 

    router_id lb02

  }

vrrp_instance VI_1 {

    state BACKUP

    interface eth0

    virtual_router_id 55

    mcast_src_ip 192.168.12.129

    priority 100

    advert_int 1

    authentication {

        auth_type PASS

        auth_pass 1111

    }

    virtual_ipaddress {

        192.168.12.126/24  dev eth0 label  eth0:1

    }

}

vrrp_instance VI_2 {

   state MASTER

   interface eth0

   virtual_router_id 56

   priority 150

   advert_int 1

   authentication {

       auth_type PASS

       auth_pass 1111

  }

  virtual_ipaddress {

     192.168.12.127/24  dev eth0 label eth0:2

    }

}

[root@Nginx /]# iptables -I INPUT -s192.168.12.128 -p112 -j ACCEPT

[root@Nginx /]# service iptables save

[root@Nginx keepalived]# iptables -I INPUT -s192.168.12.129 -p112 -jACCEPT

[root@Nginx keepalived]# service iptables save

#Nginx负载均衡配合Keepalived服务案例实战

#Nginx负载均衡的配置如下:

worker_processes  1;

events {

    worker_connections  1024;

}


http {

    include       mime.types;

    default_type  application/octet-stream;

     sendfile        on;

     keepalive_timeout  65;

     upstream www_server_pools {

            server 192.168.12.130:80 weight=1;

            server 192.168.12.131:80 weight=1;

            server 192.168.12.132:80 weight=1;

      }

     server {

        listen 192.168.12.126:80;

        server_name www.etiantian.org;

      location / {

        proxy_pass http://www_server_pools;

        proxy_set_header Host  $host;

        proxy_set_header X-Forwarded-For $remote_addr;

      }

  }

#Nginx web1 web2 web3的配置请点击链接地址:

https://www.geek-share.com/detail/2759386687.html   #nginx web配置

#测试结果如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Keepalived Linux Web