下载hadoop并解压
配置hdfs
修改配置文件etc/hadoop/hadoop-env.sh
JAVA_HOME=/home/middleware/jdk
修改配置文件etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://XXXXXX:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/middleware/hadoop/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
</configuration>
修改配置文件etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
启动hdfs
格式化namenode
# bin/hdfs namenode -format
启动hdfs
# sbin/hadoop-daemon.sh start namenode
# sbin/hadoop-daemon.sh start datanode
启动后通过访问http://yourIp:50070/判断是否启动成功
如图,hdfs启动成功
启动Yarn
修改配置文件etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
修改配置文件etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
启动Yarn集群
# $ sbin/start-yarn.sh
访问http://yourIp:8088/
如图,Yarn启动成功
配置启动historyserver(JobHistoryServer)
yarn-site.xml增加如下配置,不需要重启hadoop
mapreduce.jobhistory.address yourIp:10020 mapreduce.jobhistory.webapp.address yourIp:19888启动historyserver
sbin/mr-jobhistory-daemon.sh start historyserver
备注:阿里云主机内不显示公网,外网环境访问阿里云主机上的hdfs时需要通过域名访问,添加如下代码实现
//通过域名访问hdfs
conf.set("dfs.client.use.datanode.hostname", "true");
hdfs的地址填写域名即可。
拓展
hadoop集群(非HA模式)启动命令
1.启动namenode、datanode集群
在部署namenode的机器上执行
# sbin/start-dfs.sh
2.启动ResourceManager、NodeManager集群
在部署resourceManager的机器上执行
# sbin/start-yarn.sh
测试hdfs和yarn是否可用
# hadoop jar ~/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount hdfs://hadoop1/input hdfs://hadoop1/output