lvs+keepalive+nginx
為了保證負載層足夠穩定的狀態下,適應更大的訪問吞吐量還要應付可能的訪問洪峰,我們加入了LVS技術。LVS負責第一層負載,然后再將訪問請求轉發到后端的若干台Nginx上。LVS的DR工作模式,只是將請求轉到后端,后端的Nginx服務器必須有一個外網IP,在收到請求並處理完成后,Nginx將直接發送結果到請求方,不會再經LVS回發。
這里要注意的是:
-
有了上層的LVS的支撐Nginx就不再需要使用Keepalived作為熱備方案。因為首先Nginx不再是單個節點進行負載處理,而是一個集群多台Nginx節點;另外LVS對於下后端的服務器自帶基於端口的健康檢查功能;
-
LVS是單節點處理的,雖然LVS是非常穩定的,但是為了保證LVS更穩定的工作,我們還是需要使用Keepalived為 LVS做一個熱備節點,以防不時之需。
一、安裝keepalived
請到 www.keepalived.org 下載keepalived的穩定版本,我下載的是1.2.17版本。 # 解壓,並且安裝。注意,我在這里制定了perfix參數,指定安裝位置,這是為了我自己便於管理。您在安裝的時候,可以根據自己的情況來決定是不是加這個參數: tar -zxvf keepalived-1.2.17.tar.gz ./configure --perfix=/usr/keepalived-1.2.17 make & make install # 如果您不是安裝到默認路徑,那么為了將keepalived做成系統服務,您需要拷貝一些文件到指定的路徑下,如下: cp /usr/keepalived-1.2.17/etc/sysconfig/keepalived /etc/sysconfig/keepalived cp /usr/keepalived-1.2.17/sbin/keepalived /usr/sbin/keepalived cp /usr/keepalived-1.2.17/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/keepalived mkdir /etc/keepalived cp /usr/keepalived-1.2.17/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf # 然后您可以將keepalived做成服務了: /etc/rc.d/init.d/keepalived chkconfig keepalived on