keepalived高可用反向代理的nginx

dmc3 9年前發布 | 12K 次閱讀 Web服務器 Nginx

實驗系統:

(1)CentOS 6.6_x86_64;

(2)共有三臺主機,本實驗以ip地址來命名主機,即131主機、132主機、133主機。

實驗前提:防火墻和selinux都關閉,主機之間時間同步

實驗軟件:nginx-x86_64-1.6.2 keepalived-x86_64-1.2.13

實驗拓撲:

keepalived高可用反向代理的nginx

一、安裝配置keepalived

1.直接使用yum安裝,133主機只安裝nginx:

yum -y install keepalived nginx

2.在131主機上配置keepalived:

vim /etc/keepalived/keepalived.conf

! Configuration File for keepalived global_defs { //此段配置忽略 notification_email { acassen@firewall.loc failover@firewall.loc sysadmin@firewall.loc } notification_email_from Alexandre.Cassen@firewall.loc smtp_server 192.168.200.1 smtp_connect_timeout 30 router_id LVS_DEVEL }

vrrp_instance VI_1 { state MASTER //定義為MASTER主機 interface eth0 virtual_router_id 55 //虛擬id priority 100 //優先級 advert_int 1 //檢測間隔 authentication { auth_type PASS //認證方式 auth_pass abcd //認證密碼 } virtual_ipaddress { 192.168.245.150 //虛擬ip,即VIP } notify_master "/etc/init.d/nginx start" //成為MASTER之后執行的動作 notify_backup "/etc/init.d/nginx stop" //成為BACKUP之后執行的動作 notify_fault "/etc/init.d/nginx stop" //FAULT之后執行的動作 }</pre>
3.將配置文件傳到132主機,并配置:

vim /etc/keepalived/keepalived.conf
-------------------------------------------------- 只改動如下兩行
state BACKUP         //定義為BACKUP
priority 99          //優先級

4.兩臺主機啟動keepalived服務,現在131這臺主機為MASTER,所以服務都起在這臺主機上:

service keepalived start ip addr show

keepalived高可用反向代理的nginx

keepalived高可用反向代理的nginx

5.停止131主機的keepalived服務,可以看到服務已經轉移到了132這臺主機上:

service keepalived stop

keepalived高可用反向代理的nginx

6.再次啟動131主機的keepalived服務,從日志可以看出,它又成為了MASTER:

keepalived高可用反向代理的nginx

二、配置nginx的反向代理

1.131和132主機配置nginx:

vim /etc/nginx/conf.d/default.conf

location / { //增加此段 proxy_pass http://192.168.245.133; }

location / { //將此段注釋掉

#    root   /usr/share/nginx/html;
#    index  index.html index.htm;
#    example
#ModSecurityEnabled on;
#ModSecurityConfig /etc/nginx/modsecurity.conf;

}


service nginx restart service keepalived restart</pre>
2.133主機啟動測試頁:

rm -rf /usr/share/nginx/html/*                 //刪除原有頁面文件

vim /usr/share/nginx/html/index.html

<h1>This is a test!</h1>

service nginx start</pre>

訪問http://192.168.245.150,133主機上的頁面文件出現,反向代理成功。關閉131主機的keepalived服務,132主機變為MASTER,頁面仍然可以訪問。但是,當nginx進程被kill掉時,并不能實現高可用。

keepalived高可用反向代理的nginx


 本文由用戶 dmc3 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!