李一諤高可用性系統(八):HA內的Apache與Nginx的安排

作為本校HA的底層及基本的應用,apache及Nginx負責將不同的網站呈現在使用者面前,而資料是儲存在一個共用的空間,它可以是ZFS或是MFS。

但apache或Nginx網站是怎樣設定的呢?就是用virtual host及以ports的型式來架設。以owncloud為例,我們在HaProxy設定了一個以網址名稱來辨識的段落,並在裡面定義了幾部伺服器:
———————————————————
backend owncloud_back
balance roundrobin
cookie SERVERID insert indirect nocache
option forwardfor
option httpclose
option httpchk GET /check HTTP/1.0
server pc111 10.79.118.111:8002 cookie pc111 check inter 50000 maxconn 5000
server pc112 10.79.118.112:8002 cookie pc112 check inter 50000 maxconn 5000
server pc113 10.79.118.113:8002 cookie pc113 check inter 50000 maxconn 5000
……
———————————————————

之後便在每部伺服器中設定virtual host的部份:
———————————————————
server {
listen 10.79.118.111:8002;
server_name owncloud.lynms.edu.hk;
root /home/lynms.edu.hk/owncloud;
index index.html index.php index.htm;
……
———————————————————

這樣伺服器就會懂得回應相關的要求。如果要再加入伺服器只需在上面HaProxy設定部份再加入即可,當然為了易於管理,後端伺服器最好是用相同的軟件運行,否則除錯時就會引致問題或不能找出原因去對症下藥。

Leave a Reply