iT邦幫忙

0

Global WebServer Load-Balance 問題

hona 2010-01-19 11:12:1012142 瀏覽

各位前輩們好,小弟有一個問題

  1. 我們公司的網站在台灣與美國各有一台WebServer

  2. 外部的客戶都是連到台灣這一台

  3. 美國的WebServer只是當成DR使用,我們IT會定期抄資料過去,
    平常沒有使用者access

但我們最近發現台灣的Webserver速度越來越慢,CPU & RAM飆很高,

因此我們把腦筋動到了美國那台WebServer,想做兩台WebSever的Load-Balance,

也就是把使用者分流,

台灣的客戶固定連到台北這台
美國的客戶固定連到美國那台

讓台北的Webserver負擔降低,

順便也可以讓平常閒置的美國Webserver發揮更大的效用

請問各位前輩,技術上有辦法做到嗎?? 我應該去請ISP協助我嗎?? 感謝

4
mikechen79
iT邦新手 5 級 ‧ 2010-02-02 08:55:44
最佳解答

hi, 您好

小弟正有相關的經驗,我們是找 third party 的服務,類似DNS代管的功能。當然除了一般的DNS record之外,

他們還有提供所謂的 "" Geographical DNS ""

也就是說某一個 A Record,您可以設定很多IP指到您在全球各地的webserver,而這個網站就會依照End-User的來源IP,來回覆最近的webserver位址,您的DNS已經交由他代管了,因此只要他們有全球IP的分配表,這不難做到,但核心技術是否是上面有前輩提的BIND9,就不得而知了。

我們公司目前就是採用類似的服務,我覺得用這類服務的好處有以下

  1. 設定簡單 --> 通常Third party 廠商都會提供網頁讓您設定,只要在A Record前把Geographical的選項打勾就可以了

  2. 價錢不貴 --> 比起某國內ISP業者所提供的F5租賃服務,價格便宜了70%!!,因此我們自從採用了Geographical DNS後,馬上把某國內ISP業者的服務退租了

以上為自己的經驗,提供您參考

4
ataru
iT邦研究生 1 級 ‧ 2010-01-19 11:43:39

我所知道的load balance都是在區網上處理
或許google的雲端可以給你些幫助

8
vincent118
iT邦高手 5 級 ‧ 2010-01-19 11:47:07

hona提到:
台灣的客戶固定連到台北這台
美國的客戶固定連到美國那台

如果你很執著一定要這樣做,那只有F5 BIG-IP Global Traffic Manager 這類的設備可以做到,有沒有其他open source 軟體可以做,請其他知道的人接棒。
以前有ISP是有出租F5的服務的,不過報價也不低就是了,現在我比較沒有接觸了,有沒有就不知道了。

要不然建議用DNS round robin 的方式做就好。雖然有其缺點,但也是解決問題的方式。

另外的方法也可以增加台灣server 的數量,不管是微軟的server或是linux主機都有 server 端的 load balance的機制可供使用。這個方案的花費是遠低於用F5的設備的。我是建議用M家的server load balance設定簡單,穩定度OK。

總之除非你的web site上有金流交易服務,要不然我建議增加server數量即可。

看更多先前的回應...收起先前的回應...
hona iT邦新手 5 級 ‧ 2010-01-19 13:11:46 檢舉

Vincent您好:

Round-Robin在我們的環境可能沒辦法。就如您所猜想,我們的網站有類似"購物車"的功能,因此當round-robin把session導到另一台時,購物車會有問題

如果要增加Server數量,然後用M牌的NLB我們也是有想過,但就卡在老闆們想先讓美國的Server負擔一些loading,而不想直接花錢在台灣添購硬體...Orz

fillano iT邦超人 1 級 ‧ 2010-01-19 13:37:21 檢舉

也許可以嘗試這樣的方案:
http://code.google.com/p/bind-geoip/wiki/UsageGuide

to fillano:
我在說明中看到一行字如下,不知是否只支援IPv6.
GeoIP support was able to find the Country, City Rev1, Organization, AS, and Country IPv6 databases, but not the others.

James iT邦大師 7 級 ‧ 2010-01-19 16:12:31 檢舉

Bind DNS server 有提供 view 的功能,可以設定某些來源ip網段指到美國主機,其它ip指到台灣主機

fillano iT邦超人 1 級 ‧ 2010-01-19 16:17:31 檢舉

應該是ipv6只支援country的意思吧?另外,他也是用view搭配geoip來實作的樣子。(我只是在網上逛到的,我沒做過啦!)

有金流交易服務,建議還是用F5會比較好。

4
jackytsao
iT邦研究生 1 級 ‧ 2010-01-19 13:30:13

你可以建置一個依ip address而轉向的網站
當使用者連上時先檢查其ip address
再依設定的區域來分配到台灣或美國
IPv4全球核發(Allocated)統計
或是利用檢查 ie 的語系,來當轉向的依據

2
zyman2008
iT邦大師 8 級 ‧ 2010-01-19 15:22:30

要自建GSLB的話在兩地都要投資設備.台灣市場上比較常見的設備廠商有 F5
Brocade(Foundry)/ Radware(Alteon) 都可以考慮.

8
ganymede
iT邦好手 1 級 ‧ 2010-01-19 15:29:25

不知道貴公司的 DNS 是使用那一種架設的?
如果是BIND9 可以利用 BIND9 的 view, 可以依不同的 client 回應相同 domain 不同 IP.

0
raziel
iT邦新手 3 級 ‧ 2010-01-20 14:44:53

有shopping cart的網站內容你會需要client sticky的技術, 又要有

global server load balance, 可以找家F5 or Radware代理商或加值經銷商

去你們家做做簡報說明一下吧~ 如果可以拿整體解決方案打動老闆, 自己會

省很多事, 其他不太需要花錢的做法或許可以 舒緩 你的伺服器負載問題,

不過我認為都比專用SLB設備的方案要遜色, 就看有沒有預算去做嘍~

我要發表回答

立即登入回答