Hadoop3伪分布部署
OVERVIEW
- Hadoop3伪分布部署
-
-
- 实验环境:
- Hadoop3环境搭建(本地模式)
-
-
- 1.实验原理:
- 2.实验步骤:
-
- (1)安装JDK8
- (2)安装Hadoop3
- (3)在Hadoop3上执行MR程序
-
- Hadoop3环境搭建(伪分布模式)
-
-
- 1.实验原理:
- 2.实验步骤
-
- (1)安装JDK8
- (2)配置SSH免密登录
- (3)安装Hadoop3
- (4)Hadoop伪分布式配置
- (5)格式化文件系统
- (6)在Hadoop集群上执行MapReduce程序
- (7)实验记录
-
-
实验环境:
【数据挖掘|【大数据实验】01(Hadoop3伪分布部署)】硬件:Ubuntu16.04
软件:JDK1.8、Hadoop3.3.0
数据存放路径:~/dataset
tar包路径:~/software
tar包压缩路径:~/bigdata
软件安装路径:/opt
实验设计创建文件:~/resource
Hadoop3环境搭建(本地模式)
1.实验原理: Hadoop运行模式分为本地运行模式、伪分布运行模式、集群运行模式。
Hadoop3的本地模式,指的是Hadoop各组件程序都运行在同一个JVM上,不需要单独启动任何Hadoop进程。这种模式适宜用在开发阶段。
2.实验步骤: (1)安装JDK8 Hadoop3的运行需要JDK8的支持,必须先安装JDK8环境
# 1.JDK安装包解压
tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm/
# 2.配置环境变量
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
# 3.测试JDK安装
java -version
文章图片
(2)安装Hadoop3
# 1.Hadoop3安装包解压
tar -zxvf hadoop-3.1.3.tar.gz -C ~/bigdata/
mv hadoop-3.1.3 hadoop
# 2.配置环境变量
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export HADOOP_HOME=/root/bigdata/hadoop
export PATH=${JAVA_HOME}/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
source /etc/profile
# 3.测试Hadoop3安装
hadoop version
文章图片
(3)在Hadoop3上执行MR程序
# 运行pi程序,先进入到程序示例.jar包所在的目录,然后运行MR程序
cd ~/bigdata/hadoop/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-3.1.3.jar pi 10 20 #在输出内容中,可以找到计算出的PI值
文章图片
Hadoop3环境搭建(伪分布模式)
掌握Hadoop3伪分布模式环境的搭建、文件配置和环境测试。
1.实验原理: Hadoop的运行模式分为3种:本地运行模式,伪分布运行模式,集群运行模式。
伪分布模式是将守护程序运行在本地主机,模拟一个小规模集群。这里不但需要本地模式的操作过程,需要对配置文件进行配置
2.实验步骤 (1)安装JDK8
# 1.JDK安装包解压
tar -zxvf ./jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm/
# 2.配置环境变量
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
source /etc/profile
# 3.测试JDK安装
java -version
(2)配置SSH免密登录 Hadoop在启动过程中是通过SSH远程操作的,所以在不做特殊配置下每次启动到相关节点时都要输入密码。
如果想避免每次都输入密码,需要设置免密登录。
# 1.生成密钥
rm -rf ~/.ssh #若设备已经提前配置需要先删除
ssh-keygen #在目录~/.ssh/下会生成两个文件:id rsa私钥、id_rsa.pub公钥
# 2.将公钥写入认证文件中,则下次登录可以实现免密登录
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
文章图片
(3)安装Hadoop3
# 1.Hadoop3安装包解压
tar -zxvf hadoop-3.1.3.tar.gz -C ~/bigdata/
mv hadoop-3.1.3 hadoop
# 2.配置环境变量
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export HADOOP_HOME=/root/bigdata/hadoop
export PATH=${JAVA_HOME}/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
source /etc/profile
# 3.测试Hadoop3安装
hadoop version
(4)Hadoop伪分布式配置 Hadoop共需要配置5个文件(可选地配置workers文件)均位于Hadoop安装目录下的
etc/hadoop/
子目录下cd ~/bigdata/hadoop/etc/hadoop
# 1.配置hadoop-env.sh文件
vim hadoop-env.sh #找到并修改JAVA_HOME属性的值
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162# 2.配置core-site.xml文件
vim core-site.xml
fs.defaultFS
hdfs://192.168.172.129:9000
hadoop.tmp.dir
file:/root/bigdata/hadoop/tmp
# 3.配置hdfs-site.xml文件
vim hdfs-site.xml
dfs.namenode.name.dir
file:/root/bigdata/hadoop/tmp/dfs/name
为了保证元数据的安全一般配置多个不同目录
dfs.datanode.data.dir
file:/root/bigdata/hadoop/tmp/dfs/data
datanode的数据存储目录
dfs.replication
1
HDFS的数据块的副本存储个数,默认是3
dfs.permissions.enabled
false
# 4.配置mapred-site.xml文件
vim mapred-site.xml
mapreduce.framework.name
yarn
mapreduce.application.classpath
$HADOOP_HOME/share/hadoop/mapreduce/*:$HADOOP_HOME/share/hadoop/mapreduce/lib/*
# 5.配置yarn-site.xml文件
vim yarn-site.xml
yarn.resourcemanager.hostname
192.168.172.129
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.local-dirs
file:/root/bigdata/hadoop/yarn/nm
(5)格式化文件系统 格式化HDFS(仅需执行格式化一次),在终端窗口执行下面的命令
cd ~/bigdata/hadoop/bin/
./hdfs namenode -format
如果因为某些原因需要从头重新配置集群,那么在重新格式化HDFS之前,先把Haoop下的tmp目录删除。
tmp目录是在hdfs-site.xml文件中自己指定的,其下有两个子目录name和data,重新格式化之前必须删除它们。
格式化namenode,实际上就是在namenode上创建一块命名空间。在创建过程中会加载所配置的文件,检验是否配置正确。
如何检验hdfs格式化是否成功?(6)在Hadoop集群上执行MapReduce程序
# 1.修该配置文件/etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export HADOOP_HOME=/root/bigdata/hadoop
export PATH=${JAVA_HOME}/bin:$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinexport HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root# 2.启动启动HDFS集群
cd ~/bigdata/hadoop/sbin
./start-dfs.sh
jps #使用jps命令查看当前节点上运行的服务
# 3.成功启动后,可以通过Web界面查看NameNode和Datanode信息和HDFS文件系统。NameNode Web接口:http://localhost:9870
# 4.启动yarn:
cd ~/bigdata/hadoop/sbin
./start-yarn.sh
jps
# 5.启动historyserver历史服务器和timelineserver时间线服务器
cd ../bin/
./mapred --daemon start historyserver
./yarn --daemon start timelineserver
# 6.运行pi程序,先进入到程序示例.jar包所在的目录,然后运行MR程序
cd ~/bigdata/hadoop/share/hadoop/mapreduce
hadoop jar hadoop-mapreduce-examples-3.1.3.jar pi 1 2 #在输出内容中,可以找到计算出的PI值
# 7.可以通过 Web 界面查看
打开浏览器,在地址栏输入:http://localhost:8088
查看任务进度:http://localhost:8088/cluster
在 Web 界面点击 “Tracking UI” 这一列的 History 连接,可以看到任务的运行信息。
同样,URL中的cda是我的机器名,请替换为你自己的机器名。
# 8.关闭集群
cd ~/bigdata/hadoop/sbin
./stop-yarn.sh
./stop-dfs.sh
cd ../bin
./mapred --daemon stop historyserver
./yarn --daemon stop timeline
(7)实验记录 step2:首先启动HDFS集群,使用jps命令查看当前节点上运行的服务
文章图片
step3:成功启动后,通过Web界面查看NameNode和Datanode信息和HDFS文件系统。NameNode Web接口:http://localhost:9870
文章图片
文章图片
文章图片
step7:运行pi程序,先进入到程序示例.jar包所在的目录,然后运行MR程序
文章图片
step8:在浏览器地址栏输入http://localhost:8088/cluster 查看任务进度:
文章图片
文章图片
推荐阅读
- 数据挖掘|【大数据实验】03(HBase伪分布式部署)
- 数据科学|想转行数据方向,苦苦找不到方法(看这里,数据方向的完整知识体系送给你!)
- 算法|2022五一数学建模有何思路模型?
- Mac下hadoop,hive, hbase,spark单机环境搭建
- R语言初见|R语言使用strsplit函数基于指定字符或者字符串分割字符串、使用sub函数进行字符串替换、使用tolower函数将字符串转化为小写字符
- Hadoop 2:Mapper和Reduce
- 人工智能|AI程序员都需要掌握些什么()
- 报表开发|别用Excel做数据可视化了!这款报表工具不比它香100倍()
- 融云洞察(打造社交元宇宙,从「读懂 00 后」开始)