Keepalived高可用集羣應用實踐

一、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服務案例實戰

image.png

#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的配置請點擊鏈接地址:

http://blog.51cto.com/sky9896/2346547   #nginx web配置

#測試結果如下:

image.png

image.png

image.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章