1.下载hadoop:
下载链接:
http://archive.apache.org/dist/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz
2.上传服务器并解压:
我的上传地址为:/opt/hadoop/soft/ 执行解压命令:
tar -zxvf /opt/hadoop/soft/hadoop-2.7.5.tar.gz -C /opt/hadoop/servers/
3.修改配置文件:
注意:
如果你要用的云服务器,比如腾讯云:这里的ip地址,需要写localhost,不能写127.0.01,localhost这个虽然可以正常启动,但是无法访问浏览器。 这是因为hosts中,配置了外网ip和localhost的映射,注意!!!
如果为本地的虚拟机,请忽略上述问题!!
执行:
cat /etc/hosts
查看hosts的配置: 49.2.1.1 localhost 172.17.0.8 localhost
其中: 49.2.1.1(外网ip) 172.17.0.8(内网ip)
3.1 修改core-site.xml
vim /opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/core-site.xml
<configuration
>
<property
>
<name
>fs.default.name</name
>
<value
>hdfs
://localhost
:8020</value
>
</property
>
<property
>
<name
>hadoop.tmp.dir</name
>
<value
>/opt/hadoop/servers/hadoop
-2.7.5/hadoopDatas/tempDatas</value
>
</property
>
<
!-- 缓冲区大小,实际工作中根据服务器性能动态调整
-->
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<
!-- 开启hdfs的垃圾桶机制,删除掉的数据可以从垃圾桶中回收,单位分钟
-->
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
</configuration
>
3.2 修改hdfs-site.xml
vim /opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/hdfs-site.xml
<configuration
>
<
!-- NameNode存储元数据信息的路径,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割
-->
<!-- 集群动态上下线
<property>
<name>dfs.hosts</name>
<value>/opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/accept_host</value>
</property>
<property
>
<name
>dfs.hosts.exclude</name
>
<value
>/opt/hadoop/servers/hadoop
-2.7.5/etc/hadoop/deny_host</value
>
</property
>
-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>localhost:50090</value>
</property>
<property
>
<name
>dfs.namenode.http
-address</name
>
<value
>localhost
:50070</value
>
</property
>
<property
>
<name
>dfs.namenode.name.dir</name
>
<value
>file
:///opt/hadoop/servers/hadoop
-2.7.5/hadoopDatas/namenodeDatas
,file
:///opt/hadoop/servers/hadoop
-2.7.5/hadoopDatas/namenodeDatas2</value
>
</property
>
<
!-- 定义dataNode数据存储的节点位置,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割
-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas,file:///opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas2</value>
</property>
<property
>
<name
>dfs.namenode.edits.dir</name
>
<value
>file
:///opt/hadoop/servers/hadoop
-2.7.5/hadoopDatas/nn/edits</value
>
</property
>
<property
>
<name
>dfs.namenode.checkpoint.dir</name
>
<value
>file
:///opt/hadoop/servers/hadoop
-2.7.5/hadoopDatas/snn/name</value
>
</property
>
<property
>
<name
>dfs.namenode.checkpoint.edits.dir</name
>
<value
>file
:///opt/hadoop/servers/hadoop
-2.7.5/hadoopDatas/dfs/snn/edits</value
>
</property
>
<property
>
<name
>dfs.replication</name
>
<value
>1</value
>
</property
>
<property
>
<name
>dfs.permissions</name
>
<value
>false</value
>
</property
>
<property
>
<name
>dfs.blocksize</name
>
<value
>134217728</value
>
</property
>
</configuration
>
3.3 修改hadoop-env.sh
vim /opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/opt/hadoop/servers/jdk1.8.0_221
注:安装jdk的路径
3.4 修改mapred-site.xml
vim /opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/mapred-site.xml
<configuration
>
<property
>
<name
>mapreduce.framework.name</name
>
<value
>yarn</value
>
</property
>
<property
>
<name
>mapreduce.job.ubertask.enable</name
>
<value
>true</value
>
</property
>
<property
>
<name
>mapreduce.jobhistory.address</name
>
<value
>localhost
:10020</value
>
</property
>
<property
>
<name
>mapreduce.jobhistory.webapp.address</name
>
<value
>localhost
:19888</value
>
</property
>
</configuration
>
3.5 修改yarn-site.xml
vim /opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/yarn-site.xml
<configuration
>
<property
>
<name
>yarn.resourcemanager.hostname</name
>
<value
>localhost</value
>
</property
>
<property
>
<name
>yarn.nodemanager.aux
-services</name
>
<value
>mapreduce_shuffle</value
>
</property
>
<property
>
<name
>yarn.log
-aggregation
-enable</name
>
<value
>true</value
>
</property
>
<property
>
<name
>yarn.log
-aggregation.retain
-seconds</name
>
<value
>604800</value
>
</property
>
</configuration
>
3.6 修改mapred-env.sh
vim /opt/hadoop/servers/hadoop-2.7.5/etc/hadoop/mapred-env.sh
export JAVA_HOME=/opt/hadoop/servers/jdk1.8.0_221
4. 创建目录:
mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/tempDatas mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/namenodeDatas2 mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/datanodeDatas2 mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/nn/edits mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/snn/name mkdir -p /opt/hadoop/servers/hadoop-2.7.5/hadoopDatas/dfs/snn/edits
5.启动
注:如果执行一下步骤,没有出现预期的进程,可以看一下启动日志,日志路径为:
cd /opt/hadoop/servers/hadoop-2.7.5/logs
每个进程都有自己的日志文件: namenode为:hadoop-root-namenode-VM_0_8_centos.out datanode为:hadoop-root-datanode-VM_0_8_centos.out …
cd /opt/hadoop/servers/hadoop-2.7.5/
执行:
5.1 格式化
首次启动 HDFS 时,必须对其进行格式化操作。 本质上是一些清理和 准备工作,因为此时的 HDFS 在物理上还是不存在的
bin/hdfs namenode -format
5.2 hdfs启动:
sbin/start-dfs.sh
执行过后,jps一下:
jps
注:jps是一个java的程序命令! 可以看到的进程有: xxxx NameNode xxxx SecondaryNameNode xxxx DataNode
5.3.yarn模块启动:
sbin/start-yarn.sh
jps, 可以看到的进程有: xxxx ResourceManager xxxx NodeManager
5.4 historyserver
sbin/mr-jobhistory-daemon.sh start historyserver
jps 可以看到: JobHistoryServer
单点的搭建完成!!!
单点其实没有多大的作用,一般只简单执行的hdfs命令。本篇中的一些配置文件中的属性内容,有些是不必须的,但是可以学习一下!
浏览器打开: http://49.2.1.1:50070/explorer.html#/
可以看到HDFS的控制台,如下: Yarn访问地址: http://49.2.1.1:8088/cluster
jobhistory: http://49.2.1.1:19888/jobhistory
完!!!