1.Hadoop部署包下载(apache社区版)
0.0 安装说明
0.1 部署准备
linux(centos7+jdk1.8+ssh免密登入)+hadoop-3.1.3.tar.gz
0.2 安装模式
1.单机模式:不能使用HDFS,只能使用MapReduce,所以单机模式最主要的目的是在本机调试mapreduce代码
2.伪分布式模式:用多个线程模拟多台真实机器,即模拟真实的分布式环境。
3.完全分布式模式:用多台机器(或启动多个虚拟机)来完成部署集群。
0.3 安装包目录说明
bin目录:命令脚本
etc/hadoop:存放hadoop的配置文件
lib目录:hadoop运行的依赖jar包
sbin目录:启动和关闭hadoop等命令都在这里
libexec目录:存放的也是hadoop命令,但一般不常用
1.1下载地址
http://www.apache.org/dyn/closer.cgi/hadoop/common/
1.2下载注意(稳定版下载)
2.查看部署包内安装手册
2.1解压部署包后,用浏览器打开(hadoop-3.1.3\share\doc\hadoop\index.html)
3.准备安装环境
3.1 支撑平台(linux-centos7)
3.2 环境设置
1.配置免密登入
2.关闭防火墙
3.2 所需软件
3.2.1 安装jdk
1.版本兼容性 请查看:https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions
2.解压jdk+配置环境变量
3.2.2 安装ssh、pdsh
$ sudo apt-get install ssh
$ sudo apt-get install pdsh
4.上传、解压hadoop安装包
tar -xvf hadoop-3.1.3.tar.gz
5.修改相关配置文件
5.1 配置 etc/hadoop/hadoop-env.sh
#指定jdk路径
export JAVA_HOME=/home/software/jdk1.8
source /etc/hadoop/hadoop-env.sh
5.2 配置 etc/hadoop/core-site.xml
<!--指定namenode地址-->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
5.3 配置 etc/hadoop/hdfs-site.xml
<!--指定hdfs保存数据副本的数量,默认为3,伪分布式模式设置为1-->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
6.格式化namenode
$ bin/hdfs namenode -format
7.启动hdfs
7.1启动命令
$ sbin/start-dfs.sh
7.2如果启动失败时报错(but there is no HDFS_NAMENOD_USER defined...)
1.需要在start-dfs.sh和stop-dfs.sh文件中添加下列参数:
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
7.3 测试hdfs命令
1.创建目录
bin/hdfs dfs -mkdir /user
2.上传文件
bin/hdfs dfs -put 文件名称 /user
7.4 登入Namenode管理界面
默认地址与端口:http:// localhost:9870 / (确保防火墙关闭或端口开放)
7.5 查看hdfs相关进程
8.停止hdfs
$ sbin/stop-dfs.sh
9.开启yarn(如果不开启,mr在本地运行)
9.1 配置 etc/hadoop/mapred-site.xml
<!--指定mr运行在yarn上 -->
<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>
9.2 配置 etc/hadoop/yarn-site.xml
<!--NodeManager获取数据的方式 -->
<configuration>
<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>
</configuration>
9.3 启动yarn
$ sbin/start-yarn.sh
9.4 启动报错(but there is no YARN_RESOURCEMANAGER_USER defined. Aborting operation)
#对于start-yarn.sh和stop-yarn.sh文件,添加下列参数:
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
9.5 登入yarn管理界面
默认地址 ResourceManager - http://localhost:8088/ (确保防火墙关闭或端口开放)
9.6 查看yarn相关进程