安装Hadoop2.10.1
文章目录
前言
通过在Hadoop1安装Hadoop,然后配置相应的配置文件,最后将Hadoop 所有文件同步到其他Hadoop节点。
一、集群规划
#主机名
‘master/hadoop1’ ‘slave01/hadoop2’ ‘slave02/hadoop3’#启动节点
Namenode Nodemanager Nodemanager
Resourcemanager Datanode DatanodeSecondarynamenode
二、安装JDK
1、三个节点都需要按照下面步骤安装JDK环境。
执行java-version查看JDK是否已经安装,如果已经安装了,可以跳过这一步骤,进入环境部署环节。
java -version # which Java是无法定位到Java的安装路径的,只能定位到执行路径
2、下载安装包后,将JDK安装包复制到/usr/lib/jvm/
sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel #通过此命令安装 OpenJDK,默认安装位置为 /usr/lib/jvm/rpm -ql java-1.8.0-openjdk-devel | grep '/bin/javac' #检验路径,输出结果除去路径末尾的 “/bin/javac”,剩下的就是正确的路径了
3、配置相应环境变量(hadoop1-3都要)
拓展:设置Linux环境变量的方法和区别
vim /etc/profile #在文件末尾加入#JAVA_HOME
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk #java安装地址
export PATH=$PATH:$JAVA_HOME/binsource ~/.bashrc # 使变量设置生效echo $JAVA_HOME # 检验变量值
java -version
$JAVA_HOME/bin/java -version #与直接执行 java -version 一样,一起执行作对比
配置静态ip 和 联网
为VMware的多台虚拟机配置静态ip 和联网_慕诡的博客-CSDN博客
三、安装Hadoop
下载安装Hadoop2.10.1
cd ~wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz #下载tar -zxf hadoop-2.10.1.tar.gz -C /usr/local # 解压到/usr/local中cd /usr/local/sudo mv ./hadoop-2.10.1/ ./hadoop # 将文件夹名改为hadoop
sudo chown -R hadoop:hadoop ./hadoop # 修改文件权限ls ./hadoop
Hadoop配置
1、配置主节点环境
1)配置core-site.xml文件
vim /usr/local/hadoop/etc/hadoop/core-site.xml #修改xml文件用 gedit 比较方便,但在Xshell连接时用不了
<configuration><property><!--定义Hadoop HDFS中 namenode 的URI和端口【必须配置】--><name>fs.defaultFS</name><value>hdfs://hadoop1:9000</value></property><property><!--Hadoop运行时产生临时的存储目录【必须配置】--><name>hadoop.tmp.dir</name><value>/usr/local/hadoop/data/tmp</value></property></configuration>
2)配置hdfs-site.xml文件
vim /usr/local/hadoop/etc/hadoop/hdfs-site.xml
<configuration><property><!--指定DataNode存储block的副本数量,不大于DataNode的个数就行,默认为3【必 须】--><name>dfs.replication</name><value>3</value></property><property><!--namenode节点元数据存储目录【必须配置】--><name>dfs.namenode.name.dir</name><value>/usr/local/hadoop/hdfs/name</value> </property><property><!--datanode 真正的数据存储目录【必须配置】--><name>dfs.datanode.data.dir</name><value>/usr/local/hadoop/hdfs/data</value> </property><property><!--指定SecondaryNamenode的工作目录【必须配置】--><name>dfs.namenode.checkpoint.dir</name><value>file:/usr/local/hadoop/dfs/namesecondary</value> </property><property><!--指定Hadoop辅助名称节点主机配置 --><!--指定SecondaryNamenode的http协议访问地址【必须配置】--> <name>dfs.namenode.secondary.http-address</name><value>hadoop2:9001</value></property><property><!--必须设置为true,否则就不能通过web访问hdfs上的文件信息【必须配置】--><name>dfs.webhdfs.enabled</name><value>true</value></property></configuration>
3)配置workers文件
vim /usr/local/hadoop/etc/hadoop/slaves #修改为3个主机名称# hadoop-3.3.0版本文件名为workers , hadoop-2.x.x版本文件名为slaves
hadoop1
hadoop2
hadoop3
4)配置mapred-site.xml文件
默认情况下/usr/local/hadoop/etc/hadoop/文件夹下有mapred.xml.template文件,复制一下该文件,并重命名为mapred.xml,该文件用于指定MapReduce使用的框架。
cp mapred-site.xml.template mapred-site.xmlvim /usr/local/hadoop/etc/hadoop/mapred-site.xml
<configuration><property><!-- 指定MR运行框架:运行在Yarn上 --><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce application.classpath</name><value>/usr/local/hadoop/etc/hadoop,/usr/local/hadoop/share/hadoop/common/*,/usr/local/hadoop/share/hadoop/common/lib/*,/usr/local/hadoop/share/hadoop/hdfs/*,/usr/local/hadoop/share/hadoop/hdfs/lib/*,/usr/local/hadoop/share/hadoop/mapreduce/*,/usr/local/hadoop/share/hadoop/mapreduce/lib/*,/usr/local/hadoop/share/hadoop/yarn/*,/usr/local/hadoop/share/hadoop/yarn/ib/*</value></property>
</configuration>
5)配置yarn-site.xml文件
vim /usr/local/hadoop/etc/hadoop/yarn-site.xml
6)配置Hadoop-env.sh文件
vi /usr/local/hadoop/etc/hadoop/hadoop-env.shexport JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk #java安装地址# 配置完刷新一下
source /usr/local/hadoop/etc/hadoop/hadoop-env.sh
7)因hadoop版本不同,hadoop-3.x.x下可能出现错误,hadoop-2.x.x下启动正常(可跳过)
配置./start-yarn.sh文件,在首部添加
vim /usr/local/hadoop/sbin/start-yarn.sh# Personal Addexport YARN_RESOURCEMANAGER_USER=root
export HADOOP_SECURE_DN_USER=root
export YARN_NODEMANAGER_USER=root
配置./stop-yarn.sh文件,在首部添加
vim /usr/local/hadoop/sbin/stop-yarn.sh# Personal Addexport YARN_RESOURCEMANAGER_USER=root
export HADOOP_SECURE_DN_USER=root
export YARN_NODEMANAGER_USER=root
配置./start-dfs.sh文件,在首部添加
vim /usr/local/hadoop/sbin/start-dfs.sh# Personal Addexport HDFS_NAMENODE_SECURE_USER=root
export HDFS_DATANODE_SECURE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
配置./stop-dfs.sh文件,在首部添加
vim /usr/local/hadoop/sbin/stop-dfs.sh# Personal Addexport HDFS_NAMENODE_SECURE_USER=root
export HDFS_DATANODE_SECURE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
2、配置从节点环境
将以上配置好的Hadoop文件包打包并同步到其他Hadoop节点。
#方法1:打包发送后解压
cd /home
sudo tar -czvf hadoop.tar.gz /usr/local/hadoop #打包文件scp -r hadoop.tar.gz arlene@hadoop2:/usr/local/
scp -r hadoop.tar.gz arlene3@hadoop3:/usr/local/# 如果传输压缩包,需各节点解压
sudo tar -zxvf /usr/local/hadoop.tar.gz -C /usr/local
# 方法2:直接传输文件夹
cd /home#将hadoop1主节点下/usr/local目录下的hadoop文件夹分别拷贝到hadoop2和hadoop3节点的/usr/local/目录下
sudo scp -r /usr/local/hadoop root@hadoop2:/usr/local/
sudo scp -r /usr/local/hadoop root@hadoop3:/usr/local/ # 传输命令 递归 要拷贝的文件路径/名称 目的用户@主机:目的路径/名称
# scp命令:scp 本地文件 远程用户@远程ip:远程用户文件夹
# scp定义:可以实现服务器与服务器之间的数据拷贝。(from server1 to server2)
3、配置profile文件
vim /etc/profileexport HADOOP_HOME=/usr/local/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/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/binsource /etc/profile
# 方法一:各节点均编辑/etc/profile文件
# 方法二:远程同步,将hadoop1主节点上的配置文件分别拷贝到hadoop2和hadoop3节点rsync -rvl /etc/profile root@hadoop2:/etc/profile
rsync -rvl /etc/profile root@hadoop3:/etc/profile tail /etc/profile #显示已修改的配置文件(/etc/profile)内容,查看是否同步成功
source /etc/profile #立即生效
javadoc #测试
hadoop #测试cat /usr/local/hadoop/etc/hadoop/slaves #查看workers/slaves文件内容是否一致
4、格式化(仅一次)
在Hadoop1节点格式化NameNode,格式化成功如图.(只在Hadoop1启动就好)
hdfs namenode -format #或者进入hadoop用户文件用./bin/hdfs namenode -format
5、启动集群
【注】:启动集群和关闭集群顺序是相反的,启动时先hadoop1,关闭时后hadoop1
cd /usr/local/hadoop/sbin/start-dfs.sh#等hadoop1主节点下start-dfs.sh命令执行结束后,再执行命令start-yarn.sh
start-yarn.sh#检查
jps
总结
参考文章:
Hadoop分布式集群搭建详细教程 - wansiqi - 博客园 (cnblogs.com)
Hadoop完全分布式搭建过程(详细)_刘先生生的博客-CSDN博客_hadoop完全分布式
安装Hadoop2.10.1相关推荐
- Windows 10下编译安装Hadoop2.6
转自:https://www.linuxidc.com/Linux/2016-08/134131.htm Windows 10下安装Hadoop2.6,Windows10下编译64位Hadoop2.x ...
- CentOS7安装Hadoop2.7完整步骤
总体思路,准备主从服务器,配置主服务器可以无密码SSH登录从服务器,解压安装JDK,解压安装Hadoop,配置hdfs.mapreduce等主从关系. 1.环境,3台CentOS7,64位,Hadoo ...
- CentOS7安装Hadoop2.7完整流程
2019独角兽企业重金招聘Python工程师标准>>> 1.环境,3台CentOS7,64位,Hadoop2.7需要64位Linux,CentOS7 Minimal的ISO文件只有6 ...
- ubuntu14.04安装hadoop2.7.1伪分布式和错误解决
ubuntu14.04安装hadoop2.7.1伪分布式和错误解决 需要说明的是我下载的是源码,通过编译源码并安装 一.需要准备的软件: 1.JDK和GCC 设置JAVA_HOME: ...
- limbo可以运行linux,这次真的了,安卓手机可以安装 Windows 10 了
原标题:这次真的了,安卓手机可以安装 Windows 10 了 上回雷锋哥给大家分享过「安卓可以体验 "Windows 10" 了」实际上就是一个第三方安卓桌面启动器模仿 Wind ...
- windows 如何安装oracle 补丁包,Windows Server 2003 上安装 Oracle10g(10.2.0.1)并升级 至补丁(10.2.0.4) 图解...
Windows Server 2003 上安装 Oracle10g(10.2.0.1)并升级 至补丁(10.2.0.4) 图解 第一部分:安装 Oracle 10.2.0.1 1.选择安装方法 2.选 ...
- 【亲测有效】在win10上如何安装Fortify17.10
Fortify是一款功能强大的源代码安全审计工具,可以进行静态代码扫描来发现源代码中的安全问题. 本文介绍一下如何在win10环境上安装Fortify17.10. [安装包下载] 下载地址:Forti ...
- 新手XP下硬盘安装ubuntu10.10全程解析
http://linux.itwaka.com Ubuntu 10.10在2010年10月正式发布,让众多Ubuntu用户都对这款全新的系统充满期望.毕竟,Ubuntu 10.10是Canonical ...
- 安装python步骤-小白入门:Python安装的10个步骤,极其细致!!
原标题:小白入门:Python安装的10个步骤,极其细致!! 你有没有发现,在自学的时候去群里问大神python怎么安装,基本都不会有人理你,因为他们认为你这问题就跟踩死一只蚂蚁一样简单,都不屑于回答 ...
- page fault in nonpaged area 蓝屏_由于错误的更新,安装Windows 10 KB4549951后蓝屏死机解决办法...
由于错误的更新,Windows 10遭受了更多问题-这可能是最严重的更新,安装Windows 10 KB4549951后,用户报告蓝屏死机错误并删除了文件. Windows 10 KB4549951由 ...
最新文章
- 直接广播地址_计算机网络之网桥、冲突域、广播域是什么?
- 如何在windows7和windows8双系统中卸载windows8
- ios编译与android编译区别是什么,为iOS和Android编译C ++代码(XCode)。 这是真的吗?...
- 《磨难之间》——刻意设计,缺失核心
- 进程创建fork--文件表项继承
- 【Flink】Flink 自定义 trigger并且进行分析
- get_free_page 和其友
- 像A + B一样容易
- 应对互联网变局,这 8 件事必须要做。
- 【mysql】使数据表ID连续的两个方法
- vim 树形目录插件NERDTree安装
- 1.Matlab图像的读取和显示
- 最新Android开发视频教程 Android Studio教程(2017-2018-2019)
- yolov3识别的类别_Yolo3 如何只识别一个类别
- taskkill java进程_windows - Taskkill / f不会杀死进程
- 用路由器打印机显示服务器不存在,打印机连路由器怎么搜索不到
- C++用cmath求平方根和次方
- 计算机论文周记200字通用,寒假周记200字(通用10篇)
- 面试题(二十五)设计模式
- Motorola和Borland结成联盟,以帮助开发者为Motorola下一代无线电话创建应用程序 (转)...
热门文章
- 开源开放 | Gowild 狗尾草“七律”知识图谱进入 OpenKG,开放 8000 万中文百科知识三元组数据...
- 电脑键盘出现计算机,电脑上出现了键盘怎么办
- PHP繁體,php如何实现转繁体
- 怎么把Word文档转换成长图
- hp服务器经常自动重启,惠普电脑经常自动重启的解决方法
- YoungTalk-STM32入门100步-总篇
- PHP 实现微信登录
- springboot微信登陆
- Android 按钮添加音效 + 设置背景音乐
- 读芯术python讲得怎么样_最读网 - 看是用眼,读是用心!