--===============hadoop启动方式======================
=》各个组件逐一启动
*HDFS
hadoop-daemon.sh start|stop namenode|datanode|secondarynamenode
*yarn
yarn-daemon.sh start|stop resourcemanager|nodemanager
*mapreduce
mr-historyserver-daemon.sh start|stop historyserver
=》各个模块分开启动
*HDFS
start-dfs.sh
stop-dfs.sh
*yarn
start-yarn.sh
stop-yarn.sh
=> 全部启动(不常用)
* start-all.sh
因为启动HDFS和YARN必须在主节点上,如果用些命令,说明本机是
namenode和resourcemanager,而namenode和resourcemanager在
实际中是位于不同的节点上,如果本机挂了,整个集群都不能用了
* stop_all.sh
--===============hadoop无密钥登录======================
=》为了使用start_all类似命令,来启动所有节点
=》先启动namenode,然后namenode会通过ssh协议启动datanode节点
=》配置SSH无密钥登录
* /home/npl/.ssh下生成密钥:包括公钥和私钥(使用rsa算法生成密钥)
* ssh-keygen -t rsa 然后四个回车
* 然后生成两个文件id_rsa和id_rsa.pub
* ssh-copy-id master(命令+主机名)
* 生成两个文件:authorized_keys和known_hosts
* 测试:ssh master:远程登录主机,不需要输入密码
--===============指定mapreduce的namenode和datanode机器======================
=》namenode
core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
=》DataNodes
slaves文件中配置master
=>SecondaryNameNode
hdfs-site.xml
<property>
<name>dfs.nodenode.secondary.http-address</name>
<value>0.0.0.0.50090</value>
</property>
--===============指定yarn的resourcemanager和nodemanager机器============
=》resourcemanager
yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
=》nodemanager
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
=》nodemanager
--===============指定mapreduce的jobhistory============
=》
mapred-site.xml
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
--=============本地库native lib============
=》问题(下面的警告)
[root@master hadoop-2.5.0-cdh5.3.6]# bin/hdfs dfs -ls /
17/08/06 07:37:18 WARN util.NativeCodeLoader: Unable to load native-hadoop
library for your platform... using builtin-java classes where applicable
=》方案
下载native-2.5.0.tar.tz 覆盖/opt/modules/hadoop-2.5.0-cdh5.3.6/lib下的native文件夹
--=============hadoop2的编译==============
下载码包,里面有一个building.txt作为指引
注:需要用maven下载jar包,帮需要好的网络的,并且能翻墙,所以会经常不成功
=》各个组件逐一启动
*HDFS
hadoop-daemon.sh start|stop namenode|datanode|secondarynamenode
*yarn
yarn-daemon.sh start|stop resourcemanager|nodemanager
*mapreduce
mr-historyserver-daemon.sh start|stop historyserver
=》各个模块分开启动
*HDFS
start-dfs.sh
stop-dfs.sh
*yarn
start-yarn.sh
stop-yarn.sh
=> 全部启动(不常用)
* start-all.sh
因为启动HDFS和YARN必须在主节点上,如果用些命令,说明本机是
namenode和resourcemanager,而namenode和resourcemanager在
实际中是位于不同的节点上,如果本机挂了,整个集群都不能用了
* stop_all.sh
--===============hadoop无密钥登录======================
=》为了使用start_all类似命令,来启动所有节点
=》先启动namenode,然后namenode会通过ssh协议启动datanode节点
=》配置SSH无密钥登录
* /home/npl/.ssh下生成密钥:包括公钥和私钥(使用rsa算法生成密钥)
* ssh-keygen -t rsa 然后四个回车
* 然后生成两个文件id_rsa和id_rsa.pub
* ssh-copy-id master(命令+主机名)
* 生成两个文件:authorized_keys和known_hosts
* 测试:ssh master:远程登录主机,不需要输入密码
--===============指定mapreduce的namenode和datanode机器======================
=》namenode
core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
=》DataNodes
slaves文件中配置master
=>SecondaryNameNode
hdfs-site.xml
<property>
<name>dfs.nodenode.secondary.http-address</name>
<value>0.0.0.0.50090</value>
</property>
--===============指定yarn的resourcemanager和nodemanager机器============
=》resourcemanager
yarn-site.xml
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
=》nodemanager
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
=》nodemanager
--===============指定mapreduce的jobhistory============
=》
mapred-site.xml
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
--=============本地库native lib============
=》问题(下面的警告)
[root@master hadoop-2.5.0-cdh5.3.6]# bin/hdfs dfs -ls /
17/08/06 07:37:18 WARN util.NativeCodeLoader: Unable to load native-hadoop
library for your platform... using builtin-java classes where applicable
=》方案
下载native-2.5.0.tar.tz 覆盖/opt/modules/hadoop-2.5.0-cdh5.3.6/lib下的native文件夹
--=============hadoop2的编译==============
下载码包,里面有一个building.txt作为指引
注:需要用maven下载jar包,帮需要好的网络的,并且能翻墙,所以会经常不成功