Cloudera CDH4安裝方法有三種:
1、通過Cloudera Manager自動安裝(只支援64bit linux作業系統);
2、通過資源套件,利用Yum命令手工安裝;
3、通過下載的tarball包,手工安裝;
個人建議1、2兩種都嘗試,先2後1的方式對Hadoop的架構,內建的組件以及配置等會要一個比較清晰的瞭解。具體的安裝可以參考官方文檔(CDH4 Installation Guide和CM-4.0-free-installation-guide),我在這裡說說方法1安裝中(有些也適用方法2)需要注意的點,僅供學習hadoop的童鞋們一個參考:
a) 儘可能的採用Cluster部署方式,準備3-5台機器,或者在VM中3-5個系統,建議都是64bit的Linux系統,每台機器都要有獨立的IP和主機名稱(VM中最方便,只要安裝一個,其它複製即可)
b) 每台機器預先安裝JAVA,並配置JAVA_HOME和修改PATH;節約安裝程式自己下載及安裝時間,JAVA SE 1.6以上,:http://www.oracle.com/technetwork/java/javase/downloads/index.html
c) 安裝Cloudera Manager Server的機器需要關閉SELinux;安裝Postgresql(作為資料庫),:http://www.postgresql.org/download/linux/。下載有些系統已內建,可以先行查看,我的redhat用yum list postgresql命令;防火牆中開發7180連接埠,或者直接關閉防火牆service iptables stop
d)對安裝Cloudera Manager Agent的機器(即真正安裝hadoop的機器):
d1) 將yum的timeout設定的足夠大或者none(系統預設的是30), 我redhat的在/etc/yum.conf中配置,即增加timeout=none。這裡非常重要,可能有些朋友的網路相當好,或者伺服器網路穩定一次就過,但對我來說教訓大,好幾次都沒成功,提示socket timeout錯誤,更嚴重的來了,當Cloudera Manager安裝發現錯誤它就會復原,一切要重新安裝。而你設定timeout無限大時,就會一直嘗試串連伺服器,有時候安裝就會卡在這,可能是網路阻塞或者yum的包緩衝阻塞,
只要沒復原你就不用擔心了。解決方案是:在安裝介面點擊“中止安裝”, 回到安裝機器將Cloudear Manager server機器殺掉,可以skill -9 -t pty/1(終端名稱),之後清除yum緩衝(yum clean all),然後回到安裝介面重新安裝,安裝的策略是某軟體只要存在就不再安裝。
d2) 保證根目錄(/) 有足夠的空間,我linux是利用df -h查看,確保還有1G以上空間。 這裡重要的是針對VM,好多時候它沒有給你手工磁碟劃分步驟,關於增加根目錄空間可以網上找資料或者參考我的部落格。
d3) 確保cyrus-sasl-gssapi已安裝。 :http://asg.web.cmu.edu/sasl/sasl-library.html 或者http://rpmfind.net/linux/rpm2html/search.php?query=cyrus-sasl-gssapi
d4) 關閉防火牆。對namenode節點的機器或者其它hadoop機器,因為會有很多組件和服務,相應的就有很多連接埠,所有為了保證正常,可以關閉防火牆。
e) Hadoop環境大多數是用網域名稱訪問的,關於網域名稱的解析,可以增加映射名,最後在幾台hadoop的機器以及外部存取機器都加上。window下就在 C(安裝盤):\Windows\System32\drivers\etc下,linux在/etc/hosts
關於方法1我的安裝步驟:
1)準備:VM7.1、Redhat 5.7(64bit,有些人的機器不支援虛擬機器64bit,可以查看你的cpu晶片)、Jdk1.6、cloudera-manager-installer.bin、Postgresql8.4、cyrus-sasl-gssapi
2) 用vm安裝redhat,檔案儲存體在G:\hadoop\scm-manager下。系統下安裝java,配置環境變數, 配置IP地址(192.168.0.113),配置主機名稱scm-manager、完整網域名稱為scm-manager.myhadoop.com,關閉防火牆,安裝postgresql8.4
3) 上述系統關機,複製檔案, 即在G:\hadoop下複製scm-manager, 並修改為scm-name。 在scm-name檔案加下,修改scm-manager.vmx下的ethernet0.generatedAddress和uuid.bios的後3位,兩個要一樣,用於物理地址的修改。
4)虛擬機器中啟動scm-name,配置IP地址(192.168.0.114),配置主機名稱scm-name、完整網域名稱為scm-name.myhadoop.com,並重啟系統。註:該機器能連網
5)虛擬機器中啟動scm-manager, 安裝cloudera manager server,按照官方流程安裝即可(基本都是next操作),註:該機器能連網。
6)進行hadoop安裝,任意地方的瀏覽器中輸入:http://192.168.0.113:7180/, 進入hadoop安裝介面,選擇在192.168.0.114上安裝hadoop,在成功安裝完所有組件後不進入下一步,直接登出退出,該步驟的後一步是“主機檢測”。
7)關閉192.168.0.114, 複製該虛擬機器檔案夾,並重新命名,同時修改物理地址,配置IP地址,配置主機名稱,並重啟系統,(完全同第三步)具體如下;
節點1系統)G:\hadoop的檔案夾:scm-node1 Ip地址:192.168.0.115 主機名稱:scm-node1 在/etc/hosts中加入映射名,格式為:192.168.0.115 scm-node1.myhadoop.com scm-node1
節點2系統)G:\hadoop的檔案夾:scm-node2 Ip地址:192.168.0.116 主機名稱:scm-node2 在/etc/hosts中加入映射名,格式為:192.168.0.116 scm-node2.myhadoop.com scm-node2
備份節點系統)G:\hadoop的檔案夾:scm-second Ip地址:192.168.0.118 主機名稱:scm-second 在/etc/hosts中加入映射名,格式為:192.168.0.118 scm-name.myhadoop.com scm-second
8) 重新進入安裝介面,即第6步驟,將114、115、116、118四台機器加入,並一步一步往下完成。
9)在訪問的win7作業系統的hosts檔案下加入如下映射:
192.168.0.114 scm-name.myhadoop.com
192.168.0.115 scm-node2.myhadoop.com
192.168.0.116 scm-node1.myhadoop.com
192.168.0.118 scm-second.myhadoop.com
到此,hadoop安裝全部完成,具體如下:
通過cloudera manager的管理主控台直接進入組件的頁面,下面是hue的介面:
如有童鞋們需要hadoop安裝,vm的根目錄擴盤,或者vm的複製,IP地址配置等,可以給我留言,或者給我郵件,zzhua2007#hotmail.com(#換為@)。 也非常期望與對Hadoop有興趣的童鞋們一起交流。