单节点集群模式(a Single Node Cluster)又称伪分布模式,只需一个节点即可运行。这种模式一般只是用来学习或者开发、测试使用。实际使用中还是使用多节点的分布式。
1、环境变量配置
为了方便的执行Hadoop程序,需要配置很多系统环境变量。主要有以下几个变量
设置HADOOP_HOME为Hadoop的安装路径
export HADOOP_HOME=/home/hduser/hadoop
设置将hadoop添加到PATH,上文中已经介绍过hadoop的运行文件在bin和sbin目录下,通过设置PATH后,我们可以在任何位置执行hadoop命令。
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin
设置hadoop其他环境变量
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
链接库的相关设置
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME
export HADOOP_OPTS=”-Djava.library.path=$HADOOP_HOME/lib”
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH
与配置Jdk的系统环境变量方法一致,我们只需将需要配置的系统变量添加到用户主目录下的.bashrc文件中即可。打开Ubuntu虚拟机,然后打开Xshell连接登陆到虚拟机,在用户主目录下执行命令 vim .bashrc
在新的框体中输入i进入编辑模式,然后在文件末尾输入下述内容
按esc退出编辑模式,输入:wq保存并退出
命令行中输入 source .bashrc命令更新一下系统环境变量
更新完成后我们可以通过echo $HADOOP_HOME测试系统变量是否添加成功,如下图所示表明已经成功。
Hadoop 默认模式为非分布式模式(本地模式),无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。在此我们可以在本地模式下运行部分Hadoop自带MapReduce例子来验证Hadoop能够正常运行,同时体验Hadoop中MapReduce运行命令格式。在命令行中输入
cd hadoop/ #进入Hadoop安装文件目录
mkdir ./input #在hadoop文件夹下创建输入文件
cp ./etc/hadoop/*.xml ./input #将配置文件作为输入文件
./bin/hadoop jar
./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output ‘dfs[a-z.]+’ #运行MapReduce中grep例子,筛选符合正则表达式dfs[a-z]+的单词并统计其出现的次数,并将结果放入output文件夹中,关于正则表达式更多内容,参见附录三:正则表达式速查表格
cat ./output/* #查看运行结果
删除创建的文件使用以下命令
rm -r ./output
rm -r ./input
Hadoop 还可以在单节点上以伪分布式的方式运行,此时Hadoop 进程以分离的 Java 进程来运行,节点既作为NameNode 也作为 DataNode,同时读取的是 HDFS 中的文件。这种模式需要修改相应的配置文件,我们将会在下文中进行详细讲解。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。