hadoop大数据分析与挖掘实战(读书笔记3)
启动Hadoop
设置环境变量,设置了。
修改配置文件 /etc/hadoop/core-site.xml
也修改了配置文件 /etc/hadoop/hdfs-site.xml
还修改了配置文件 /etc/hadoop/yarn-site.xml
最后修改了配置文件 /etc/hadoop/mapred-site.xml
但是打出 hdfs namenode -format 的命令的时候,没有反应,找不到命令。
当我打出了 start-dfs.sh 的时候也是没有反应,倒是,./strat-dfs.sh 运行脚本才有反应。
而且反应很奇怪,
它会要求输入 master 的密码,然后输入localhost 的密码。非常奇怪!
但是输入jps 还是有反应的。但是在 slave 机输入jps 却一点反应也没有。
PATH变量问题所导致的找不到命令
所以需要配置要PATH,方便行事。但这个不是急事!
路径出了问题
这个问题,就是路径有问题,因为路径在/home/sam/hadoop-2.6.1/bin/hdfs
所以修改成功成功后,就搞定了。
这样搞定了,但是ssh 进入slave 1的时候,发现了问题,在salve1里面没有能找到了jps命令。
在slave上也要安装HADOOP
关于这方面的内容书上很少,关键在于参考这个BLOG:http://www.powerxing.com/install-hadoop-cluster/。
关于这个BLOG,一开始的步骤并不是复制HADOOP到slave 机器然后各种修改slave 机器的配置。而是
先修改主机 namenode 的配置,然后压缩起来,传给SLAVE 然后就各种命令启动。OK了。
成功安装需要避免的坑:
1就是主机和奴隶机的安装路径要一致。
2要注意 <configuration> </configuration>的问题
3 start 之前要先stop-all.sh 以防止节点已经存在的问题
4大部分问题都是配置路径的问题
最后用hdfs dfsadmin -report 的命令来查看,可以看到目前圈养了一只奴隶机。
现在我来贴一下我的配置文件(主机:)
core-site.xml
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://Master:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/home/hadoop-2.6.1/tmp</value> <description>Abase for other temporary directories.</description> </property> </configuration>
hdfs-site.xml
<configuration> <property> <name>dfs.namenode.secondary.http-address</name> <value>Master:50090</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/home/hadoop-2.6.1/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/home/hadoop-2.6.1/tmp/dfs/data</value> </property> </configuration>
mapred-site.xml.template
<configuration> <property> <name>mapreduce.framework.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> </configuration>
yarn-site.xml
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.resourcemanager.hostname</name> <value>Master</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration>
奴隶机的基本和主机的一致,但前提是在主机中hadoop 安装路径在 home/hadoop
奴隶机的也是在 home/hadoop! 路径一定要一致!