大數據虛擬化零起點-6基礎運維第五步-使用CLI創建Apache Hadoop集羣

在大數據虛擬化基礎運維第五步創建Hadoop集羣開始之前,我想先說明,這裏我不通過BDE提供的可視化界面來創建集羣。原因是,我們之前部署好的vApp包括BDE管理服務器,是通過虛機的方式在運行。此時,它還沒能跟vSphereWeb Client進行綁定,從而暫時無法交付可視化管理界面。在之後的博客文章裏,我將介紹如何交付可視化界面。

但大家不要擔心,BDE管理服務器自身已經提供了完備的對外服務接口(RestAPI),用戶只需通過命令行(CLI)的方法操控它,就能開始對Hadoop集羣進行快速部署和管理。下圖說明了CLI與RestAPI的關係。

162731672.png

我們已經通過之前發佈的基礎運維繫列博客文章部署好了BDE管理服務器。現在,就使用CLI創建第一個Hadoop集羣吧!具體步驟如下:

1.SSH登錄BDE管理服務器的虛擬機 Console

在第一次登錄服務器虛擬機時,屏幕上方會提供初始密碼。登錄成功後,爲了確保安全性,請務必通過腳本更改初始密碼。

更改密碼的腳本:

sudo/opt/serengeti/sbin/set-password –u

如下圖所示:

162840378.png

2.服務器端運行CLI

在Console命令行中直接輸入Serengeti,就可以進入SerengetiCLI 程序。SerengetiCLI提供了豐富的集羣管理相關命令行和幫助體驗。如下圖所示:

162948962.png

3.連接Serengeti服務

connect --host<serengeti-mgnt-server’s ip>:port

這裏默認的端口號是8080,然後可根據提示輸入用戶名和密碼,進行連接。連接成功後會出現命令行提示。如下圖所示:

163102152.png

BDE 1.0中,端口號改成了8443,敬請注意。

4.快速創建Apache Hadoop Cluster

由於在安裝時勾選了InitializeResources,BDE管理服務器自動初始化了虛擬化環境下的可見資源,其中包括:資源池、存儲和網絡。我們可以分別輸入以下命令行對這三種資源進行確認。如下圖所示:

resourcepool list

datastore list

network list

163226723.png

正常情況下,這三種資源都可以分配到位。也就是說,現在我們已經可以創建第一個Hadoop集羣了。

在這裏,我要提出一個問題:我們現在要創建什麼樣的集羣?

對於某一個Hadoop發行版本來講,這個問題的答案其實很簡單:創建發行版的Hadoop集羣。比如,對於Cloudera的發行版,能夠創建的Hadoop集羣就是基於CDH4的Hadoop;對於Pivotal的發行版,只能創建基於PivotalHD的Hadoop。而對於BDE來說,這個問題變成了一個選擇題。因爲BDE支持多個主流的Hadoop發行版,包括Cloudera、Pivotal、MapR、Hortonworks以及社區的ApacheHadoop。由於在剛剛部署好的BDE管理服務器上已經內置了ApacheHadoop,而其他發行版尚沒有上傳到服務器,所以爲了推進下面的步驟,我們現在可以先創建一個ApacheHadoop集羣。在之後的博客文章裏,我會介紹如何創建一個Hadoop商業發行版的集羣。

創建ApacheHadoop集羣,只需一個命令行即可:

cluster create --name helloworld

cluster create是CLI的命令,它的意思是創建Hadoop集羣。

name是Clustercreate命令的一個必帶參數,意義在於給這個集羣一個名字。那麼,在這裏我就命名helloworld爲實際所提供的集羣名稱。

集羣在創建過程中,屏幕會不斷提示當前的狀態。我們需要等待10分鐘,集羣便會創建成功。如下圖所示:

163418130.png

5.完成創建並驗證集羣

進入vSphereClient,我們可以看到一個以helloworld爲後綴的新資源池被創建出來。在這個資源池下,有client、worker和master子資源池,且擁有不同數量的虛機正在運行中。如下圖所示:

163552178.png

這就是一個Hadoop集羣了。它擁有1個主節點和3個工作節點,並且提供了HadoopClient節點。

主節點即master節點。它運行着Namenode、Jobtracker等主服務。Namenode總體負責客戶端數據請求,管理HDFS數據和所有數據節點(datanodes)。Jobtracker總體負責客戶端作業請求,管理任務節點(tasktrackers),並向它們分配工作任務。值得注意的是,Namenode和Jobtracker在整個集羣各只有一個實例。

工作節點即worker節點。每個工作節點運行着datanode、tasktracker等服務,負責接收主節點的數據塊和具體任務,確保計算任務的完成。

client節點包含了Hadoop客戶端的一些組件。用戶可以很方便的訪問HDFS,提交MapReduce作業,運行Pig腳本,或Hive查詢等。

爲了驗證這個剛剛創建好的集羣,我們需要查看HDFS和MapReduce的運行狀況。

首先取得Namdenode和Jobtracker所在的主節點的IP地址:

cluster list --name helloworld --detail

cluster list是查詢集羣信息的命令。

name是給定具體名稱,意思是查詢給定名稱的集羣。

detail是希望提供集羣的具體信息。

163715392.png

通過屏幕打印的結果,可以取得主節點的IP地址。

簡單看一下HDFS和MapReduce是否運行,打開相關的狀態頁面。

打開HDFS狀態頁面:http://<ip_of_name_node>:50070/。如下圖所示:

163811892.png

再打開MapReduce狀態頁面:http://<ip_of_jobtracker_node>:50030。如下圖所示:

163928812.png

它們都運行正常!Hadoop集羣創建成功!

到這裏,我想可以總結一下,在大數據的虛擬化之路上,我們已經完成了哪些里程碑?

  • 成功部署vSphere Big Data Extensions 1.0beta 版vApp到一個vSphere環境中

  • 通過CLI(命令行方式)完成第一個Hadoop集羣的創建

  • 訪問HDFS和MapReduce的狀態頁面,驗證集羣創建成功

在之後的博客文章中,我會介紹如何交付BDE的UI,並通過可視化界面快速創建一個Hadoop集羣。


如有任何問題,您可以發郵件至[email protected]


關於vSphereBig Data Extensions:

VMwarevSphere Big Data Extensions(簡稱BDE)基於vSphere平臺支持大數據和Apache Hadoop作業。BDE以開源Serengeti項目爲基礎,爲企業級用戶提供一系列整合的管理工具,通過在vSphere上虛擬化Apache Hadoop,幫助用戶在基礎設施上實現靈活、彈性、安全和快捷的大數據部署、運行和管理工作。瞭解更多關於VMware vSphere Big Data Extensions的信息,請參見http://www.vmware.com/hadoop


作者簡介:

164141934.png

張君遲

VMware大數據解決方案項目經理

目前負責VMware大數據解決方案的管理和市場工作。曾擔任VMware數據庫管理產品vFabric Data Director產品經理,對虛擬化、雲計算、關係型數據庫和大數據等企業產品、技術方案和市場有深入的理解和實戰經驗。在此之前,就職於Microsoft從事分佈式系統的產品管理和研發工作。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章