版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基礎(chǔ)環(huán)境搭建與配置第01章基礎(chǔ)環(huán)境搭建與配置第02章Hadoop完全分布式搭建與運(yùn)行第03章Hadoop核心組件應(yīng)用案例第04章Hive組件安裝配置與應(yīng)用第05章ZooKeeper安裝配置與應(yīng)用第06章HBase安裝配置與應(yīng)用第07章Sqoop組件安裝配置與應(yīng)用第08章Flume組件安裝配置與應(yīng)用第09章Kafka安裝配置與應(yīng)用第10章Spark安裝部署與應(yīng)用第11章廣電大數(shù)據(jù)用戶畫像全套可編輯PPT課件項(xiàng)目介紹Linux,全稱GNU/Linux,是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。Linux不僅系統(tǒng)性能穩(wěn)定,而且是開源軟件,其核心防火墻組件性能高效、配置簡單,保證了系統(tǒng)的安全。由于Linux操作系統(tǒng)在安全性、穩(wěn)定性等方面的優(yōu)秀表現(xiàn),在服務(wù)器領(lǐng)域承擔(dān)著十分重要的角色,另外更重要的是因?yàn)長inux開放權(quán)限,讓用戶能自由地操作Linux系統(tǒng),在命令運(yùn)行錯誤時能根據(jù)錯誤提示找到原因,所以一般Hadoop環(huán)境部署在Linux操作系統(tǒng)上。在Linux操作系統(tǒng)中,當(dāng)今最受歡迎的主流免費(fèi)操作系統(tǒng)當(dāng)屬Ubuntu和CentOS。項(xiàng)目介紹Ubuntu是一個以桌面應(yīng)用為主的Linux操作系統(tǒng);CentOS是一款企業(yè)級Linux發(fā)行版,它使用紅帽企業(yè)級Linux中的免費(fèi)源代碼重新構(gòu)建而成。對于初學(xué)者來說CentOS更適合入門,筆者經(jīng)過一些比較和調(diào)研后,建議選擇CentOS操作系統(tǒng)。本項(xiàng)目的主要目標(biāo)為提供一個搭建Hadoop大數(shù)據(jù)平臺部署的基礎(chǔ)環(huán)境的指南,由于本手冊教材主要面向應(yīng)用型和職業(yè)教育類的學(xué)生,所以本項(xiàng)目將介紹在Windows操作系統(tǒng)上如何搭建平臺需要的三個節(jié)點(diǎn)的CentOS虛擬機(jī)環(huán)境和SSH工具連接虛擬機(jī),以及如何進(jìn)行Hadoop平臺安裝部署所需要的基礎(chǔ)環(huán)境配置。任務(wù)安排和學(xué)習(xí)目標(biāo)任務(wù)安排任務(wù)1搭建虛擬機(jī)任務(wù)2連接Xshell和Xftp工具任務(wù)3Hadoop平臺基礎(chǔ)環(huán)境配置學(xué)習(xí)目標(biāo)(1)熟悉虛擬機(jī)的搭建和配置。(2)熟悉Xshell和Xftp工具連接。(3)掌握系統(tǒng)基礎(chǔ)環(huán)境配置。(4)掌握SSH免密配置。(5)掌握J(rèn)DK的安裝與配置。1.1搭建虛擬機(jī)任務(wù)描述本手冊的任務(wù)是學(xué)習(xí)Hadoop完全分布式集群環(huán)境部署和其生態(tài)圈主要組件的安裝配置和應(yīng)用,由于在Hadoop環(huán)境中,所有的服務(wù)器節(jié)點(diǎn)僅劃為兩種角色,分別是master(主節(jié)點(diǎn),1個)和slave(從節(jié)點(diǎn),多個),因?yàn)楫?dāng)Hadoop集群數(shù)為(2n+1)時容錯性能是較好的,又考慮到大部分讀者的電腦配置條件,所以集群數(shù)定為(n=1)3節(jié)點(diǎn),即集群架構(gòu)包含一個主節(jié)點(diǎn)和兩個從節(jié)點(diǎn),節(jié)點(diǎn)基本信息如表1-1所示。其中IP地址請參考任務(wù)1.1.3,根據(jù)本地實(shí)際情況設(shè)置。表1-1集群節(jié)點(diǎn)信息本任務(wù)將完成在Windows操作系統(tǒng)上搭建Hadoop完全分布式集群平臺需要的三個節(jié)點(diǎn)的CentOS虛擬機(jī)。序號主機(jī)名IP1master192.168.88.1812slave1192.168.88.1823slave2192.168.88.183表1-1集群節(jié)點(diǎn)信息任務(wù)分析要求讀者本地基本配置為Windows7或以上操作系統(tǒng)(64位)、8GB+內(nèi)存、100GB+可用磁盤。本任務(wù)利用虛擬機(jī)軟件先創(chuàng)建master節(jié)點(diǎn)的虛擬機(jī),并進(jìn)行基本的網(wǎng)絡(luò)配置;在master節(jié)點(diǎn)的基礎(chǔ)上克隆slave1和slave2,并進(jìn)行相應(yīng)的網(wǎng)絡(luò)配置修改,以便SSH遠(yuǎn)程終端工具能夠正常連接訪問。1.1安裝虛擬機(jī)軟件虛擬機(jī)軟件可以在計(jì)算機(jī)平臺和終端用戶之間建立一種環(huán)境,而終端用戶則是基于這個軟件所建立的環(huán)境來操作軟件。常用虛擬機(jī)軟件有:VirtualBox,VMwareWorkstation,VirtualPC等,其中VMwareWorkstation是一款功能強(qiáng)大的電腦桌面虛擬計(jì)算機(jī)軟件,提供用戶可在單一的桌面上同時運(yùn)行不同的操作系統(tǒng),和進(jìn)行開發(fā)、測試、部署新的應(yīng)用程序的最佳解決方案。VMwareWorkstation可在一部實(shí)體機(jī)器上模擬完整的網(wǎng)絡(luò)環(huán)境,以及可便于攜帶的虛擬機(jī)器,其更好的靈活性與先進(jìn)的技術(shù)勝過了市面上其他的虛擬計(jì)算機(jī)軟件。本任務(wù)選擇VMwareWorkstationPro16作為虛擬機(jī)安裝軟件,讀者可以在官網(wǎng)下載。雙擊安裝包如圖1-1所示,開始安裝。圖1-1虛擬機(jī)軟件1.1安裝虛擬機(jī)軟件加載一會時間后進(jìn)入安裝頁面,如圖1-2所示,單擊【下一步】按鈕。圖1-2虛擬機(jī)軟件安裝過程11.1安裝虛擬機(jī)軟件在如圖1-3所示中,選擇【我接受許可協(xié)議中的條款】,然后單擊【下一步】按鈕。圖1-3虛擬機(jī)軟件安裝過程21.1安裝虛擬機(jī)軟件在如圖1-4所示中,可以單擊右上角的【更改...】設(shè)置軟件安裝的路徑,建議安裝在非系統(tǒng)盤下,具體路徑讀者自行設(shè)置,如果默認(rèn)目錄安裝可以直接單擊【下一步】按鈕。圖1-4虛擬機(jī)軟件安裝過程31.1安裝虛擬機(jī)軟件在如圖1-5所示中,將用戶體驗(yàn)設(shè)置均取消,單擊【下一步】按鈕,在下一個窗口上直接單擊【下一步】按鈕,在下一個窗口上,單擊【安裝】按鈕,開始軟件的安裝過程。圖1-5虛擬機(jī)軟件安裝過程41.1安裝虛擬機(jī)軟件圖1-6虛擬機(jī)軟件安裝過程5等待安裝過程結(jié)束出現(xiàn)如圖1-6所示,單擊【完成】按鈕完成軟件的安裝。1.2安裝master節(jié)點(diǎn)虛擬機(jī)1.2安裝master節(jié)點(diǎn)虛擬機(jī)在程序菜單中打開VMware16虛擬機(jī),出現(xiàn)使用界面如圖1-7所示,在頁面上選擇【創(chuàng)建新的虛擬機(jī)】。圖1-7虛擬機(jī)創(chuàng)建過程11.2安裝master節(jié)點(diǎn)虛擬機(jī)配置類型選擇如圖1-8所示,在圖中選擇【典型(推薦)】,再單擊【下一步】按鈕。圖1-8虛擬機(jī)創(chuàng)建過程21.2安裝master節(jié)點(diǎn)虛擬機(jī)出現(xiàn)安裝客戶機(jī)操作系統(tǒng)頁面如圖1-9所示,在安裝客戶機(jī)操作系統(tǒng)頁面上,選擇【安裝程序光盤映像文件(iso)】,并單擊【瀏覽】。圖1-9虛擬機(jī)創(chuàng)建過程31.2安裝master節(jié)點(diǎn)虛擬機(jī)進(jìn)入選擇光盤文件的頁面選擇安裝CentOS操作系統(tǒng)用的ISO文件,如圖1-10所示,在圖中的文件路徑中選擇光盤ISO文件所在的目錄,選擇光盤ISO文件后回到圖1-9的頁面上,單擊【下一步】按鈕。圖1-10虛擬機(jī)創(chuàng)建過程41.2安裝master節(jié)點(diǎn)虛擬機(jī)如果光盤文件有效,在下面會出現(xiàn)“已檢測到CentOS764位”信息,如圖1-11所示,單擊【下一步】按鈕。圖1-11虛擬機(jī)創(chuàng)建過程51.2安裝master節(jié)點(diǎn)虛擬機(jī)進(jìn)入到虛擬機(jī)命名頁面如圖1-12所示,在名稱那里輸入“master”,在位置那里輸入master虛擬機(jī)文件要存儲的目錄,筆者在本地E盤,創(chuàng)建了一個\hadoopbigdata的目錄,并在該目錄下創(chuàng)建了master、slave1和slave2文件夾,此處選擇master文件夾,單擊【下一步】按鈕。圖1-12虛擬機(jī)創(chuàng)建過程61.2安裝master節(jié)點(diǎn)虛擬機(jī)進(jìn)入虛擬機(jī)磁盤容量設(shè)置頁面如圖1-13所示,選用建議的20GB大小,并選擇【將虛擬機(jī)磁盤拆分成多個文件】,單擊【下一步】按鈕。圖1-13虛擬機(jī)創(chuàng)建過程71.2安裝master節(jié)點(diǎn)虛擬機(jī)進(jìn)入虛擬機(jī)按照概要文件頁面如圖1-14所示,可以看到前面配置的相關(guān)信息,如虛擬機(jī)的名稱和文件路徑名稱等,單擊【完成】按鈕。圖1-14虛擬機(jī)創(chuàng)建過程81.2安裝master節(jié)點(diǎn)虛擬機(jī)開始虛擬機(jī)的安裝過程,這個過程視讀者的系統(tǒng)情況時間會不同,等安裝配置到出現(xiàn)如圖
1-15所示的窗口,選擇語言為【中文】,然后單擊【繼續(xù)】。圖1-15虛擬機(jī)創(chuàng)建過程91.2安裝master節(jié)點(diǎn)虛擬機(jī)此時安裝程序會進(jìn)行一個簡短的加載過程后,出現(xiàn)如圖1-16所示的頁面,現(xiàn)在發(fā)現(xiàn)右下角的【開始安裝】按鈕為灰色無效狀態(tài),在頁面上選擇【日期和時間】進(jìn)入下一個頁面。圖1-16虛擬機(jī)創(chuàng)建過程101.2安裝master節(jié)點(diǎn)虛擬機(jī)在如圖1-17所示的頁面上進(jìn)行時區(qū)和時間的設(shè)置,注意對比日期和時間是否與本地同步,如不同步請修改調(diào)整,修改后單擊【完成】按鈕退出該頁面。圖1-17虛擬機(jī)創(chuàng)建過程111.2安裝master節(jié)點(diǎn)虛擬機(jī)回到如圖1-16所示的主頁面上后往下滑動,如圖1-18所示,選擇【安裝位置】進(jìn)入下一個頁面。圖1-18虛擬機(jī)創(chuàng)建過程121.2安裝master節(jié)點(diǎn)虛擬機(jī)在如圖1-19所示頁面上,直接單擊【完成】按鈕?;氐饺鐖D1-16所示的主頁面上,經(jīng)過前面的幾項(xiàng)設(shè)置,如圖1-20所示的頁面右下角的【開始安裝】按鈕變成了藍(lán)色有效狀態(tài),單擊【開始安裝】。圖1-19虛擬機(jī)創(chuàng)建過程131.2安裝master節(jié)點(diǎn)虛擬機(jī)單擊如圖1-20所示【開始安裝】后進(jìn)行安裝圖1-20虛擬機(jī)創(chuàng)建過程141.2安裝master節(jié)點(diǎn)虛擬機(jī)如圖1-21所示,這個過程大概需要幾分鐘到幾十分鐘不等,在這個過程中,可以單擊【ROOT密碼】設(shè)置默認(rèn)root用戶的登錄密碼。圖1-21虛擬機(jī)創(chuàng)建過程151.2安裝master節(jié)點(diǎn)虛擬機(jī)在如圖1-22所示的界面上,兩次輸入同一個root用戶的密碼,筆者這里設(shè)為“master”,單擊【完成】按鈕,回到安裝過程頁面繼續(xù)等待安裝。
圖1-22虛擬機(jī)創(chuàng)建過程161.2安裝master節(jié)點(diǎn)虛擬機(jī)安裝完成后,出現(xiàn)如圖1-23所示,單擊【重啟】,即可進(jìn)入虛擬機(jī)節(jié)點(diǎn)的設(shè)置任務(wù)。圖1-23虛擬機(jī)創(chuàng)建過程171.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置1.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置創(chuàng)建的master節(jié)點(diǎn)虛擬機(jī)雖然可以正常使用了,但是該虛擬機(jī)的IP是動態(tài)生成的,再不斷的開停過程中很容易改變,不利于實(shí)際應(yīng)用,因此需要對網(wǎng)絡(luò)環(huán)境進(jìn)行配置。1.登錄系統(tǒng)接1.1.2小節(jié),重啟后,出現(xiàn)如圖1-24所示,頁面上【localhostlogin:】表示輸入登錄的用戶,這里輸入默認(rèn)的root用戶,然后回車;會提示【Password:】,表示輸入上一個任務(wù)鐘所設(shè)置的密碼,本手冊這里為:“master”,請初學(xué)者特別注意,這里輸入密碼,光標(biāo)不會動,也不會顯示輸入的密碼,請?jiān)谳斎胪暾拿艽a后回車,如果輸入錯誤會提示重新輸入用戶和密碼。圖1-24master登錄首頁1.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置2.查看網(wǎng)絡(luò)配置信息輸入正確用戶密碼后,進(jìn)入到Linux的交互終端,選擇菜單【編輯】中的【虛擬網(wǎng)絡(luò)編輯器】,如圖1-25所示。圖1-25虛擬機(jī)配置頁面1.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置進(jìn)入如圖1-26所示的【虛擬網(wǎng)絡(luò)編輯器】頁面,在虛擬網(wǎng)絡(luò)編輯器頁面上,選擇圖中的VMnet8NAT模式,這時候,下面會顯示子網(wǎng)IP,筆者本地是:(后面配置中會參考這個,請讀者記下本地的子網(wǎng)IP信息,后面的設(shè)置中據(jù)此進(jìn)行調(diào)整)。圖1-26虛擬網(wǎng)絡(luò)編輯器1.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置3.設(shè)置節(jié)點(diǎn)IP地址在master節(jié)點(diǎn),輸入【servicenetworkrestart】重啟網(wǎng)絡(luò),結(jié)果如圖1-27所示。修改IP地址命令如代碼1-1所示。代碼1-1修改IP命令vi/etc/sysconfig/network-scripts/ifcfg-ens33圖1-27master設(shè)置頁面1.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置執(zhí)行代碼1-1,如果打開的是一個空白的文件,說明地址或文件名出入錯誤,請退出后重新輸入;輸入正確會出現(xiàn)如圖1-28所示的網(wǎng)絡(luò)配置信息。圖1-28masterIP設(shè)置頁面1.3master節(jié)點(diǎn)的網(wǎng)絡(luò)配置進(jìn)入配置文件后,修改內(nèi)容如表1-2所示,其中“192.168.88”請改為讀者自己在上一節(jié)中記下的本地信息,如第2節(jié)中子網(wǎng)IP是“”,那么此處的IPADDR就改為“81”,GATEWAY就設(shè)為“”。保存配置文件后,再次輸入【servicenetworkrestart】重啟網(wǎng)絡(luò),如果沒有提示出錯,輸入【ipa】命令回車執(zhí)行,可以在顯示的內(nèi)容中找到如圖1-29所示中的:“81”的IP地址,說明IP地址配置成功。圖1-29masterIP查詢頁面表1-2IP設(shè)置修改內(nèi)容#將下面兩項(xiàng)的配置進(jìn)行修改:BOOTPROTO=staticONBOOT=yes#在文件末尾添加以下內(nèi)容:IPADDR=81NETMASK=GATEWAY=DNS1=1.4克隆Slave節(jié)點(diǎn)克隆slave1節(jié)點(diǎn)將master虛擬機(jī)關(guān)機(jī),并雙擊master節(jié)點(diǎn)之后,右擊master節(jié)點(diǎn),在右擊菜單中選擇【管理】,然后選擇【克隆】,如圖1-30所示。圖1-30slave1虛擬機(jī)克隆1克隆slave1節(jié)點(diǎn)進(jìn)入到如圖1-31所示頁面,選擇【虛擬機(jī)中的當(dāng)前狀態(tài)】,單擊【下一頁】。在如圖1-32所示的頁面上選擇【創(chuàng)建完整克隆】,單擊【下一頁】。圖1-31slave1虛擬機(jī)克隆2圖1-32slave1虛擬機(jī)克隆3克隆slave1節(jié)點(diǎn)將虛擬機(jī)名稱改為slave1,單擊位置輸入框后的【瀏覽】,進(jìn)入到虛擬機(jī)存放的路徑下,讀者本地為“E:\hadoopbigdata\slave1”的文件夾,然后確定使用該文件夾,效果如圖1-33所示,然后單擊【完成】按鈕。圖1-33slave1虛擬機(jī)克隆4克隆slave1節(jié)點(diǎn)克隆虛擬機(jī)很快,完成后在左邊的節(jié)點(diǎn)導(dǎo)航中出現(xiàn)了slave1節(jié)點(diǎn),如圖1-34所示。圖1-34slave1虛擬機(jī)克隆5克隆slave1節(jié)點(diǎn)開啟slave1虛擬機(jī),并使用root用戶和密碼(跟master節(jié)點(diǎn)一致)登錄slave1,參考master節(jié)點(diǎn)設(shè)置IP的方法設(shè)置slave1的IP地址。修改IP地址命令如下代碼vi
/etc/sysconfig/network-scripts/ifcfg-ens33執(zhí)行代碼,如果打開的是一個空白的文件,說明地址或文件名出入錯誤,請退出后重新輸入;輸入正確會出現(xiàn)如圖1-35所示的網(wǎng)絡(luò)配置信息。圖1-35slave1IP修改克隆slave1節(jié)點(diǎn)進(jìn)入配置文件后,修改內(nèi)容如表所示,由于在master節(jié)點(diǎn)上已經(jīng)配置了必須的內(nèi)容,那么此處只需將IPADDR改為“82”即可。保存配置文件后,再次輸入【servicenetworkrestart】重啟網(wǎng)絡(luò),如果沒有提示出錯,就輸入【ipa】命令回車執(zhí)行,可以在顯示的內(nèi)容中找到如圖1-36所示中的:“82”的IP地址,說明IP地址配置成功。圖1-36slave1IP修改#將slave1的IP改為:IPADDR=82克隆slave2節(jié)點(diǎn)參考slave1節(jié)點(diǎn)的克隆步驟,克隆slave2節(jié)點(diǎn)虛擬機(jī),其中slave2節(jié)點(diǎn)虛擬機(jī)的名稱和路徑如圖1-37所示。圖1-37slave2虛擬機(jī)克隆克隆slave2節(jié)點(diǎn)開啟slave2虛擬機(jī),并使用root用戶和密碼(跟master節(jié)點(diǎn)一致)登錄slave2,參考slave1節(jié)點(diǎn)設(shè)置IP的方法設(shè)置slave2的IP地址(83)。使用【ipa】命令后,運(yùn)行結(jié)果出現(xiàn)如圖1-38所示中的:“83”的IP地址,說明IP地址配置成功。圖1-38slave2IP查看任務(wù)2配置連接工具任務(wù)描述如今大多數(shù)的用戶都是使用的Windows操作系統(tǒng),但如果想要連接Linux服務(wù)器來進(jìn)行文件之間的傳送,在Linux虛擬機(jī)系統(tǒng)里進(jìn)行相關(guān)的操作也不方便,那就需要借助一些SecureShell軟件(簡稱SSH)來幫助完成。本任務(wù)將完成終端操作軟件的連接訪問和上傳下載文件的工具使用。任務(wù)分析關(guān)于SSH客戶端,大多數(shù)人都是用Xshell、MobaXterm和SecureCRT等。Xshell是一款功能強(qiáng)大的Linux連接管理工具,它支持SSH1,SSH2,以及MicrosoftWindows平臺的TELNET協(xié)議。有商業(yè)付費(fèi)版和個人用戶免費(fèi)版。SecureCRT是收費(fèi)軟件,但有些功能沒有Xshell完善。MobaXterm是遠(yuǎn)程計(jì)算的工具箱。在單獨(dú)一個Windows應(yīng)用里,MobaXterm為程序員、網(wǎng)站管理員、IT管理員及其它用戶提供了遠(yuǎn)程操作一攬子功能。MobaXterm有安裝版和純綠色免安裝版。由于Xshell不僅功能比較強(qiáng)大,還具有豐富的外觀配色方案以及樣式選擇,本手冊推薦讀者優(yōu)先使用SSH客戶端Xshell(終端操作)和配套Xftp(上傳下載)。2.1Windows系統(tǒng)連接虛擬機(jī)測試在Windows系統(tǒng)系統(tǒng)里,以管理員身份打開命令提示符窗口,分別測試三臺虛擬機(jī)節(jié)點(diǎn)是否網(wǎng)絡(luò)配置成功。輸入代碼1-3中的代碼分別執(zhí)行,代碼中的IP地址請讀者務(wù)必改為本地虛擬機(jī)配置的IP地址。代碼1-3環(huán)境變量文件的添加內(nèi)容ping81ping82ping83執(zhí)行代碼1-3后,如果網(wǎng)絡(luò)配置成功,出現(xiàn)如圖1-39所示的效果。圖1-39虛擬機(jī)測試網(wǎng)絡(luò)配置2.2連接Xshell工具本手冊使用Xshell工具作為連接Linux服務(wù)器的終端軟件,使用的版本為Xshell7.0,由于該軟件的安裝比較簡單,此處默認(rèn)讀者自行已經(jīng)安裝好該軟件。2.2連接Xshell工具—連接master節(jié)點(diǎn)打開Xshell工具后,單擊左上角的增加圖表,創(chuàng)建新的連接,如圖1-40所示,在新的連接頁面輸入連接名稱:master(這個名字為連接別名,可以隨意命名,但是為了區(qū)分,這里命名為master);在主機(jī)輸入框里輸入master節(jié)點(diǎn)設(shè)置的IP地址,此處為81;單擊【連接】進(jìn)入下一頁。圖1-40XShell新建連接2.2連接Xshell工具—連接master節(jié)點(diǎn)第一次連接虛擬機(jī)的時候會彈出如圖1-41所示的窗口,建議選擇【接受并保存】注冊相關(guān)的信息,并保存后面輸入的用戶和密碼。圖1-41XShell接收注冊2.2連接Xshell工具—連接master節(jié)點(diǎn)在master節(jié)點(diǎn)雙擊連接,會彈出輸入登錄用戶名的窗口,輸入“root”,并選擇【記住用戶名】,如圖1-42所示。圖1-42輸入用戶名2.2連接Xshell工具—連接master節(jié)點(diǎn)單擊確定后,進(jìn)入輸入密碼的窗口,輸入登錄密碼后,選擇【記住密碼】,如圖1-43所示,這樣在后續(xù)的連接中就不要重復(fù)輸入用戶和密碼,然后單擊【確定】。圖1-43輸入密碼2.2連接Xshell工具—連接master節(jié)點(diǎn)輸入密碼并確定之后出現(xiàn)如圖1-44所示,說明連接成功。圖1-44Xshell連接master節(jié)點(diǎn)2.2連接Xshell工具—連接slave1節(jié)點(diǎn)參考master節(jié)點(diǎn)以上的操作,連接slave1節(jié)點(diǎn)。只需要將連接名稱設(shè)為“slave1”,主機(jī)名改為:82,其他類似,連接成功后如圖1-45所示。圖1-45Xshell連接slave1節(jié)點(diǎn)2.2連接Xshell工具—連接slave1節(jié)點(diǎn)參考master節(jié)點(diǎn)以上的操作,連接slave2節(jié)點(diǎn)。只需要將連接名稱設(shè)為“slave2”,主機(jī)名改為:83,其他類似,連接成功后如圖1-46所示。如圖1-46所示的效果,表示Xshell工具連接三個節(jié)點(diǎn)成功。圖1-46Xshell連接slave2節(jié)點(diǎn)2.3Xftp工具使用在平臺搭建和應(yīng)用過程中,經(jīng)常需要在宿主機(jī)Windows系統(tǒng)和平臺Linux系統(tǒng)之間上傳和下載文件,Xftp是一個基于MSWindows平臺的功能強(qiáng)大的SFTP、FTP文件傳輸軟件。使用了Xftp以后,MSWindows用戶能安全地在UNIX/Linux和WindowsPC之間傳輸文件,Xftp軟件可以直接到官網(wǎng)上下載。由于Xftp的安裝比較簡單,此處默認(rèn)讀者自行已經(jīng)安裝好該軟件。打開Xftp工具后,單擊左上角的增加會話圖標(biāo),創(chuàng)建新的連接,如圖1-47所示,在新的連接頁面輸入連接名稱:master(這個名字為連接別名,可以隨意命名,但是為了區(qū)分,這里命名為master);在主機(jī)輸入框里輸入master節(jié)點(diǎn)設(shè)置的IP地址,此處為81;在下方輸入用戶名:root,輸入master的root用戶登錄密碼,單擊【連接】進(jìn)入下一頁。2.3Xftp工具使用連接上master節(jié)點(diǎn)以后的頁面如圖1-48所示,左邊是宿主機(jī)Windows系統(tǒng)文件列表,可以通過上面目錄下拉修改;右邊是虛擬機(jī)Linux系統(tǒng)master節(jié)點(diǎn)的文件夾。如果是從宿主機(jī)上傳文件到master指定的目錄,選中要上傳的文件拖動到右邊白色的區(qū)域,就會開始上傳該文件;如果是從虛擬機(jī)里面下載文件類似,通過文件路徑定位要下載的文件后,選擇文件拖到要下載的目標(biāo)文件夾即可。圖1-47Xftp連接2.3Xftp工具使用圖1-48Xftp上傳下載2.3Xftp工具使用將宿主機(jī)Windows中的JDK組件上傳到master節(jié)點(diǎn)/root/中的效果如圖1-49所示。后續(xù)項(xiàng)目中的組件和程序包上傳均用此方法,后續(xù)項(xiàng)目中不再詳述,請讀者統(tǒng)一參考此小節(jié)。任務(wù)1.3Hadoop平臺基礎(chǔ)環(huán)境配置任務(wù)描述本任務(wù)將完成部署和運(yùn)行Hadoop完全分布式集群所需要的系統(tǒng)基礎(chǔ)配置,以及JDK環(huán)境的安裝。任務(wù)分析在進(jìn)行Hadoop集群的安裝部署之前,需要對虛擬機(jī)進(jìn)行一些基礎(chǔ)環(huán)境配置,如集群中需要識別主機(jī)時的配置主機(jī)和IP的映射關(guān)系;集群中需要關(guān)閉并禁用防火墻,為了能夠使用Web相關(guān)的服務(wù)和相關(guān)的訪問連接;同時為了減少節(jié)點(diǎn)之間訪問時需要人工輸入用戶密碼的SSH免密訪問設(shè)置;為了集群節(jié)點(diǎn)時間同步,需要設(shè)置時間服務(wù);另外Hadoop集群主要使用Java語言編寫的,集群部署需要Java環(huán)境的配置,本任務(wù)將完成以上的操作。3.1設(shè)置服務(wù)器的主機(jī)名稱根據(jù)表1-1,三個節(jié)點(diǎn)的主機(jī)名稱分別為master、slave1和slave2,本小節(jié)將分別設(shè)置主機(jī)名稱。3.1設(shè)置服務(wù)器的主機(jī)名稱使用代碼1-4中hostnamectl命令在master節(jié)點(diǎn)中修改主機(jī)名為master,并使用bash命令刷新主機(jī)名,可以看到@后面的主機(jī)名由“l(fā)ocalhost”變成了“master”,效果如圖1-50所示。代碼1-4修改master主機(jī)名hostnamectlset-hostnamemasterbash圖1-50master節(jié)點(diǎn)修改主機(jī)名3.1設(shè)置服務(wù)器的主機(jī)名稱使用代碼1-5中hostnamectl命令在slave1節(jié)點(diǎn)中修改主機(jī)名為slave1,并使用bash命令刷新主機(jī)名,可以看到@后面的主機(jī)名由“l(fā)ocalhost”變成了“slave1”,效果如圖1-51所示。代碼1-5修改slave1主機(jī)名hostnamectlset-hostnameslave1bash圖1-51slave1節(jié)點(diǎn)修改主機(jī)名3.1設(shè)置服務(wù)器的主機(jī)名稱使用代碼1-6中hostnamectl命令在slave2節(jié)點(diǎn)中修改主機(jī)名為slave2,并使用bash命令刷新主機(jī)名,可以看到@后面的主機(jī)名由“l(fā)ocalhost”變成了“slave2”,效果如圖1-52所示。代碼1-6修改slave2主機(jī)名hostnamectlset-hostnameslave2bash圖1-52slave2節(jié)點(diǎn)修改主機(jī)名3.2關(guān)閉并禁用防火墻Hadoop集群平臺可以使用Web頁面進(jìn)行管理,但需要關(guān)閉防火墻,否則會打不開Web頁面。如果不關(guān)閉防火墻也會造成Hadoop后臺運(yùn)行腳本出現(xiàn)一些不好解決的莫名的錯誤。為了重啟系統(tǒng)后不再打開防火墻,建議同時禁用防火墻。使用代碼1-7中systemctl命令在master節(jié)點(diǎn)中分別關(guān)閉并禁用防火墻,同時為了確認(rèn)是否操作成功,可以查看確認(rèn)防火墻是否為disabled(禁用)以及inactive(關(guān)閉)的狀態(tài),效果如圖1-53所示。代碼1-7關(guān)閉、禁用、查看防火墻狀態(tài)systemctlstopfirewalldsystemctldisablefirewalldsystemctlstatusfirewalld圖1-53master防火墻設(shè)置3.2關(guān)閉并禁用防火墻重復(fù)以上的步驟,關(guān)閉并禁用slave1和slave2節(jié)點(diǎn)的防火墻,狀態(tài)如圖1-54和圖1-55所示。圖1-54slave1防火墻設(shè)置圖1-55slave2防火墻設(shè)置3.3修改主機(jī)IP映射文件本小節(jié)的操作前提是已經(jīng)成功完成各個節(jié)點(diǎn)的網(wǎng)絡(luò)配置。本小節(jié)將在虛擬機(jī)所有節(jié)點(diǎn)修改主機(jī)IP映射文件;同時為了在宿主機(jī)中使用瀏覽器通過節(jié)點(diǎn)名稱訪問WebUI界面,也需要在宿主機(jī)中進(jìn)行配置更改。3.3修改主機(jī)IP映射文件先在master節(jié)點(diǎn)使用代碼1-8中的vi命令修改主機(jī)IP映射文件。代碼1-8修改主機(jī)IP映射文件vi/etc/hosts根據(jù)表1-1可知,Hadoop集群架構(gòu)的三個節(jié)點(diǎn)主機(jī)名為“master、slave1、slave2”,IP地址是“81、82、83”,讀者需要根據(jù)本地的實(shí)際IP地址做相應(yīng)的修改。在hosts文件的末尾添加內(nèi)容如表1-4所示,保存退出。表1-4主機(jī)IP映射文件192.168.88.181master192.168.88.182slave1192.168.88.183slave23.3修改主機(jī)IP映射文件修改以后的文件,為了方便三臺節(jié)點(diǎn)的內(nèi)容一致不出錯,采取在master使用scp命令向slave1和slave2節(jié)點(diǎn)分發(fā)文件的方式,如代碼1-9所示,由于master是第一次連接slave1和slave2,需要輸入yes確定信任連接;因?yàn)槟壳斑€沒有設(shè)置SSH免密登錄,所以在執(zhí)行代碼1-9命令之后,需要輸入目標(biāo)節(jié)點(diǎn)的root用戶密碼,如圖1-56所示。代碼1-9同步發(fā)送到Slaves節(jié)點(diǎn)scp/etc/hostsroot@slave1:/etc/scp/etc/hostsroot@slave2:/etc/圖1-56同步主機(jī)IP映射文件3.3修改主機(jī)IP映射文件在宿主機(jī)Windows系統(tǒng)中,進(jìn)入【C:\Windows\System32\drivers\etc】目錄,該目錄下有一個hosts文件,如圖1-57所示。圖1-57Windows主機(jī)IP映射文件3.3修改主機(jī)IP映射文件說明:如果跳過本步驟,在后續(xù)用瀏覽器打開Web頁面時也可以將節(jié)點(diǎn)名稱改為IP訪問即可。圖1-58Windows系統(tǒng)主機(jī)IP映射文件修改內(nèi)容3.4SSH無密碼驗(yàn)證配置在集群節(jié)點(diǎn)之間因?yàn)楦鞣N需要,會互相訪問,如在節(jié)點(diǎn)間使用scp命令發(fā)送文件,或在一鍵啟動Hadoop集群時,默認(rèn)情況下需要手動輸入很多次密碼,特別是節(jié)點(diǎn)比較多的情況,更是繁瑣,所以在集群的節(jié)點(diǎn)之間設(shè)置SSH互相免密登錄會比較方便。3.4SSH無密碼驗(yàn)證配置CentOS7默認(rèn)安裝SSH服務(wù),可以使用代碼1-10中的命令查看SSH的狀態(tài),如果已經(jīng)安裝好服務(wù),查看效果如圖1-59所示,“active(running)”表示SSH服務(wù)正在運(yùn)行中,其他節(jié)點(diǎn)類似。代碼1-10修改主機(jī)IP映射文件systemctlstatussshd圖1-59SSH服務(wù)狀態(tài)圖3.4SSH無密碼驗(yàn)證配置在三個節(jié)點(diǎn)上分別使用ssh-keygen命令,其中“-trsa”表示使用rsa(非對稱加密)算法,“-P(大寫P)''”表示提供舊密碼短語為空,如代碼1-11中的命令生成密鑰對,在交互過程中會提示密鑰對存放路徑,默認(rèn)放在/root/.ssh/id_rsa,直接回車選擇存放在該目錄下,生成ssh-keygen后顯示的randomart是剛剛生成的密鑰的圖形表示,這個沒有實(shí)際的含義,通過這種方式表示生成密鑰對成功。代碼1-11生成密鑰對ssh-keygen-trsa-P''3.4SSH無密碼驗(yàn)證配置在master上生成密鑰對的,如圖1-60所示。圖1-60master節(jié)點(diǎn)的密鑰對生成3.4SSH無密碼驗(yàn)證配置在slave1上生成密鑰對的,如圖1-61所示。圖1-61slave1節(jié)點(diǎn)的密鑰對生成3.4SSH無密碼驗(yàn)證配置在slave2上生成密鑰對,如圖1-62所示。圖1-62slave2節(jié)點(diǎn)的密鑰對生成3.4SSH無密碼驗(yàn)證配置上面操作中,默認(rèn)將密鑰對存放在/root/.ssh目錄中,其中.ssh目錄是個隱藏文件夾,通過代碼1-12中的命令可以查看“/root/.ssh”文件下是否有兩個剛產(chǎn)生的密鑰對。代碼1-12生成密鑰對cd/root/.ssh/ls在每個節(jié)點(diǎn)上執(zhí)行代碼1-12,都可以看到如圖1-63所示的密鑰對,其中id_rsa為私鑰,id_rsa.pub為公鑰。圖1-63是在master節(jié)點(diǎn)的查看效果,在slave1和slave2節(jié)點(diǎn)上類似,讀者可以自行查看。圖1-63密鑰對3.4SSH無密碼驗(yàn)證配置先在master節(jié)點(diǎn)收集slave1的公鑰,由于公鑰的名稱都一樣,將收集的slave1的公鑰存放到/root/.ssh/,命名為1.pub,在收集過程中需要人工輸入slave1的root用戶密碼,使用代碼1-13命令收集公鑰。代碼1-13收集slave1密鑰對cd/root/.ssh/scproot@slave1:~/.ssh/id_rsa.pub./1.publs顯示收集到的公鑰如圖1-64所示。圖1-64slave1上的公鑰收集3.4SSH無密碼驗(yàn)證配置在master節(jié)點(diǎn)收集slave2的公鑰,由于公鑰的名稱都一樣,將收集的slave2的公鑰存放到/root/.ssh/,命名為2.pub,在收集過程中需要人工輸入slave2的root用戶密碼,使用代碼1-14命令收集公鑰。代碼1-14收集slave2密鑰對cd/root/.ssh/scproot@slave2:~/.ssh/id_rsa.pub./2.publs顯示收集到的公鑰如圖1-65所示。圖1-65slave2上的公鑰收集3.4SSH無密碼驗(yàn)證配置現(xiàn)在master節(jié)點(diǎn)的/root/.ssh/目錄下有三個節(jié)點(diǎn)的公鑰,需要將這三個公鑰追加到白名單文件authorized_keys,需要修改文件的權(quán)限為700(rwx-------),表示所有者可讀寫可執(zhí)行、其他用戶沒有訪問權(quán)限,如果該文件權(quán)限太大,SSH服務(wù)會拒絕工作,出現(xiàn)無法通過密鑰文件進(jìn)行登錄認(rèn)證的情況。使用代碼1-15的命令進(jìn)行白名單的制作并賦權(quán),同時使用cat命令查看白名單文件的內(nèi)容。代碼1-15制作白名單cd/root/.ssh/catid_rsa.pub1.pub2.pub>>authorized_keyschmod700authorized_keys代碼1-15執(zhí)行后的效果如圖1-66所示,authorized_keys文件中的內(nèi)容為三個節(jié)點(diǎn)的公鑰信息,表示收集成功。圖1-66白名單文件內(nèi)容3.4SSH無密碼驗(yàn)證配置白名單文件需要分發(fā)到slave1和slave2才能互相擁有對方的公鑰,實(shí)現(xiàn)免密登錄。使用代碼1-16的命令將白名單文件分發(fā)給slave1和slave2,這時候還是需要輸入各自的root用戶密碼。代碼1-16分發(fā)白名單文件scp/root/.ssh/authorized_keysslave1:/root/.ssh/scp/root/.ssh/authorized_keysslave2:/root/.ssh/3.4SSH無密碼驗(yàn)證配置如果以上的設(shè)置步驟成功,那么現(xiàn)在三個節(jié)點(diǎn)就可以使用進(jìn)行SSH免密登錄了。先在master節(jié)點(diǎn)連接本地,使用代碼1-17中命令連接本地,效果如圖1-67所示。代碼1-17SSH連接本地sshlocalhost圖1-67master連接本地3.4SSH無密碼驗(yàn)證配置在master節(jié)點(diǎn)連接slave1,上之后可以輸入exit退出回到原來的節(jié)點(diǎn)。使用代碼1-18中命令測試互相連接,效果如圖1-68所示。代碼1-18SSH連接測試sshslave1exitsshslave2sshmasterexit3.4SSH無密碼驗(yàn)證配置首次登錄時會提示系統(tǒng)無法確認(rèn)host主機(jī)的真實(shí)性,只知道它的公鑰,詢問用戶是否還想繼續(xù)連接。需要輸入“yes”,表示繼續(xù)登錄。下次再登錄同一個主機(jī),則不會再出現(xiàn)該提示,可以直接進(jìn)行登錄。讀者需要關(guān)注是否在登錄過程中是否需要輸入密碼,不需要輸入密碼才表示通過密鑰認(rèn)證成功。以上過程表示,在三個節(jié)點(diǎn)之間實(shí)現(xiàn)了SSH免密登錄,繼續(xù)其他操作之前應(yīng)該確認(rèn)是在哪個節(jié)點(diǎn)里。圖1-68互相ssh連接3.5集群時間同步設(shè)置集群中的節(jié)點(diǎn),如果沒有連接外網(wǎng),時間久了,會產(chǎn)生時間偏差,導(dǎo)致集群執(zhí)行任務(wù)時間不同步,所以需要在集群中的節(jié)點(diǎn)設(shè)置服務(wù)器集群的時間同步,下面在三個節(jié)點(diǎn)中設(shè)置NTP(網(wǎng)絡(luò)時間協(xié)議)時間同步。如果系統(tǒng)默認(rèn)沒有安裝NTP服務(wù),則需要先安裝,分別在三個節(jié)點(diǎn)使用代碼1-19中代碼安裝NTP服務(wù)。代碼1-19安裝NTP服務(wù)yuminstall-yntpdateyuminstall-yntpntpdate服務(wù)安裝成功的效果如圖1-69所示。圖1-69ntpdate服務(wù)安裝3.5集群時間同步設(shè)置NTP服務(wù)安裝成功的效果如圖1-70所示。使用代碼1-20中代碼在三各節(jié)點(diǎn)啟動時間同步服務(wù)。代碼1-20啟動NTP服務(wù)systemctlstartntpd#啟動時間同步程序systemctlenablentpd#允許時間同步程序開機(jī)啟動圖1-70NTP服務(wù)安裝3.5集群時間同步設(shè)置設(shè)置master節(jié)點(diǎn)作為時間同步服務(wù)器,使用代碼1-21中代碼修改/etc/ntp.conf文件。代碼1-21master節(jié)點(diǎn)修改NTP配置文件vi/etc/ntp.conf在publicservers章節(jié)下添加“server”內(nèi)容表示設(shè)置服務(wù)器為其本地節(jié)點(diǎn);在access節(jié)下添加“restrict”內(nèi)容,表示新增加一個restrict段為可以接受服務(wù)的網(wǎng)段,本例為,效果如圖1-71所示。圖1-71master節(jié)點(diǎn)ntp.conf文件修改內(nèi)容3.5集群時間同步設(shè)置ntp.conf文件修改后保存退出,使用如代碼1-22所示代碼重新啟動NTP服務(wù),并查看其服務(wù)狀態(tài),效果如圖1-72所示。代碼1-22重啟NTP服務(wù)systemctlrestartntpd#啟動時間同步程序systemctlstatusntpd#查看時間同步程序狀態(tài)圖1-72master節(jié)點(diǎn)ntp服務(wù)狀態(tài)3.5集群時間同步設(shè)置slave1和slave2作為時間同步客戶端來同步master服務(wù)器的時間,在slave1和slave2節(jié)點(diǎn)中使用如代碼1-23所示代碼編輯/etc/ntp.conf。代碼1-23slave1和slave2節(jié)點(diǎn)修改NTP配置文件vi/etc/ntp.conf在server下面添加一個時間同步服務(wù)器地址,本例為“81”(master節(jié)點(diǎn)的IP),效果如圖1-73所示。圖1-73Slave節(jié)點(diǎn)ntp.conf文件修改內(nèi)容3.5集群時間同步設(shè)置在slave1和slave2中使用代碼1-24中代碼同步服務(wù)器的時間。代碼1-24同步服務(wù)器的時間ntpdate81slave1上同步效果如圖1-74所示,表示設(shè)置成功,slave2上類似。使用代碼1-25中代碼在所有的節(jié)點(diǎn)上啟動時間同步功能。代碼1-25啟動時間同步timedatectlset-ntpyes圖1-74Slave節(jié)點(diǎn)同步時間效果3.6Java環(huán)境安裝由于Hadoop官方推薦使用SUNJDK,在配置新的Java環(huán)境前,需要檢查CentOS操作系統(tǒng)是否有自帶的openJDK,如果有需要先卸載。使用rpm軟件包管理工具,可以使用“-qa”參數(shù)表示查詢已安裝的軟件,“|grepjava”表示顯示安裝的Java環(huán)境。使用代碼1-26命令進(jìn)行查詢,效果如圖1-4所示。代碼1-26查詢自帶JDKrpm-qa|grepjava圖1-4沒有自帶JDK3.6Java環(huán)境安裝如果效果如圖1所示,則表示沒有自帶JDK,請?zhí)^下面的步驟直接進(jìn)入步驟2。如果顯示有JDK列表,則需要先刪除相應(yīng)的軟件包,例如,如果執(zhí)行代碼1-26后結(jié)果顯示“java-1.8.0-openjdk-headless-31-11.b12.el7.x86_64”,則使用rpm工具刪除相關(guān)軟件包,執(zhí)行代碼1-27中的命令,其中-e表示刪除軟件包,--nodeps表示忽略依賴性強(qiáng)制刪除,第一行后面的斜杠表示命令換行,如果命令全在一行內(nèi)可不要斜杠。代碼1-27刪除自帶JDKrpm-e--nodeps\java-1.8.0-openjdk-headless-31-11.b12.el7.x86_643.6Java環(huán)境安裝JDK安裝包需要在Oracle官網(wǎng)下載,本手冊采用的Hadoop3.1.4所需要的JDK版本為JDK8以上,這里采用的安裝包為jdk-8u281-Linux-x64.tar.gz,在本項(xiàng)目的1.2.3小節(jié)中已經(jīng)通過Xftp工具上傳到master節(jié)點(diǎn)的/root/目錄下,查看JDK組件包如圖1-75所示。圖1-75查看JDK組件包3.6Java環(huán)境安裝解壓安裝用tar命令,參數(shù)-zxvf表示指定要解壓的文件同時顯示解壓過程,具體含義如表1-5所示,后續(xù)解壓安裝均使用該命令和參數(shù),后面不再解釋。表1-5tar參數(shù)含義參數(shù)含義tarLinux壓縮/解壓縮-z代表gzip,使用gzip進(jìn)行壓縮或解壓-x代表extract,解壓文件(壓縮文件是-c)-v代表verbose,顯示解壓過程(文件列表)-f代表file,指定要解壓的文件名(或要壓縮成的文件名)3.6Java環(huán)境安裝使用代碼1-28中的命令,將安裝包解壓到/usr/local/src目錄下。代碼1-28解壓安裝包tar-zxvf/root/jdk-8u281-Linux-x64.tar.gz-C/usr/local/src解壓完成后,使用代碼1-29中的命令查看目錄確認(rèn)一下。效果如圖1-76所示,可以看出JDK安裝在/usr/local/src/jdk1.8.0_281目錄中。代碼1-29查看解壓文件夾cd/usr/local/srcls
圖1-76查看文件夾3.6Java環(huán)境安裝由于Java這個文件夾帶有版本號,不利于后續(xù)配置信息的編輯,使用mv命令可以修改文件或文件夾的名稱,使用代碼1-30的命令修改文件夾名稱為java,效果如圖1-77所示。代碼1-30修改Java文件夾cd/usr/local/src/mvjdk1.8.0_281javals圖1-77修改Java文件夾效果3.6Java環(huán)境安裝為了可以在任何目錄下直接執(zhí)行Java的相關(guān)命令,可以在環(huán)境變量文件中添加Java的安裝環(huán)境變量。在Linux中設(shè)置環(huán)境變量的方法比較多,較常見的有兩種:第一種是/etc/profile配置文件,配置結(jié)果對整個系統(tǒng)有效,系統(tǒng)所有用戶都可以使用;第二種是/root/.bashprofile配置文件,配置結(jié)果僅對當(dāng)前用戶有效。本手冊使用第二種方法,是為了和大數(shù)據(jù)技術(shù)相關(guān)考證與相關(guān)大數(shù)據(jù)比賽中的要求一致。3.6Java環(huán)境安裝修改環(huán)境變量文件如代碼1-31所示。代碼1-31編輯環(huán)境配置文件vi/root/.bash_profile將如表1-6所示的配置信息添加到/root/.bash_profile文件的末尾,保存退出。表1-6環(huán)境變量文件的添加內(nèi)容#JAVA_HOME指向Java安裝目錄exportJAVA_HOME=/usr/local/src/javaexportPATH=$PATH:$JAVA_HOME/bin3.6Java環(huán)境安裝在master節(jié)點(diǎn)上運(yùn)行如代碼1-32所示的命令,使master節(jié)點(diǎn)上配置的Java的環(huán)境變量生效。代碼1-32master節(jié)點(diǎn)生效配置文件source/root/.bash_profile3.6Java環(huán)境安裝在Slave節(jié)點(diǎn)安裝JDK只需要將master節(jié)點(diǎn)上安裝的文件夾和環(huán)境變量文件進(jìn)行分發(fā)到Slave節(jié)點(diǎn),并分別使環(huán)境變量文件生效即可。將master上安裝好的java文件夾內(nèi)容和配置好的環(huán)境變量文件分別分發(fā)到slave1和slave2節(jié)點(diǎn),分發(fā)命令,如代碼1-33所示。代碼1-33分發(fā)Java環(huán)境到Slave節(jié)點(diǎn)scp-r/usr/local/src/javaslave1:/usr/local/src/scp-r/usr/local/src/javaslave2:/usr/local/src/scp/root/.bash_profileslave1:/root/
scp/root/.bash_profileslave2:/root/在兩個Slave節(jié)點(diǎn)上運(yùn)行如代碼1-34所示的命令,使每個節(jié)點(diǎn)上配置的Java的環(huán)境變量生效。代碼1-34Slave節(jié)點(diǎn)生效配置文件source/root/.bash_profile3.6Java環(huán)境安裝可以在各節(jié)點(diǎn)種通過代碼1-35中的命令查看Java安裝的版本來驗(yàn)證是否安裝成功,三個節(jié)點(diǎn)均需要安裝成功才表示集群的JDK環(huán)境配置成功。代碼1-35測試Java安裝版本java-version在master節(jié)點(diǎn)正常顯示Java版本為“javaversion"1.8.0_281"”,則說明JDK安裝并配置成功,如圖1-78所示。圖1-78master安裝JDK成功圖3.6Java環(huán)境安裝在slave1節(jié)點(diǎn)正常顯示Java版本為“javaversion"1.8.0_281"”,則說明JDK安裝并配置成功,如圖1-79所示。圖1-79slave1安裝JDK成功圖在slave2節(jié)點(diǎn)正常顯示Java版本為“javaversion"1.8.0_281"”,則說明JDK安裝并配置成功,如圖1-80所示。至此,完成了Hadoop集群的基礎(chǔ)環(huán)境配置。圖1-80slave2安裝JDK成功圖謝謝Hadoop完全分布式集群搭建任務(wù)描述Hadoop可以按如下3種模式進(jìn)行安裝和運(yùn)行。(1)單機(jī)模式:Hadoop的默認(rèn)模式,安裝時不需要修改配置文件。(2)偽分布式模式:Hadoop安裝在一臺計(jì)算機(jī)上,需要修改相應(yīng)的配置文件,用一臺計(jì)算機(jī)模擬多臺主機(jī)的集群。(3)完全分布式模式:在多臺計(jì)算機(jī)上安裝JDK和Hadoop,組成相互連通的集群,需要修改相應(yīng)的配置文件;Hadoop的守護(hù)進(jìn)程運(yùn)行在由多臺主機(jī)搭建的集群上。本任務(wù)為Hadoop完全分布式模式的安裝與配置,請讀者自行實(shí)踐Hadoop單機(jī)模式和偽分布式模式的安裝與配置。任務(wù)描述Hadoop集群的搭建要涉及到多臺機(jī)器,而在日常學(xué)習(xí)和個人開發(fā)測試過程中,這顯然是不可行的,為此,在本手冊的項(xiàng)目1中,我們已經(jīng)使用虛擬機(jī)軟件在同一臺電腦上構(gòu)建3個Linux虛擬機(jī)環(huán)境,分別為master、slave1和slave2三個節(jié)點(diǎn),并且在3個節(jié)點(diǎn)完成了基礎(chǔ)環(huán)境的配置,安裝和配置好了JDK的環(huán)境,所以本項(xiàng)目中,直接開始搭建和配置Hadoop的完全分布式集群。本項(xiàng)目規(guī)劃的Hadoop集群包含一臺Master節(jié)點(diǎn)和兩臺Slave節(jié)點(diǎn),其集群節(jié)點(diǎn)信息如圖2-1所示。在任務(wù)實(shí)施中的操作,除非特別說明,默認(rèn)表示在master節(jié)點(diǎn)進(jìn)行操作。圖2-1集群節(jié)點(diǎn)圖任務(wù)分析截止本教材成書時,目前流行的Hadoop版本有2.7.x和3.x.x,其中2.7.x版本主要在各種職業(yè)技能競賽平臺和考證平臺應(yīng)用,3.x主要用在企業(yè)項(xiàng)目的大數(shù)據(jù)應(yīng)用與開發(fā)中,本手冊為了讀者適應(yīng)技術(shù)發(fā)展的需求,僅演示安裝與配置Hadoop3.1.4版本的完全分布式模式,Hadoop2.7.x版本的配置請讀者自行操作。2.1.1Hadoop3.1.4的安裝與配置1.解壓安裝文件使用tar命令解壓Hadoop到/usr/local/src文件夾,并切換到安裝目錄下查看,可以使用ls查看解壓后的效果,如代碼2-1所示,運(yùn)行結(jié)果如圖2-3所示。代碼2-1解壓安裝包tar-zxvf/root/hadoop-3.1.4.tar.gz-C/usr/local/src/cd/usr/local/src/lstar使用-zvxf參數(shù)解壓是為了能看到解壓進(jìn)度,如果不需要查看可以使用-zxf參數(shù)解壓。圖2-2查看安裝包圖2-3查看解壓好的安裝包2.修改文件夾名稱由于解壓后的文件夾名稱帶有比較復(fù)雜的版本號,為了簡化后續(xù)配置,此處修改文件夾名稱。使用mv命令將解壓的hadoop-3.1.4目錄重命名為hadoop,如代碼2-2所示,效果如圖2-3所示。代碼2-2重命名文件夾cd/usr/local/src/mvhadoop-3.1.4hadoop圖2-3重命名文件夾3.修改環(huán)境變量文件為了可以在任何目錄下直接執(zhí)行Hadoop的相關(guān)命令,可以在環(huán)境變量文件中添加Hadoop的環(huán)境變量。項(xiàng)目1已經(jīng)說明過,本手冊在/root/.bash_profile(對當(dāng)前用戶有效)文件操作,修改環(huán)境變量文件如代碼2-3所示。代碼2-3編輯環(huán)境配置文件vi/root/.bash_profile將如表2-1所示的配置信息添加到/root/.bash_profile文件的末尾,保存退出。表2-1環(huán)境變量文件的添加內(nèi)容#sethadoopenvironmentexportHADOOP_HOME=/usr/local/src/hadoopexportPATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH#以下是Hadoop3.x版本新增的配置項(xiàng)exportHDFS_NAMENODE_USER=rootexportHDFS_DATANODE_USER=rootexportHDFS_SECONDARYNAMENODE_USER=rootexportYARN_RESOURCEMANAGER_USER=rootexportYARN_NODEMANAGER_USER=root4.修改hadoop-env.sh和yarn-env.sh配置文件從這里開始需要修改hadoop配置文件夾中的相關(guān)配置文件,需要配置的文件在/usr/local/src/hadoop/etc/hadoop文件夾下,圖中圈住的是本任務(wù)中需要配置的文件,其中workers文件在2.7.x版本中對應(yīng)的是slaves文件,如圖2-4所示。圖2-4Hadoop3.1.4需要修改的配置文件4.修改hadoop-env.sh和yarn-env.sh配置文件在hadoop-env.sh文件中需要設(shè)置JAVA_HOME的安裝目錄,目的是讓Hadoop啟動時能夠執(zhí)行守護(hù)進(jìn)程,使用如代碼2-4所示的命令修改該文件。代碼2-4修改hadoop-env.sh文件cd/usr/local/src/hadoop/etc/hadoopvihadoop-env.sh在文件中找到JAVA_HOME的配置項(xiàng),如圖2-5所示。將圖中的配置項(xiàng)前面的#去掉,修改內(nèi)容為如表2-2所示。參考以上方法,使用“viyarn-env.sh”修改配置文件yarn-env.sh中的JAVA_HOME的配置項(xiàng)。表2-2配置文件的修改內(nèi)容圖2-5hadoop-env.sh文件修改內(nèi)容exportJAVA_HOME=/usr/local/src/java#此處路徑為JDK的安裝目錄5.配置core-site.xml文件參數(shù)core-site.xml文件是Hadoop的核心配置文件,其目的是配置HDFS地址、端口號,以及臨時文件夾的目錄。參考上一步執(zhí)行“vicore-site.xml”命令打開該文件,在文件中<configuration>和</configuration>一對標(biāo)簽之間追加配置信息,如表2-3所示,保存退出。表2-3core-site.xml配置文件的修改內(nèi)容<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value></property><property>
<name>io.file.buffer.size</name>
<value>131072</value></property><property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/src/hadoop/tmp</value></property>
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>5.配置core-site.xml文件參數(shù)修改中涉及到的配置項(xiàng)值對比,如表2-4所示。表2-4core-site.xml配置文件主要參數(shù)解釋序號配置項(xiàng)默認(rèn)值修改值1fs.defaultFSfile:///hdfs://master:90002io.file.buffer.size40961310723hadoop.tmp.dir/tmp/hadoop-${}file:/usr/local/src/hadoop/tmp4hadoop.http.staticuser.userdr.whoroot6.配置hdfs-site.xml文件參數(shù)hdfs-site.xml文件用于設(shè)置HDFS的NameNode和DataNode兩大進(jìn)程屬性,以及HDFS數(shù)據(jù)文件的副本數(shù),執(zhí)行“vihdfs-site.xml”命令打開該文件,在文件中<configuration>和</configuration>一對標(biāo)簽之間追加配置信息,如表2-5所示,保存退出。表2-5hdfs-site.xml配置文件的修改內(nèi)容<property> <name>.dir</name> <value>file:/usr/local/src/hadoop/dfs/name</value></property><property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/src/hadoop/dfs/data</value></property><property><name>dfs.replication</name> <value>2</value></property><property> <name>node.secondary.http-address</name> <value>master:50090</value></property>6.配置hdfs-site.xml文件參數(shù)修改中涉及到的配置項(xiàng)值對比,如表2-6所示。表2-6core-site.xml配置文件主要參數(shù)序號配置項(xiàng)默認(rèn)值修改值1.dirfile://${hadoop.tmp.dir}/dfs/namefile:/usr/local/src/hadoop/dfs/name2dfs.datanode.data.dirfile://${hadoop.tmp.dir}/dfs/datafile:/usr/local/src/hadoop/dfs/data3.replication324node.secondary.http-address:9868master:500907.配置mapred-site.xml文件參數(shù)mapred-site.xml是MapReduce的核心配置文件,用于指定MapReduce運(yùn)行時的框架屬性。執(zhí)行“vihdfs-site.xml”命令打開該文件,在文件中<configuration>和</configuration>一對標(biāo)簽之間追加配置信息,如表2-7所示,保存退出。表2-7mapred-site.xml配置文件的修改內(nèi)容<property> <name></name> <value>yarn</value></property><property> <name>mapreduce.jobhistory.address</name> <value>master:10020</value></property><property> <name>mapreduce.jobhistory.webapp.address</name> <value>master:19888</value></property>7.配置mapred-site.xml文件參數(shù)修改中涉及到的配置項(xiàng)值對比,如表2-8所示。表2-8mapred-site.xml配置文件主要參數(shù)序號配置項(xiàng)默認(rèn)值修改值1localyarn2mapreduce.jobhistory.address:10020master:100203mapreduce.jobhistory.webapp.address:19888master:198888.配置yarn-site.xml文件參數(shù)yarn-site.xml是YARN框架的核心配置文件,需要指定YARN集群的管理者等屬性。執(zhí)行“viyarn-site.xml”命令打開該文件,在文件中<configuration>和</configuration>一對標(biāo)簽之間追加配置信息,如表2-9所示,保存退出。表2-9yarn-site.xml配置文件的部分修改內(nèi)容<property> <name>yarn.resourcemanager.hostname</name> <value>master</value></property><property> <name>yarn.resourcemanager.address</name> <value>master:8032</value></property>...省略...<property><name>yarn.application.classpath</name> <value>/usr/local/src/hadoop/etc/hadoop:/usr/local/src/hadoop/share/hadoop/common/lib/*:/usr/local/src/hadoop/share/hadoop/common/*:/usr/local/src/hadoop/share/hadoop/hdfs:/usr/local/src/hadoop/share/hadoop/hdfs/lib/*:/usr/local/src/hadoop/share/hadoop/hdfs/*:/usr/local/src/hadoop/share/hadoop/mapreduce/lib/*:/usr/local/src/hadoop/share/hadoop/mapreduce/*:/usr/local/src/hadoop/share/hadoop/yarn:/usr/local/src/hadoop/share/hadoop/yarn/lib/*:/usr/local/src/hadoop/share/hadoop/yarn/*</value></property>8.配置yarn-site.xml文件參數(shù)修改中涉及到的主要配置項(xiàng)值對比(該文件在2.7.x版本中內(nèi)容有差異),如表2-10所示。表2-10yarn-site.xml配置文件主要參數(shù)序號配置項(xiàng)默認(rèn)值修改值1yarn.resourcemanager.address:8032master:80322yarn.resourcemanager.scheduler.address:8030master:80303yarn.resourcemanager.resource-tracker.address:8031master:80314yarn.resourcemanager.admin.address:8033master:80335yarn.resourcemanager.webapp.address:8088master:80886yarn.nodemanager.aux-services無mapreduce_shuffle9.配置從節(jié)點(diǎn)文件在“/usr/local/src/hadoop/etc/hadoop”目錄下有一個workers文件,該文件記錄集群中所有從節(jié)點(diǎn)(HDFS的DataNode和YARN的NodeManger所在的主機(jī)),用來配合一鍵啟動腳本時啟動集群中的所有從節(jié)點(diǎn)。使用“viworkers”在文件中追加配置信息,如表2-11所示,該文件中原有“l(fā)ocalhost”內(nèi)容,可以保留“l(fā)ocalhost”讓master節(jié)點(diǎn)同時充當(dāng)名稱節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn),或刪掉“l(fā)ocalhost”這行,讓master節(jié)點(diǎn)僅作為名稱節(jié)點(diǎn)使用,保存退出。請注意:workers文件中添加的內(nèi)容結(jié)尾不允許有空格,文件中不允許有空行。表2-11workers配置文件的修改內(nèi)容slave1slave210.創(chuàng)建文件目錄由于在前面的配置文件中配置Hadoop集群的臨時文件夾以及相關(guān)的NameNode和DataNode的文件路徑,需要創(chuàng)建這些文件夾,使用如代碼2-5所示的命令創(chuàng)建目錄,并查看文件屬性,運(yùn)行結(jié)果如圖2-6所示。代碼2-5創(chuàng)建文件夾文件cd/usr/local/src/hadoopmkdir/usr/local/src/hadoop/tmpmkdir/usr/local/src/hadoop/tmp/dfs/name-pmkdir/usr/local/src/hadoop/tmp/dfs/data-pll圖2-6查看創(chuàng)建好的文件夾11.同步配置文件到Slave節(jié)點(diǎn)將master上配置好的hadoop文件夾內(nèi)容和環(huán)境變量文件分別分發(fā)到slave1和slave2節(jié)點(diǎn)。由于在項(xiàng)目1中已經(jīng)進(jìn)行了SSH免密配置,所以在分發(fā)中可以不再需要驗(yàn)證訪問節(jié)點(diǎn)的用戶密碼。使用如代碼2-6所示的命令進(jìn)行分發(fā)。代碼2-6分發(fā)Hadoop環(huán)境到Slave節(jié)點(diǎn)scp-r/usr/local/src/hadoopslave1:/usr/local/src/scp-r/usr/local/src/hadoopslave2:/usr/local/src/scp/root/.bash_profileslave1:/root/scp/root/.bash_profileslave2:/root/12.生效用戶環(huán)境變量文件在每個節(jié)點(diǎn)上運(yùn)行如代碼2-7所示的命令,使每個節(jié)點(diǎn)上配置的Hadoop的環(huán)境變量生效。代碼2-7生效環(huán)境變量文件source/root/.bash_profile13.測試Hadoop安裝情況可以使用“hadoopversion”命令查看安裝的Hadoop版本信息,如圖2-7所示,則表示安裝Hadoop3.1.4成功。圖2-7Hadoop安裝版本信息圖謝謝Hadoop集群運(yùn)行任務(wù)描述Hadoop提供了分布式集群的框架,可以高效運(yùn)行在計(jì)算機(jī)上,用于大數(shù)據(jù)的處理分析,其中的兩個核心功能為MapReduce和HDFS。本節(jié)學(xué)習(xí)如何管理Hadoop集群,并查看集群運(yùn)行的情況和狀態(tài)。任務(wù)分析本節(jié)講解Hadoop完全分布式集群的格式化和啟動關(guān)閉操作,特別對于Hadoop集群中的核心功能YARN和HDFS的進(jìn)程如何進(jìn)行啟動和關(guān)閉,以及運(yùn)行情況進(jìn)行詳細(xì)的操作演示。2.2.1NameNode格式化NameNode格式化第一次啟動HDFS時要進(jìn)行格式化,將NameNode上的數(shù)據(jù)清零,否則會缺失DataNode進(jìn)程。以后啟動無需再格式化,只要運(yùn)行過Hadoop集群,其工作目錄(本書設(shè)置為/usr/local/src/hadoop/tmp)中就會有數(shù)據(jù),如果需要重新格式化,則在重新格式化之前一定要先刪除工作目錄下的數(shù)據(jù),否則格式化時會出問題,并會缺失DataNode進(jìn)程。在master節(jié)點(diǎn)進(jìn)行格式化,如代碼2-8所示。代碼2-8格式化NameNodehdfsnamenode-formatNameNode格式化格式化的過程比較長,一般大概需要花1分鐘左右,格式化的過程也會在屏幕上不斷刷新,等待格式化完畢,Hadoop3.1.4版本成功后會提示格式化成功信息,頁面最后一段截圖如圖2-8所示(在2.7.x版本中提示有差異)。圖2-3查看解壓好的安裝包2.2.2啟動和關(guān)閉Hadoop集群1.腳本一鍵啟動啟動集群可以使用腳本一鍵啟動,前提是需要配置好從節(jié)點(diǎn)配置文件和SSH免密登錄配置。本小節(jié)針對Hadoop3.1.4版本操作,在master節(jié)點(diǎn)啟動HDFS、YARN進(jìn)程和historyserver服務(wù),啟動后可以分別在master和slave1節(jié)點(diǎn)使用“jps”查看Java進(jìn)程,如代碼2-11所示。代碼2-11一鍵啟動start-dfs.shstart-yarn.shmr-jobhistory-daemon.shstarthistoryserverjps1.腳本一鍵啟動Master節(jié)點(diǎn)的Java進(jìn)程列表,如圖2-11所示。圖2-11masterJava進(jìn)程slave1節(jié)點(diǎn)的Java進(jìn)程列表,如圖2-12所示。圖2-12slave1節(jié)點(diǎn)進(jìn)程2.腳本直接啟動也可以在master節(jié)點(diǎn)使用start-all.sh直接啟動整個Hadoop集群。2.2.3使用瀏覽器查看節(jié)點(diǎn)狀態(tài)使用瀏覽器查看節(jié)點(diǎn)狀態(tài)Hadoop集群啟動后,通過UI可以方便進(jìn)行集群的管理與查看,只需要在本地操作系統(tǒng)中的瀏覽器中輸入集群服務(wù)器的節(jié)點(diǎn)名稱(或IP)和相對應(yīng)的端口號即可訪問。在Windows系統(tǒng)瀏覽器的地址欄輸入http://master:9870(2.7.x版本為:http://master:50070),如果網(wǎng)頁打不開,可以用master的ip地址代替master嘗試,進(jìn)入頁面可以查看NameNode和DataNode信息,如圖2-13所示。圖2-13HDFS系統(tǒng)Web瀏覽使用瀏覽器查看節(jié)點(diǎn)狀態(tài)可以通過瀏覽上面的導(dǎo)航欄查看其他的信息,此處不再詳述。在Windows系統(tǒng)瀏覽器的地址欄輸入;在Windows系統(tǒng)瀏覽器的地址欄輸入http://master:8088(2.7.x版本為:http://master:50090),進(jìn)入頁面可以查看SecondaryNameNode信息,如圖2-14所示。說明:如果配置正確,但是網(wǎng)頁不能正確顯示,請將master改用IP地址再嘗試,如果改為IP地址可以訪問,則可能是項(xiàng)目1中1.3.3小節(jié)配置的Windows系統(tǒng)中的虛擬機(jī)集群的IP地址映射信息出錯,請讀者核實(shí)。圖2-14資源管理器信息Web瀏覽謝謝HadoopJavaAPI讀取序列化日志文件任務(wù)描述現(xiàn)有一份202
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024至2030年中國厚料儀器數(shù)據(jù)監(jiān)測研究報(bào)告
- 2024年天津市中考語文試題含答案
- 2024年中國玻璃鋼模壓制品市場調(diào)查研究報(bào)告
- 2024年中國注塑網(wǎng)板市場調(diào)查研究報(bào)告
- 2012年事業(yè)單位考試公共基礎(chǔ)知識單選題題庫
- 2024年中國散熱器手動調(diào)節(jié)閥市場調(diào)查研究報(bào)告
- 電影節(jié)安保工作總結(jié)與經(jīng)驗(yàn)分享計(jì)劃
- 村級公路損壞修復(fù)協(xié)議書
- 合理安排會計(jì)工作時間表計(jì)劃
- 北京技術(shù)合同登記實(shí)務(wù)
- GB/T 22882-2008排球
- FZ/T 93048.2-2021針刺機(jī)用針第2部分:叉形針
- FZ/T 01101-2008紡織品纖維含量的測定物理法
- 2023年北京地區(qū)成人本科學(xué)士學(xué)位英語考試真題及參考答案
- 運(yùn)輸供應(yīng)商年度評價(jià)表
- 消防安全宣傳培訓(xùn)制度(5篇)
- 沖壓工藝培訓(xùn)學(xué)習(xí)資料(非常全面)課件
- 電信服務(wù)禮儀課件
- 牛皮癬清理辦法
- 傳承·創(chuàng)新·引領(lǐng):共同體推動語文課堂教學(xué)改革探索
- 清華大學(xué)本科生各專業(yè)培養(yǎng)方案
評論
0/150
提交評論