1、简介
Hadoop默认是单节点运行的,但是Hadoop也可以在伪分布模式下的单节点上运行,其中每个Hadoop守护进程都在单独的Java进程中运行。
注意!!该版本为3.1.0,
2、配置步骤
0、设置免密码ssh登录本机:
1、ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
2、cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
3、chmod 0600 ~/.ssh/authorized_keys
1、etc/hadoop/core-site.xml:
<configuration>
<property>
<!-- 这里的值指的是默认的HDFS路径。当有多个HDFS集群同时工作时,用户如果不写集群名称,那么默认使用哪个哪?在这里指定!该值来自于hdfs-site.xml中的配置
-->
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
2、etc/hadoop/hdfs-site.xml:
<configuration>
<property>
<!-- 设置hdfs副本数量 -->
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3、格式化文件系统:
bin/hdfs namenode -format
执行完成后,发现在指定路径下生成如下文件:
4、启动NameNode守护进程和DataNode守护进程:
sbin/start-dfs.sh
如果提示报错信息,可参考如下处理方式:
处理1
vim sbin/start-dfs.sh
vim sbin/stop-dfs.sh
两处增加以下内容
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
处理2
vim sbin/start-yarn.sh
vim sbin/stop-yarn.sh
两处增加以下内容
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
如:
启动完成后,可以通过访问url: http://localhost:9870/来通过前端界面查看效果:
5、制作执行MapReduce作业所需的HDFS目录:
$ bin/hdfs dfs -mkdir /user
$ bin/hdfs dfs -mkdir /user/<username>
6、将输入文件复制到分布式文件系统中:
bin/hdfs dfs -put etc/hadoop input
7、运行一些提供的示例:
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.1.jar grep input output 'dfs[a-z.]+'
8、使用如下命令查看效果:
$ bin/hdfs dfs -get output output
$ cat output/*
或
$ bin/hdfs dfs -cat output/*
9、使用如下命令停止:
sbin/stop-dfs.sh