CentOS7下Hadoop分布式环境搭建过程

简介: CentOS7下Hadoop分布式环境搭建过程

640.png


先准备如下三台虚拟服务器

Hadoop中心服务器 192.168.31.160

节点Node1:192.168.31.161

节点Node2:192.168.31.162


640.png


1、三台服务器均需要安装JDK8,然后配置环境变量


1)安装jdk rpm -ivh jdk-8u221-linux-x64.rpm  

2)配置环境变量vi /etc/profile,将如下三行加到最后

export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

3)使生效source /etc/profile


640.png


2、并且在每台节点上面全创建一个hadoop用户,设置用户密码(我这里三台均设置为hadoop)

[root@Hadoop ~]# useradd -d /usr/hadoop hadoop
[root@Hadoop ~]# chmod 755 /usr/hadoop
[root@Hadoop ~]# passwd hadoop

640.png


3、均使用hadoop用户登录服务器,然后在主节点上设置ssh免密登录,保证能直接免密登录到三台节点上

su - hadoop
ssh-keygen
ssh-copy-id localhost
ssh-copy-id 192.168.31.161
ssh-copy-id 192.168.31.162

640.jpg


4、在三台服务器上传hadoop安装包,均解压hadoop包到/usr/hadoop目录,进行如下操作

tar -zxf hadoop-3.1.2.tar.gz -C /usr/hadoop --strip-components 1
vi ~/.bash_profile
追加
export HADOOP_HOME=/usr/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
 source ~/.bash_profile使生效

640.png


5、使用hadoop用户登录到主节点,配置hadoop的相关配置文件

[hadoop@Hadoop ~]$ vi ~/etc/hadoop/hdfs-site.xml

640.png


1)hdfs-site.xml
  <property>
    <name>dfs.replication</name>
    <value>2</value>
  </property>
  <property>
    <name>dfs.datanode.data.dir</name>
    <value>file:///usr/hadoop/datanode</value>
  </property>
  <property>
    <name>dfs.namenode.name.dir</name>
    <value>file:///usr/hadoop/namenode</value>
  </property>

640.png

2)core-site.xml
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://Hadoop:9000/</value>
  </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/hadoop/tmp</value>
    </property>

640.png

3)yarn-site.xml
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>Hadoop</value>
  </property>
  <property>
    <name>yarn.nodemanager.hostname</name>
    <value>Hadoop</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>

640.png

4)mapred-site.xml
 <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
    <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=/usr/hadoop/</value>
    </property>
    <property>
        <name>mapreduce.map.env</name>
        <value>HADOOP_MAPRED_HOME=/usr/hadoop/</value>
    </property>
    <property>
        <name>mapreduce.reduce.env</name>
        <value>HADOOP_MAPRED_HOME=/usr/hadoop/</value>
    </property>

640.png

5)hadoop-env.sh


取消export JAVA_HOME注释,并修改


export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64

640.png

6)workers


640.png


7)接下来切换到root用户vi编辑/etc/hosts


640.png


8)创建datanode和namenode目录

640.png


在主节点编辑完成之后,直接scp发送给Node1,Node2节点

scp ./etc/hadoop/* Node1:~/etc/hadoop/
scp ./etc/hadoop/* Node2:~/etc/hadoop/

9)分别在 start-dfs.sh 和 stop-dfs.sh 中添加如下内容

HDFS_DATANODE_USER=hadoop
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=hadoop
HDFS_SECONDARYNAMENODE_USER=hadoop

别在 start-yarn.sh 和 stop-yarn.sh 中添加如下内容

YARN_RESOURCEMANAGER_USER=hadoop
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=hadoop


640.png

6、hadoop服务启动以及相关操作

hdfs namenode -format

然后start-dfs.sh,start-yarn.sh或者直接start-all.sh启动hadoop

jps查看状态,或者http://192.168.31.160:9870查看集群状态

640.png


7、mapreduce样例测试

[hadoop@Hadoop ~]$ hadoop fs -mkdir /test                      
[hadoop@Hadoop ~]$ hadoop fs -put /usr/hadoop/test.log /test


640.png

640.png

hadoop fs -ls -R /
hadoop fs -cat /output01/part-r-00000

640.png

640.jpg

目录
打赏
0
0
0
0
38
分享
相关文章
CentOS中构建高可用Hadoop 3集群
这个过程像是在一个未知的森林中探索。但当你抵达终点,看到那个熟悉的Hadoop管理界面时,所有的艰辛都会化为乌有。仔细观察,尽全力,这就是构建高可用Hadoop 3集群的挑战之旅。
134 21
|
3月前
|
CentOS环境搭建Elasticsearch集群
至此,您已成功在CentOS环境下搭建了Elasticsearch集群。通过以上介绍和步骤,相信您对部署Elasticsearch集群有了充分的了解。最后祝您在使用Elasticsearch集群的过程中顺利开展工作!
212 22
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
本文详细介绍了在VMware虚拟机中安装CentOS 6.8的全过程。首先,需确保已安装VMware并开启V-CPU虚拟化功能,可通过BIOS设置或使用LeoMoon CPU-V工具检测。接着,下载CentOS镜像文件,并在VMware中新建虚拟机,配置CPU、内存、硬盘等参数。最后,加载ISO镜像启动虚拟机,按照提示完成CentOS的安装,包括语言、键盘、存储方式、地区、密码设置及硬盘分区等步骤。安装完成后,以root用户登录即可进入系统桌面,开始学习Linux命令和操作。
487 12
零基础保姆级教程!手把手教你免费玩转Linux CentOS安装+学习环境搭建(附避坑指南)
基于Java的Hadoop文件处理系统:高效分布式数据解析与存储
本文介绍了如何借鉴Hadoop的设计思想,使用Java实现其核心功能MapReduce,解决海量数据处理问题。通过类比图书馆管理系统,详细解释了Hadoop的两大组件:HDFS(分布式文件系统)和MapReduce(分布式计算模型)。具体实现了单词统计任务,并扩展支持CSV和JSON格式的数据解析。为了提升性能,引入了Combiner减少中间数据传输,以及自定义Partitioner解决数据倾斜问题。最后总结了Hadoop在大数据处理中的重要性,鼓励Java开发者学习Hadoop以拓展技术边界。
216 7
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
463 64
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
553 63
【C++】CentOS环境搭建-安装log4cplus日志组件包及报错解决方案
通过上述步骤,您应该能够在CentOS环境中成功安装并使用log4cplus日志组件。面对任何安装或使用过程中出现的问题,仔细检查错误信息,对照提供的解决方案进行调整,通常都能找到合适的解决之道。log4cplus的强大功能将为您的项目提供灵活、高效的日志管理方案,助力软件开发与维护。
340 0
Hadoop-32 ZooKeeper 分布式锁问题 分布式锁Java实现 附带案例和实现思路代码
Hadoop-32 ZooKeeper 分布式锁问题 分布式锁Java实现 附带案例和实现思路代码
147 2
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
Hadoop-27 ZooKeeper集群 集群配置启动 3台云服务器 myid集群 zoo.cfg多节点配置 分布式协调框架 Leader Follower Observer
185 1
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
127 0
登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问