前言
好久沒(méi)有更新博客了,主要是懶得放論文筆記。
最近比較想玩一下分布式系統(tǒng),就裝了一個(gè)hadoop+spark的集群(1個(gè)master、1個(gè)slaver,沒(méi)有多余的主機(jī),所以只用了兩個(gè))。
耗時(shí)快一天,簡(jiǎn)單記錄一下部署過(guò)程中遇到的問(wèn)題。
主要安裝流程:
- 搭建與測(cè)試hadoop分布式集群環(huán)境
- 搭建與預(yù)測(cè)spark環(huán)境
hadoop 分布式集群部署
master 192.168.1.112
slaver 192.168.1.101
安裝參考教程進(jìn)行逐步安裝
遇到的主要問(wèn)題:
- 主機(jī)之間ssh連接報(bào)錯(cuò)
ssh本機(jī)失敗(ssh: connect to host localhost port 22: Connection refused)
解決方法:重新安裝open-sshserver
- namenode節(jié)點(diǎn)無(wú)法啟動(dòng): 原因是自己把主機(jī)host名稱中帶有"_",注意:主機(jī)hostname不能帶有"-"或者_(dá)
- Hadoop集群?jiǎn)?dòng)后,data節(jié)點(diǎn)上的主機(jī)無(wú)法使用jps命令,即無(wú)法查看java進(jìn)程;
The program 'jps' can be found in the following packages:
- openjdk-7-jdk
- openjdk-6-jdk
Try: apt-get install <selected package>
解決方法:重新安裝jdk,安裝完整版本的jdk后即可相似解決方案
-
- datanode節(jié)點(diǎn)無(wú)法啟動(dòng):no datanode
- 原因:hafs-site.xml配置文件有語(yǔ)法錯(cuò)誤,通過(guò)查看日志才發(fā)現(xiàn)(大家如遇各種奇怪問(wèn)題,還是第一步先去看看logs日志里面的報(bào)錯(cuò)信息)
- 注: hadf-site.xml指明了name和data節(jié)點(diǎn)的存儲(chǔ)位置,可以明確配置一下:
hdfs-site.xml配置
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
- hadoop 8088網(wǎng)頁(yè)無(wú)法打開(kāi): 主要原因:沒(méi)有對(duì)該端口做設(shè)置,在yarn-site.xml配置中添加如下:
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>localhost:8088</value>
</property>


上面顯示有一個(gè)namenode,一個(gè)Live Node(datanode),說(shuō)明環(huán)境初步配置完成
hadoop運(yùn)行測(cè)試: wordcount示例

以上過(guò)程說(shuō)明hadoop已經(jīng)成功部署,并能使用。
Spark集群部署
參考教程
我們?yōu)榱死胔adoop的HDFS系統(tǒng),因此在spark平臺(tái)的配置前部署hadoop集群。在上步工作完成后,spark的配置就比較簡(jiǎn)單了,按照教程進(jìn)行逐步操作即可。
主要遇到的一個(gè)問(wèn)題也是自己疏忽導(dǎo)致的,沒(méi)有指定spark的集群的slaves,導(dǎo)致worker節(jié)點(diǎn)無(wú)法啟動(dòng)。


總結(jié)
整個(gè)配置過(guò)程中,過(guò)程相對(duì)比較簡(jiǎn)單,但特別需要主要hadoop和spark的配置文件設(shè)置,大部分問(wèn)題都是由于配置文件的設(shè)置不當(dāng)引起的。