版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Hadoop云計(jì)算平臺(tái)及相關(guān)組件搭建安裝過(guò)程詳細(xì)教程——Hbase+Pig+Hive+Zookeeper+Ganglia+Chukwa+Eclipse等一.安裝環(huán)境簡(jiǎn)介根據(jù)官網(wǎng),Hadoop已在linux主機(jī)組成的集群系統(tǒng)上得到驗(yàn)證, 而windows平臺(tái)是作為開(kāi)發(fā)平臺(tái)支持的, 由于分布式操作尚未在 windows平臺(tái)上充分測(cè)試,所以還不作為一個(gè)生產(chǎn)平臺(tái)。
Windows
下還需要安裝
Cygwin,Cygwin是在
windows
平臺(tái)上運(yùn)行的UNIX模擬環(huán)境,提供上述軟件之外的
shell
支持。實(shí)際條件下在 windows系統(tǒng)下進(jìn)行 Hadoop偽分布式安裝時(shí),出現(xiàn)了許多未知問(wèn)題。在linux系統(tǒng)下安裝,以偽分布式進(jìn)行測(cè)試, 然后再進(jìn)行完全分布式的實(shí)驗(yàn)環(huán)境部署。Hadoop完全分布模式的網(wǎng)絡(luò)拓補(bǔ)圖如圖六所示:(1) 網(wǎng)絡(luò)拓補(bǔ)圖如六所示:圖六完全分布式網(wǎng)絡(luò)拓補(bǔ)圖(2) 硬件要求:搭建完全分布式環(huán)境需要若干計(jì)算機(jī)集群, Master和Slaves處理器、內(nèi)存、硬盤等參數(shù)要求根據(jù)情況而定。(3) 軟件要求操作系統(tǒng)64位JDK版本:NO.ProjectVersionContent1HardwareenviCPU:Intel2.00GHzMaster/NameNodeIPronmentDisk:150GBSlave1/DataNodeIPMemory:2.00GBSlave2/DataNodeIP2OperationsystUbuntu-12.0464-bitem3JDK/usr/bin/jvm4Hadoop/home/majiangbo/hadoop-1.2.15Zookeeper/home/majiangbo6HBaseHbase-0.94.20.tar.gz/home/majiangbo94.207Pig/home/majiangbo8Hive/home/majiangbo9Ganglia/home/majiangbo10EclipseEclipsestandard4.3.2/home/majiangbo/eclipse11HadoopforeclH/home/majiangbo/eclipse/pluginsipseplugin12Chukwa(可選)并且所有機(jī)器均需配置 SSH免密碼登錄。二.Hadoop集群安裝部署目前,這里只搭建了一個(gè)由三臺(tái)機(jī)器組成的小集群,在一個(gè) hadoop集群中有以下角色:Master和Slave、JobTracker和TaskTracker、NameNode和DataNode。下面為這三臺(tái)機(jī)器分配IP地址以及相應(yīng)的角色:——master,namenode,jobtracker——master(主機(jī)名)——slave,datanode,tasktracker——slave1(主機(jī)名)——slave,datanode,tasktracker——slave2(主機(jī)名)實(shí)驗(yàn)環(huán)境搭建平臺(tái)如圖七所示:圖七h(yuǎn)adoop集群實(shí)驗(yàn)平臺(tái)并且,Hadoop要求集群上每臺(tái)的用戶賬戶名和密碼相同。具體安裝步驟如下:下載和安裝JDK,版本為(1)JDK的安裝目錄為/usr/lib/jvm,創(chuàng)建此文件夾,在終端輸入命令:mkdir/usr/lib/jvm(2) 權(quán)限不夠的話重新改下用戶密碼就可以了,命令 :sudopasswd,之后重新輸入密碼。(3) 移動(dòng)jdk到/usr/lib/jvm ,并解壓,然后為了節(jié)省空間刪除安裝包。命令 :mvjdk/usr/lib/jvmtar–zxvfjdkrm–rfjdk配置環(huán)境變量在終端輸入命令:sudogedit/etc/profile打開(kāi)profile文件,在文件最下面輸入如下內(nèi)容,如圖八所示:圖八JAVA環(huán)境變量設(shè)置即為:#setjavaenvironmentexportJAVA_HOME=/usr/lib/jvmexportCLASSPATH=”.:$JAVA_HOME/lib:$CLASSPATH ”exportPATH=”$JAVA_HOME/:$PATH”這一步的意義是配置環(huán)境變量,使系統(tǒng)可以找到 jdk。驗(yàn)證JDK是否安裝成功(1)輸入命令:java–version,如圖九所示。如果出現(xiàn)java版本信息,說(shuō)明當(dāng)前安裝的jdk并未設(shè)置成ubuntu系統(tǒng)默認(rèn)的jdk,接下來(lái)還需要手動(dòng)將安裝的jdk設(shè)置成系統(tǒng)默認(rèn)的jdk。圖九java版本信息(2) 手動(dòng)設(shè)置需輸入以下命令:sudoupdate-alternatives–install/usr/bin/javajava/usr/lib/jvm300sudoupdate-alternatives–install/usr/bin/javacjavac/usr/lib/jvmjavac300sudoupdate-alternatives–configjava然后輸入 java–version就可以看到所安裝的 jdk的版本信息。三臺(tái)主機(jī)上分別設(shè)置/etc/hosts和/etc/hostnameHosts這個(gè)文件用于定義主機(jī)名和IP地址之間的對(duì)應(yīng)關(guān)系,而hostname這個(gè)文件用于定義你的Ubuntu的主機(jī)名。(1)修改/etc/hosts,命令sudogedit/etc/hostslocalhostmasterslave1slave2(2) 修改/etc/hostname,命令sudogedit/etc/hostname(修改完重啟有效 )master以及slave1,slave2在這兩臺(tái)主機(jī)上安裝OpenSSH,并配置SSH可以免密碼登錄(1)確認(rèn)已經(jīng)連接上網(wǎng),輸入命令:sudoapt-getinstallssh(2) 配置為可以免密碼登錄本機(jī),接下來(lái)輸入命令:ssh-keygen–tdsa–P‘’f~/.ssh/id–_dsa解釋一下,ssh-keygen代表生成密匙, -t表示指定生成的密匙類型, dsa是密匙認(rèn)證的意思, 即密匙類型,-P用于提供密語(yǔ),-f指定生成的密匙文件。這個(gè)命令會(huì)在 .ssh文件夾下創(chuàng)建 id_dsa以及id_dsa.pub兩個(gè)文件,這是ssh一對(duì)私匙和公匙,把 id_dsa.pub追加到授權(quán)的 key中。輸入命令:cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys(3) 驗(yàn)證ssh是否已經(jīng)安裝成功,輸入命令: ssh–version。將文件復(fù)制到 slave主機(jī)相同的文件夾內(nèi),輸入命令:scpauthorized_keysslave1:~/.ssh/scpauthorized_keysslave2:~/.ssh/4)看是否可以從master主機(jī)免密碼登錄slave,輸入命令:sshslave1sshslave2配置兩臺(tái)主機(jī)的Hadoop文件首先到Hadoop的官網(wǎng)下載包,默認(rèn)講Hadoop解壓到/home/u(你的Ubuntu用戶名)目錄下1)進(jìn)入hadoop內(nèi)的conf文件夾,找到hadoop-env.sh,修改:exportJAVA_HOME=/usr/lib/jvm,指定JDK的安裝位置,如圖十所示:圖十JAVA_HOME路徑設(shè)置(2) 修改core-site.xml,這是Hadoop的核心配置文件, 這里配置的是 HDFS的地址及端號(hào):<configuration><property><value></property><property><name></name><value>/tmp</value></configuration>3)修改hdfs-site.xml<configuration><property><name>dfs.replication</name><value>2</value></property></configuration>4)修改mapred-site.xml<configuration><property><name></name><value>master:9001</value></property></configuration>5)修改conf/mastersmaster6)修改conf/slavesslave1slave2啟動(dòng)hadoop在啟動(dòng)之前,需要格式化hadoop的文件系統(tǒng)HDFS,進(jìn)入hadoop文件夾,輸入命令格式化:bin/hadoopnamenode–format,如圖十一所示:圖十一hadoop格式化輸入命令,啟動(dòng)所有進(jìn)程: bin/start-all.sh,如圖十二所示:圖十二hadoop啟動(dòng)信息查看是否所有進(jìn)程啟動(dòng),輸入命令: jps,如圖十三所示:圖十三jps查看進(jìn)程最后驗(yàn)證hadoop是否成功啟動(dòng)打開(kāi)瀏覽器,查看機(jī)器集群狀態(tài)分別輸入網(wǎng)址:(1)輸入,如圖十四,可看到:圖十四namenode狀態(tài)點(diǎn)擊livenodes,可以看到當(dāng)前 slave1和slave2兩個(gè)節(jié)點(diǎn)信息,如圖十五:圖十五datanode節(jié)點(diǎn)狀態(tài)(2)輸入,如圖十六,可看到:圖十六jobtracker狀態(tài)點(diǎn)擊2nodes查看tasktracker信息,如圖十七:圖十七tasktracker狀態(tài)(3)輸入,如圖十八,可看到:圖十八task狀態(tài)也可以通過(guò)命令: hadoopdfsadmin–report查看停止hadoop進(jìn)程:bin/stop-all.sh如圖十九:圖十九停止 hadoop集群以上為hadoop完全分布式集群配置以上過(guò)程為由三臺(tái)計(jì)算機(jī)組成的完全分布式
Hadoop
集群,主要參考《
Hadoop
實(shí)戰(zhàn)-第二版》和《
Hadoop
權(quán)威指南》,主要講解了
Hadoop
的安裝和配置過(guò)程,關(guān)于更多Hadoop原理的知識(shí)不在詳述,如果在家在安裝的時(shí)候遇到問(wèn)題,或者按以上步驟安裝完成卻不能運(yùn)行Hadoop,建議查看Hadoop的日志信息,Hadoop記錄了詳盡的日志信息,日志文件保存的Hadoop/logs文件夾內(nèi)。三.其他組件安裝過(guò)程簡(jiǎn)介本Hadoop平臺(tái)搭建過(guò)程中安裝的組件及軟件環(huán)境主要包括以下內(nèi)容:NO.ProjectVersionContent1HardwareenviCPU:Intel2.00GHzMaster/NameNodeIPronmentDisk:150GBSlave1/DataNodeIPMemory:2.00GBSlave2/DataNodeIP2OperationsystUbuntu-12.0464-bitem3JDK/usr/bin/jvm4Hadoop/home/majiangbo/hadoop-1.2.15Zookeeper/home/majiangbo6HBaseHbase-0.94.20.tar.gz/home/majiangbo94.207Pig/home/majiangbo8Hive/home/majiangbo9Ganglia/home/majiangbo10EclipseEclipsestandard4.3.2/home/majiangbo/eclipse11HadoopforeclH/home/majiangbo/eclipse/pluginsipseplugin12Chukwa(可選)相關(guān)技術(shù)作以下介紹:Pig和HiveHive是一個(gè)基于 Hadoop文件系統(tǒng)之上的數(shù)據(jù)倉(cāng)庫(kù)架構(gòu),利用 Mapreduce編程技術(shù),實(shí)現(xiàn)了部分 SQL語(yǔ)句,提供了類SQL的編程接口,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫(kù)表,并提供完整的 SQL查詢功能可以將 SQL語(yǔ)句轉(zhuǎn)換為 Mapreduce任務(wù)進(jìn)行運(yùn)行,但是這樣在執(zhí)行時(shí)會(huì)出現(xiàn)延遲現(xiàn)象, 但能更好的處理不變的大規(guī)模數(shù)據(jù)集上的批量任務(wù)。此外, Hive的網(wǎng)絡(luò)接口可以方便直觀地對(duì)數(shù)據(jù)進(jìn)行操作,在命令行下,要執(zhí)行多個(gè)查詢就要打開(kāi)多個(gè)終端,而通過(guò)網(wǎng)絡(luò)結(jié)構(gòu)可以同時(shí)執(zhí)行多個(gè)查詢。配置Eclipse環(huán)境編寫 Hive程序Hive的優(yōu)化策略,針對(duì)不同的查詢進(jìn)行優(yōu)化,優(yōu)化過(guò)程通過(guò)配置進(jìn)行控制圖二十HiveWeb接口界面Pig提供了一個(gè)支持大規(guī)模數(shù)據(jù)分析的平臺(tái), Pig的基礎(chǔ)結(jié)構(gòu)層包括一個(gè)產(chǎn)生Mapreduce
程序的編譯器,能夠承受大量的并行任務(wù)。
PigLatin語(yǔ)言更側(cè)重于對(duì)數(shù)據(jù)的查詢和分析,而不是對(duì)數(shù)據(jù)進(jìn)行修改和刪除,建立在
Hadoop
分布式平臺(tái)之上,能夠在短時(shí)間內(nèi)處理海量的數(shù)據(jù),比如:系統(tǒng)日志文件,處理大型數(shù)據(jù)庫(kù)文件,處理特定web數(shù)據(jù)等。GangliaGanglia是UCBerkeley發(fā)起的一個(gè)開(kāi)源集群監(jiān)視項(xiàng)目, 用于測(cè)量數(shù)以千計(jì)的節(jié)點(diǎn)集群。核心包含兩個(gè) Daemon:客戶端 GangliaMonitoring(gmond)和服務(wù)端GangliaMeta(gmetad),以及一個(gè) web前端,主要監(jiān)控的系統(tǒng)性能有: CPU、memory、硬盤利用率、I/O負(fù)載、網(wǎng)絡(luò)流量情況等,可以幫助合理調(diào)整分配系統(tǒng)資源,優(yōu)化系統(tǒng)性。圖二十一 Ganglia監(jiān)控總界面圖二十二 Ganglia-cpu監(jiān)控界面圖二十三Ganglia-clustercpu監(jiān)控界面圖二十四 Ganglia-memory監(jiān)控界面圖二十五 Ganglia-network監(jiān)控界面HBase簡(jiǎn)單地說(shuō),hbase是一個(gè)分布式的、 面向列的開(kāi)源數(shù)據(jù)庫(kù), 不同于一般的關(guān)系數(shù)據(jù)庫(kù),是一個(gè)適合于非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)庫(kù)。 Hbase的核心是將數(shù)據(jù)抽象成表,表中只有rowkey和columnfamily,rowkey記錄的是主鍵,通過(guò)key/value很容易找到,column存儲(chǔ)實(shí)際的數(shù)據(jù)。<key1/value1>→<key2/value2>→<key3/value3>圖二十六 HBase架構(gòu)MahoutMahout是Apache的一個(gè)開(kāi)源的項(xiàng)目,基于 Hadoop平臺(tái)設(shè)計(jì)和開(kāi)發(fā)的算法工具庫(kù)。提供一些經(jīng)典的機(jī)器學(xué)習(xí)算法,包含聚類、分類、推薦引擎、頻繁子項(xiàng)挖掘。ApacheMahout主要包括以下部分 :頻繁模式挖掘:挖掘數(shù)據(jù)中頻繁出現(xiàn)的項(xiàng)集;聚類:將諸如文本、文檔之類的數(shù)據(jù)分成局部相關(guān)的組;分類:利用已經(jīng)存在的分類文檔訓(xùn)練分類器,對(duì)未分類的文檔進(jìn)行分離;推薦引擎(協(xié)同過(guò)濾):獲得用戶的行為并從中發(fā)現(xiàn)用戶可能喜歡的事物;頻繁子項(xiàng)挖掘:利用一個(gè)項(xiàng)集(查詢記錄或購(gòu)物記錄)去識(shí)別經(jīng)常一起出現(xiàn)的項(xiàng)目。Mahout的主要目標(biāo)是建立可伸縮的機(jī)器學(xué)習(xí)算法,這種可伸縮性是針對(duì)大規(guī)模的數(shù)據(jù)集而言的,Mahout的算法運(yùn)行在 ApacheHadoop平臺(tái)下,通過(guò) Mapreduce模式實(shí)現(xiàn),但是Mahout并不嚴(yán)格要求算法的實(shí)現(xiàn)要基于 Hadoop平臺(tái),單個(gè)節(jié)點(diǎn)或非 Hadoop平臺(tái)或Hadoop平臺(tái)也可以。 Mahout核心庫(kù)的非分布式算法也具有良好的性能。圖二十七 Mahout提供的算法Mahout中FPGrowth在Mapteduce模式下運(yùn)行過(guò)程及用時(shí):圖二十八 FPGrowth運(yùn)行過(guò)程及用時(shí)Mapreduce模式運(yùn)行過(guò)程中 runningjobs:圖二十九 MapReduce運(yùn)行過(guò)程中 runningjobs信息運(yùn)行結(jié)束后 Completedjobs信息:圖三十MapReduce運(yùn)行completedjobs信息FPGrowth運(yùn)行結(jié)束后 HDFScontent:圖三十一FPGrowth運(yùn)行后再HDFS的存儲(chǔ)目錄各個(gè)文件目錄的含義如下:打開(kāi)HDFS存儲(chǔ)文件,出現(xiàn)亂碼現(xiàn)象:圖三十二HDFS存儲(chǔ)下文件現(xiàn)象執(zhí)行完畢后,直接查看結(jié)果出現(xiàn)亂碼現(xiàn)象 ,是因?yàn)樯傻奈募恍蛄谢?,還需要用mahout還原回來(lái),命令如下:mahoutseqdumper-i/user/hadoop/patterns/fpgrowth/part-r-00000-o~/data/patterns.txtFPGrowth運(yùn)行結(jié)果要通過(guò)以下命令才能正常顯示在控制臺(tái):bin/mahoutseqdumper–s<path>圖三十三講 FPGrowth顯示在控制臺(tái)ChukwaChukwa也是一個(gè)分布式系統(tǒng),屬于 Hadoop系列產(chǎn)品,依賴于其他子項(xiàng)目,以 HDFS作為存儲(chǔ)層,以 Mapreduce作為計(jì)算模型,以 Pig作為高層的數(shù)據(jù)處理語(yǔ)言。它采用的是流水式數(shù)據(jù)處理方式和模塊化結(jié)構(gòu)的 收集系統(tǒng),流水式模式就是利用利分布在各個(gè)節(jié)點(diǎn)客戶端的采集器收集各個(gè)節(jié)點(diǎn)被監(jiān)控的信息,然后以塊的形式通過(guò)HTTPPost匯集到收集器, 由它處理后轉(zhuǎn)儲(chǔ)到 HDFS中,之后這些由 Archiving處理(去除重復(fù)數(shù)據(jù)和合并數(shù)據(jù)) 提純,再由分離解析器利用 Mapreduce將這些數(shù)據(jù)轉(zhuǎn)換成結(jié)構(gòu)化記錄,并存儲(chǔ)到數(shù)據(jù)庫(kù)中, HICC(Hadoopinfrastructurecarecenter)通過(guò)調(diào)用數(shù)據(jù)庫(kù)里數(shù)據(jù),向用戶展示可視化后的系統(tǒng)狀態(tài)。圖三十四 Chukwa數(shù)據(jù)處理流程(圖片來(lái)自網(wǎng)絡(luò))應(yīng)用實(shí)例:騰訊和淘寶大數(shù)據(jù)處理平臺(tái)架構(gòu)當(dāng)前互聯(lián)網(wǎng)公司用得比較多的是 HIVE/HBASE,如騰訊基于 hive深度定制改造的 TDW,淘寶的基于 Hadoop的大數(shù)據(jù)平臺(tái),小米等公司選用 hbase。圖三十五淘寶大數(shù)據(jù)平臺(tái)分析(圖片來(lái)自網(wǎng)絡(luò))圖三十六騰訊大數(shù)據(jù)平臺(tái)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度玻璃隔斷行業(yè)安全風(fēng)險(xiǎn)評(píng)估與控制合同3篇
- 二零二五版美容美發(fā)產(chǎn)品跨境電商銷售合作協(xié)議4篇
- 玻璃幕墻維修施工方案
- 二零二五版美容院供應(yīng)鏈管理及股權(quán)投資協(xié)議4篇
- 環(huán)氧砂漿施工方案
- 2025年P(guān)DA市場(chǎng)拓展專用采購(gòu)合同3篇
- 2025年度智能家居公司成立合作協(xié)議書正式版4篇
- 2025年度新型農(nóng)業(yè)貸款合同標(biāo)的特征分析3篇
- 2024版鋁單板采購(gòu)合同
- 會(huì)展搭建施工方案
- 地測(cè)防治水技能競(jìng)賽理論考試題庫(kù)(含答案)
- 以諾書-中英對(duì)照
- 三角形與全等三角形復(fù)習(xí)教案 人教版
- 《朝天子·詠喇叭-王磐》核心素養(yǎng)目標(biāo)教學(xué)設(shè)計(jì)、教材分析與教學(xué)反思-2023-2024學(xué)年初中語(yǔ)文統(tǒng)編版
- 成長(zhǎng)小說(shuō)智慧樹(shù)知到期末考試答案2024年
- 紅色革命故事《王二小的故事》
- 海洋工程用高性能建筑鋼材的研發(fā)
- 英語(yǔ)48個(gè)國(guó)際音標(biāo)課件(單詞帶聲、附有聲國(guó)際音標(biāo)圖)
- GB/T 6892-2023一般工業(yè)用鋁及鋁合金擠壓型材
- 冷庫(kù)安全管理制度
- 2023同等學(xué)力申碩統(tǒng)考英語(yǔ)考試真題
評(píng)論
0/150
提交評(píng)論