一、支持的平台
- 支持GNU/Linux作为开发和生产平台。
- Windows也是一个支持的平台,下面步骤仅适用于Linux。
二、所需软件
所需的Linux软件包括:
- Java必须安装。
- 如果要使用可选的启动和停止脚本,必须安装ssh,并且必须运行sshd才能使用管理远程Hadoop守护程序的Hadoop脚本。此外,建议安装pdsh以获得更好的ssh资源管理。
三、安装软件
如果你的集群没有必要的软件,你需要安装它。
$ sudo apt-get install ssh
$ sudo apt-get install pdsh
四、下载
在hadoop.apache.org中下载当前最新版本hadoop3.1.0。
五、准备启动Hadoop集群
解压下载的Hadoop发行版。在发行版中,编辑文件etc/hadoop/hadoop-env.sh来定义一些参数,如下所示:
1
2#设置为Java安装的根目录 导出JAVA_HOME=/usr/java/latest
尝试以下命令:
1$ bin/hadoop
这将显示hadoop脚本的使用文档。
启动hadoop集群有三种模式:
- 本地(独立)模式
- 伪分布式模式
- 完全分布式模式
1、本地(独立)模式
默认情况下,Hadoop被配置为以非分布式模式运行,作为单个Java进程。这对调试很有用。
以下示例将解压后的conf目录复制为输出,然后查找并显示给定正则表达式的每个匹配项。输出写入给定的输出目录。
1
2
3
4$ mkdir输入 $ cp etc / hadoop / *。xml输入 $ bin / hadoop jar share / hadoop / mapreduce / hadoop-mapreduce-examples-3.1.0.jar grep input output'dfs [az。] +' $ cat输出/ *
2、伪分布式操作
Hadoop也可以在伪分布式模式下的单节点上运行,其中每个Hadoop守护进程都在单独的Java进程中运行。
使用一下配置:
在etc/hadoop/core-site.xml中:
1
2
3
4
5
6
7
8
9
10
11<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop000:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/hadoopdata</value> <description>Abase for other temporary directories.</description> </property> </configuration>
在etc/hadoop/HDFS-site.xml中:
1
2
3
4
5
6<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
设置passphraseless ssh
现在检查是否可以在没有密码的情况下ssh到本地主机:
1$ ssh localhost
如果不能再没有密码的情况下ssh到本地主机,请执行一下命令:
1
2
3$ ssh-keygen -t rsa -P''-f〜/ .ssh / id_rsa $ cat〜/ .ssh / id_rsa.pub >>〜/ .ssh / authorized_keys $ chmod 0600〜/ .ssh / authorized_keys
修改etc/hadoop/workers,注意:workers这个文件就是hadoop2.x版本中的slaves。
1hadoop000 #主机名
格式化文件系统:
1$ bin / hdfs namenode -format
启动NameNode守护进程和DataNode守护进程:
1$ sbin / start-dfs.sh
浏览NameNode的Web界面:
1http://localhost:9870
配置YARN在单个节点上:
在etc/hadoop/mapred-site.xml中:
1
2
3
4
5
6
7
8
9
10<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.application.classpath</name> <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value> </property> </configuration>
在etc/hadoop/yarn-site.xml中:
1
2
3
4
5
6
7
8<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.env-whitelist</name> <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value> </property>
启动ResourceManager守护进程和NodeManager守护进程:
1$ sbin / start-yarn.sh
浏览ResourceManage的Web界面:
1http://localhost:8088/
运行MapReduce作业。
停止进程:
1
2$ stop-dfs.sh $ stop-yarn.sh
注:
如果启动HDFS时出现以下错误:
1
2
3
4
5
6
7
8
9
10Starting namenodes on [hadoop000] ERROR: Attempting to operate on hdfs namenode as root ERROR: but there is no HDFS_NAMENODE_USER defined. Aborting operation. Starting datanodes ERROR: Attempting to operate on hdfs datanode as root ERROR: but there is no HDFS_DATANODE_USER defined. Aborting operation. Starting secondary namenodes [hadoop000] ERROR: Attempting to operate on hdfs secondarynamenode as root ERROR: but there is no HDFS_SECONDARYNAMENODE_USER defined. Aborting operation. 2018-04-13 07:37:05,439 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
解决办法:
一定要在文档的最前面添加参数!!!
1
2
3
4
5
6
7$ vim start-dfs.sh $ vim stop-dfs.sh #分别在文档的最前面,添加如下参数: HDFS_DATANODE_USER=root HADOOP_SECURE_DN_USER=hdfs HDFS_NAMENODE_USER=root HDFS_SECONDARYNAMENODE_USER=root
如果启动YARN时出现以下错误:
1
2
3
4
5
6Starting resourcemanager ERROR: Attempting to operate on yarn resourcemanager as root ERROR: but there is no YARN_RESOURCEMANAGER_USER defined. Aborting operation. Starting nodemanagers ERROR: Attempting to operate on yarn nodemanager as root ERROR: but there is no YARN_NODEMANAGER_USER defined. Aborting operation.
解决办法:
一定要在文档的最前面添加参数!!!
1
2
3
4
5
6$ vim start-yarn.sh $ vim stop-yarn.sh #分别在两个文件最前端,添加如下参数: YARN_RESOURCEMANAGER_USER=root HADOOP_SECURE_DN_USER=yarn YARN_NODEMANAGER_USER=root
最后
以上就是殷勤小土豆最近收集整理的关于Hadoop3.1.0(伪分布式)安装教程的全部内容,更多相关Hadoop3内容请搜索靠谱客的其他文章。
发表评论 取消回复