劉順
摘 ?要:如果采用傳統的方法來搭建Hadoop集群,那么就將會出現這些問題:傳統構建Hadoop集群需要大量物理設備,要容納如此多的物理設備又需要足夠的實驗場地。這些物理機的性能得不到充分利用,造成資源浪費,并且一旦物理機集群組建后,如果還需要增加節點,就意味著還需要增加新的物理機,那就需要更大的實驗場地,并且還需要一些像集線器、網線、交換機等一系列物理設備,花費也就更多,布置起來也是費時費力。
關鍵詞:ZStack ?hadoop ?大數據 ?集群
中圖分類號:TN92 ? 文獻標識碼:A 文章編號:1672-3791(2019)07(a)-0029-02
筆者主要通過在軟件vmware workstation,利用ZStack2.7.0系統鏡像安裝3臺虛擬機,將這3臺虛擬機分別用1臺虛擬機作為主節點,其余2臺虛擬機作為slave節點,并且對這3臺虛擬機進行JDK、Hadoop軟件安裝及環境配置:配置ssh免密登錄,配置靜態網絡能夠達到內外網絡互相ping通狀態,修改相應的配置文件,部署和測試Hadoop單機本地模式、偽分布式模式、完全分布式模式。
1 ?Hadoop環境配置
hadoop安裝配置環境:(1)首先需要1臺物理機,然后是3臺虛擬機,它們分別為ls-m、ls-c1、ls-c2。(2)軟件需要ZStack2.6.0鏡像。
Hadoop基礎環境部署:(1)修改虛擬機主機名,然后執行bash命令更新。(2)分別下載rsync和ssh。(3)關閉防火墻。(4)關閉selinux安全機制,然后重啟虛擬機。(5)添加對應IP地址。(6)java環境部署:①官網下載jdk-10.0.2_linux-x64_bin.tar.gz;②卸載系統自帶的openjdk;③修改配置文件,設置JDK的環境變量。(7)Hadoop基礎環境部署:①官網下載hadoop-2.7.7.tar.gz;②解壓hadoop安裝包;③添加Hadoop環境變量,并執行source /etc/profile行命令使更改生效;④執行hadoop version命令查看Hadoop是否安裝成功。(8)配置ssh免密登錄。
Hadoop單機本地模式部署。Hadoop本地模式無需任何守護進程,只是一個單獨的java進程,使用的不是分布式文件系統而是本地文件系統,安裝Hadoop后不用任何設置即可運行調試。由于在本機模式下測試和調試MapReduce程序較為方便,因此此模式適宜用在開發階段。
2 ?Hadoop集群部署
Hadoop偽分布式集群部署:(1)執行cd /home/hadoop/hadoop-2.7.7/命令,進入此目錄下;(2)執行 vim etc/hadoop/hadoop-env.sh命令,指定Java路徑;(3)執行vim etc/hadoop/core-site.xml命令,在
Hadoop完全分布式集群部署:(1)執行cd /home/hadoop/hadoop-2.7.7/命令,進入/home/hadoop/hadoop-2.7.7/目錄;(2)執行vim etc/hadoop/hadoop-env.sh命令,添加JDK路徑;(3)執行vim etc/hadoop/yarn-env.sh文件,指定JDK路徑;(4)執行vim etc/hadoop/slaves命令,清空原內容,輸入slave節點名稱;(5)執行vim etc/hadoop/core-site.xml文件, 在
3 ?結語
筆者通過通過Hadoop本地模式、偽分布式模式、完全分布式集群3個模塊的測試,一切正常。利用vmware workstation虛擬軟件創建虛擬機,建立在虛擬機上的Hadoop的3種模式集群部署能夠正常運行,并且能夠在上面進行簡單的mapreduce或grep實例。此次設計主要從充分利用有限資源出發,在1臺物理機上通過虛擬出的3臺虛擬機,搭建Hadoop的3種模式,在搭建過程中要注意事先配置好虛擬機的靜態網絡及3臺虛擬機的主機名;配置好免密登錄環境;在部署過程中出現問題,可通過查詢相關log日志文件找出問題所在;提前做虛擬機快照,以便通過快照恢復無法解決的災難性問題。
雖然搭建的簡易Hadoop集群能夠正常運行但是依然存在著不足,3種模式使用了同一臺虛擬機會造成實例運行出現問題,雖然使用虛擬機搭建的Hadoop集群能夠充分利用資源,并且也不會有在真實物理機上部署會面臨的資費昂貴、場地限制、運維人員等一系列的問題,搭建起來也非常簡單方便,但是在性能方面和在真實物理機上部署的Hadoop集群相比要差得多,而且一旦資源不夠使用,如何添加資源便成了一個棘手的問題。所以建議在學習了解環境中可以使用虛擬機搭建Hadoop集群,但是如果是在企業中應用Hadoop集群,使用真實物理機部署是最好的方法。
參考文獻
[1] (美)Thomas ERL,(英)Zaigham Mahmood.計算機科學叢書·云計算:概念、技術與架構[M].北京:機械出版社,2014.
[2] 王良明.云計算通俗講義[M].北京:電子工業出版社,2017.
[3] (美)Matthew Portnoy,著.虛擬化技術入門實戰[M].2版.杜靜,敖富江,李博,譯.北京:清華大學出版社,2017.