[閒聊]到底功夫熊貓(Xen)踢不踢的動大象(Hadoop)
圖文版:http://baqua45.blogspot.tw/2012/06/hadoop-xen-performanc-issue.html
這幾天我在Facebook - Taiwan Hadoop User Group 拋磚引玉貼了 "要使用大象,真的得
養頭大象嗎?為何不使用AWS EMR"的文章,意外引起熱烈的討論,把許多潛水的高手和同
好都吸了出來~XD (你自己不是也都在潛水),因為大家都有遇到虛擬化效能的問題。
一般來說,要養Hadoop (或是大型分散式系統),如果不是用實體機器來養 (除非你像
google一樣有錢,不然一定養不多,也養不起),不然通常就是用虛擬化的技術來玩。
如果只是玩玩和測試安裝與練習寫寫程式,那可能還沒什麼大礙,但是一到要玩到真實案
例,甚至要上Production 就會遇到許多效能瓶頸的問題需要去解決。像在 Taiwan
Hadoop User Group 的討論串裡, James 大大就有提到:如果同樣都是 100TB 的
terasort 好了, 如果把一個實體的hadoop cluster搬到AWS,要多多少個 node 才能有
相同的效能 ?
老實說,目前我們也還沒有玩到這麼大的資料量,所以還真的沒對於這麼大量的資料做過
benckmark,希望將來我們系統長到那麼大,有機會分享這些數據給大家知道~XD
回到效能問題,第一步可能要先引自Jazz大的名言:學控制的人都會知道『先能量測,才
有辦法控制』,Jazz大建議安裝 Ganglia 跟 Munin來觀察,我們是裝OpenNms,總之要先
確認Performace是出在哪裡:
Host Dom0?
CPU ?
Memory ?
Disk I/O ?
Network I/O ?
第二步,就是要確認你的虛擬化環境與設備:
你Server 的等級
你目前是使用哪一版的Xen?( 3.x、4.x)
你是使用PV 還是HVM?
你是使用怎樣的deivce當domU's disk?( file: ? tap:aio:? phy:?)
因為公司內部和專案開發都是使用Xen,所以之前倒是有為了效能問題去找了一堆資料,
整理如下:
VM 盡量不要使用 SWAP (不過這還有爭議)
RAID10 array is recommended
使用PV (半虛擬化)效能較好,或使用Xen PVHVM drivers for Linux HVM guests
盡量直接使用 block device (without file system).
如果還是要用File System 請參考這篇 Filesystem performance on Xen
不過好像也沒啥特別的,大家應該都知道了,如果有其他作法,歡迎大家留言討論~:P
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 60.250.108.16
Cloud 近期熱門文章
PTT數位生活區 即時熱門文章