hadoop完全分布配置

目录

一、大数据平台的搭建

1. 架构设计

   2 服务器集群的搭建

(1)bashrc文件重要性:

​编辑

(2)配置HDFS操作系统   (配置hadoop之前先要将hdfs弄好,可以用第9步验证一下)

(3)配置hadoop(本文章重点)


一、大数据平台的搭建

1. 架构设计

本实验采用完全分布式集群架构,由三台 Linux 虚拟机组成大数据实验环境。集群采用主从架构模式,其中 master 节点作为集群主节点,承担 NameNode、ResourceManager、HMaster 等核心服务;slave1 和 slave2 节点作为从节点,承担 DataNode、NodeManager、HRegionServer 等数据存储与计算任务。

(2)服务器节点规划

主机名   IP地址   用户       主要角色      部署服务

master   192.168.1.121      QYX 主节点   NameNode、SecondaryNameNode、ResourceManager、HMaster、Hive、MySQL、Zookeeper(Leader)

slave1    192.168.1.122      QYX 从节点1 DataNode、NodeManager、HRegionServer、Zookeeper(Follower)

slave2    192.168.1.123      QYX 从节点2 DataNode、NodeManager、HRegionServer、Zookeeper(Follower)

   2 服务器集群的搭建

(1)bashrc文件重要性:

在master上面创建QYX用户并配置bashrc文件

bashrc文件是全局的文件,不管你之后配置jdk,java,hadoop,hive,hbase,zookeeper等这些都要配置路径在里面,所以之后连接不成功,可能是因为这个里面的路径不正确

hadoop完全分布配置

在弄之前可以先做ssh免密,比较方便

我的这些关于集群的这些都解压到在/usr/local下面(这样之后创建新用户需要改的配置就不多了)

hadoop完全分布配置

2)配置HDFS操作系统   (配置hadoop之前先要将hdfs弄好,可以用第9步验证一下)

弄HDFS顺序:

顺序       步骤       说明

1     配置 core-site.xml     设置 fs.defaultFS(HDFS 入口地址)、hadoop.tmp.dir

2     配置 hdfs-site.xml      设置 dfs.replication(副本数)、dfs.namenode.name.dir、dfs.datanode.data.dir

3     创建本地数据目录      创建 NameNode 和 DataNode 的本地存储目录

4     修改目录所有者  chown -R QYX:QYX 确保 QYX 用户有权限

5     格式化 NameNode    hdfs namenode -format -force(只在 master 执行一次)

6     启动 HDFS   start-dfs.sh 或 start-all.sh

7     验证 HDFS 进程 jps 查看 NameNode、DataNode、SecondaryNameNode

8     验证 HDFS 状态 hdfs dfsadmin -report

9     验证 HDFS 基本操作 hdfs dfs -ls /、hdfs dfs -mkdir、hdfs dfs -put

(3)配置hadoop(本文章重点)

我的hadoop版本3.4.1

jdk1.8

Hadoop 配置的正确顺序  (步骤前面有“#”的表示下面有图片)
顺序 步骤 说明
1 安装 Hadoop 解压到 /usr/local/hadoop
2 修改安装目录所有者 sudo chown -R QYX:QYX /usr/local/hadoop 

(这一步是因为我新创建了用户,但是我的hadoop在/usr/local下面,所以可以通过修改目录所持有者,然后新用户就可以用之前的hadoop了)

#3 配置 ~/.bashrc 设置 HADOOP_HOME、JAVA_HOME、PATH
#4 配置 core-site.xml 设置 fs.defaultFS(master:8020)、hadoop.tmp.dir
#5 配置 hdfs-site.xml 设置 dfs.replication、dfs.namenode.name.dir、dfs.datanode.data.dir
#6 配置 yarn-site.xml 设置 yarn.resourcemanager.hostname(master)
#7 配置 mapred-site.xml 设置 mapreduce.framework.name(yarn)
#8 配置 workers(或 slaves) 写入 slave1、slave2
#9 配置 /etc/hosts 三台机器的 IP 与主机名映射
#10 同步配置到 slave1、slave2 复制 Hadoop 配置文件和 /etc/hosts
#11 格式化 NameNode hdfs namenode -format -force
#12 启动集群 start-all.sh

(如果单独的某个点,比如datanode没有启动成功,可以先将它单独启动一下,先验证hadoop是否可以成功,之后再解决不能自动启动的问题)

#13 验证集群 jps、hdfs dfsadmin -report、hdfs dfs -ls /

Master弄hadoop:

配置 workers 文件:

hadoop完全分布配置

hadoop完全分布配置

hadoop完全分布配置

配置 /etc/hosts

hadoop完全分布配置

hadoop完全分布配置

hadoop完全分布配置

创建文件hadoop_data相关文件:

Master:

hadoop完全分布配置

Slave1:

hadoop完全分布配置

hadoop完全分布配置

Slave2:

hadoop完全分布配置

配置hdfs-site.xml 中的副本数:

hadoop完全分布配置

这个注意<value>file:/home/QYX/hadoop_data/hdfs/data</value>  要换成你们自己的,QYX是我的用户名,hadoop_data是我的hadoop存放数据的文件夹,你们要看看你们的是什么

hadoop完全分布配置

hadoop完全分布配置

改 core-site.xml:  master

hadoop完全分布配置

1.这个注意<value>/home/QYX/hadoop_data/tmp</value>  要换成你们自己的   QYX是我的用户名,hadoop_data是我的hadoop存放数据的文件夹,你们要看看你们的是什么

2.这里还有一个关键的点就是现在比较新的hadoop的master接口是 8020,不是 9000了,有时候发现用不了hadoop,这个接口错了,也是个比较容易忽略的点,但是又很关键

hadoop完全分布配置

Slave1上面:

hadoop完全分布配置

注意:接口是8020  和<value>的地址,改成你们自己的,下面的都是不再复述

hadoop完全分布配置

Slave2上面:

hadoop完全分布配置

hadoop完全分布配置

之后的master,Slave1,slave2都是一样的仅展示master的:

配置 hdfs-site.xml:

hadoop完全分布配置

hadoop完全分布配置

配置yarn-site.xml:

hadoop完全分布配置

hadoop完全分布配置

配置mapred-site.xml:

hadoop完全分布配置

hadoop完全分布配置

查看 hadoop-env.sh 中的 配置内容:JAVA_HOME是一定要配置对的(需要指向你的java根目录)

hadoop完全分布配置

hadoop完全分布配置

hadoop完全分布配置

进行格式化:

hadoop完全分布配置

hadoop完全分布配置

启动集群并查看jps:

hadoop完全分布配置

hadoop完全分布配置

hadoop完全分布配置

hadoop完全分布配置

下面这个很关键,有时候jps没问题,但实际上不能用,是因为hadoop没有真连接成功,可以用下面这个看是否真正的连接成功

hdfs dfsadmin -report

将结果复制给ai,他会告诉你是否真正的连接上了

hadoop完全分布配置

hadoop完全分布配置

验证一下hdfs基本操作:

hadoop完全分布配置

对于配置来说,弄对地址很关键,很关键,很关键,重要的事说三遍

如果你也不了解你的地址,那就问ai你到底想知道什么地址,让ai将查询地址的代码指令给你,然后自己复制粘贴就可以找到了

如果需要hbase,zookeeper,hive等配置的步骤,请看我的其他文章

 我的关于完全分布式的文章:

完全分布–配置hadoop:hadoop

完全分布–配置hbase:hbase

完全分布–配置zookeeper:zookeeper

完全分布–配置hive:hive

© 版权声明

相关文章