大数据Hadoop集群搭建 1(伪分布式集群)

目录

Hadoop集群简介

Hadoop集群具体来说包含两个集群:HDFS集群和YARN集群。

Hadoop集群的部署方式分为三种,分别是单机模式、伪分布式模式和完全分布式模式。

环境搭建

1.修改主机名

2.修改时区

 4.配置ssh免密

 5.安装Hadoop

 目录结构

配置文件说明

主要配置文件

搭建HDFS伪分布式集群

 配置Hadoop系统环境变量

搭建YARN伪分布式集群


Hadoop集群简介

Hadoop集群具体来说包含两个集群:HDFS集群和YARN集群。

(1)HDFS集群:负责海量数据的存储,集群中的主要角色有:NameNode(一个,master)、DataNode(若干,slave)和SecondaryNameNode(一个)。

(2)YARN集群:负责海量数据运算的资源调度,集群中的角色主要有:ResourceManager(一个,master)和NodeManager(若干,slave)。

Hadoop集群的部署方式分为三种,分别是单机模式、伪分布式模式和完全分布式模式。

(1)单机模式:又称为独立模式,在该模式下,无需运行任何守护进程,所有的程序都在单个JVM上执行。单机模式下调试Hadoop集群的MapReduce程序非常方便,所以一般情况下,该模式在学习或者开发阶段调试使用。

(2)伪分布式模式:Hadoop程序的守护进程运行在一台主机节点上,通常使用伪分布式模式来调试Hadoop分布式程序的代码,以及程序执行是否正确,伪分布式是完全分布式模式的一个特例。

(3)完全分布式模式:Hadoop的守护进程分别运行在由多个主机搭建的集群上,不同节点担任不同的角色,在实际应用开发中,通常使用该模式构建企业级Hadoop系统。

环境搭建

1.修改主机名

hostnamectl set-hostname hadoop000

 

2.修改时区

tzselect

大数据Hadoop集群搭建 1(伪分布式集群)_第1张图片

3.安装JDK

wget https://download.oracle.com/java/19/latest/jdk-19_linux-x64_bin.tar.gz

因为个人习惯故用 -C 参数选择解压到指定路径

tar -zxvf jdk-19_linux-x64_bin.tar.gz -C /home/currify/software/jdk

修改系统配置文件

vim /etc/profile

在结尾添加如下代码段(第二行JAVA_HOME后接JDK安装路径)

export PATH=$PATH:JAVA_HOME/bin
export JAVA_HOME=/home/currify/software/jdk/jdk-19.0.1
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/

大数据Hadoop集群搭建 1(伪分布式集群)_第2张图片

 

生效环境变量

source /etc/profile

检查JDK是否安装成功

java -version

 4.配置ssh免密

SSH为Security Shell(安全外壳协议)的缩写。

SSH是一种网络协议,用于计算机之间的加密登录。很多ftp、pop和telent在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,很多不法分子非常容易就可以截获这些口令和数据。

SSH就是专为远程登录会话和其他网络服务提供安全性的协议。

安装ssh服务

yum install openssh-server

大数据Hadoop集群搭建 1(伪分布式集群)_第3张图片

 开启ssh服务

systemctl start sshd

生成密钥对

ssh-keygen

或者

ssh-keygen -t rsa

大数据Hadoop集群搭建 1(伪分布式集群)_第4张图片

 将公钥文件放置到授权列表文件authorized_keys中

cp id_rsa.pub authorized_keys

大数据Hadoop集群搭建 1(伪分布式集群)_第5张图片

修改授权列表文件authorized_keys的权限

chmod 600 authorized_keys

大数据Hadoop集群搭建 1(伪分布式集群)_第6张图片

 验证是否成功配置ssh免密

ssh hadoop000

 5.安装Hadoop

wget https://mirrors.cnnic.cn/apache/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz
tar -zxvf hadoop-3.3.4.tar.gz -C /home/currify/software/hadoop

 目录结构

(1)bin:存放操作Hadoop相关服务(HDFS、YARN)的脚本,但是通常使用sbin目录下的脚本。

(2)etc:存放Hadoop配置文件。

(3)include:对外提供的编程库头文件(具体动态库和静态库在lib目录中)。

(4)lib:该目录包含了Hadoop对外提供的编程动态库和静态库。

(5)libexec:各个服务对应的shell配置文件所在的目录。

(6)sbin:该目录存放Hadoop管理脚本,主要包含HDFS和YARN中各类服务的启动/关闭脚本。

(7)share:Hadoop各个模块编译后的jar包所在的目录。

配置文件说明

(1)一种是只读的默认配置文件,包括core-default、hdfs-default.xml、mapred-default.xml和yarn-default.xml,这些文件包含了Hadoop系统各种默认配置参数。

(2)另一种是Hadoop集群自定义配置时编辑的配置文件,包括hadoop-env.sh、yarn-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml和slaves共7个文件,可以根据需要在这些文件中对默认配置文件中的参数进行修改,Hadoop会优先选择这些配置文件中的参数。

主要配置文件

配置文件 功能描述
hadoop-env.sh 配置Hadoop运行所需的环境变量
yarn-env.sh 配置YARN运行所需的环境变量
core-site.xml Hadoop核心全局配置文件,可在其它配置文件中引用该文件
hdfs-site.xml HDFS配置文件,继承core-site.xml配置文件
mapred-site.xml MapReduce配置文件,继承core-site.xml配置文件
yarn-site.xml YARN配置文件,继承core-site.xml配置文件
slaves

Hadoop集群所有从节点(DataNode和NodeManager)列表

搭建HDFS伪分布式集群

设置 HADOOP 环境变量

vim ~/.bashrc

 在最后添加

# Hadoop Environment Variables
export HADOOP_HOME=/home/currify/software/jdk/jdk-19.0.1
export HADOOP_INSTALL=$HADOOP_HOME
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/bin

生效环境变量 

source ~/.bashrc

配置环境变量hadoop-env.sh

vim /home/currify/software/hadoop/hadoop-3.3.4/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/home/currify/software/jdk/jdk-19.0.1

大数据Hadoop集群搭建 1(伪分布式集群)_第7张图片

配置核心组件core-site.xml 

vim /home/currify/software/hadoop/hadoop-3.3.4/etc/hadoop/core-site.xml

将以下内容添加



hadoop.tmp.dir
file:/usr/soft/hadoop/tmp
Abase for other temporary directories.


fs.defaultFS
hdfs://localhost:9000


大数据Hadoop集群搭建 1(伪分布式集群)_第8张图片

 

 配置核心组件hdfs-site.xml

该文件主要用于配置HDFS相关的属性,例如复制因子(即数据块的副本数)、NameNode和DataNode用于存储数据的目录等。在完全分布式模式下,默认的块副本是3份。

vim /home/currify/software/hadoop/hadoop-3.3.4/etc/hadoop/hdfs-site.xml

将以下内容加入


        
                dfs.replication
                1
        

        
                dfs.namenode.name.dir
                file:/usr/soft/hadoop/tmp/dfs/name
        

        
                dfs.datanode.data.dir
                file:/usr/soft/hadoop/tmp/dfs/data
        



        
                dfs.secondary.http.address
                
                dfs://localhost:50070
        


大数据Hadoop集群搭建 1(伪分布式集群)_第9张图片

 

 配置Hadoop系统环境变量

vim /etc/profile

在底部加入 

export HADOOP_HOME=/home/currify/software/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

生效环境变量

source /etc/profile

检查是否安装成功

hadoop version

 初次启动HDFS集群时,必须对主节点进行格式化处理

hdfs namenode -format

大数据Hadoop集群搭建 1(伪分布式集群)_第10张图片

 启动NameNode

hdfs namenode start

启动DataNode

hdfs datanode start

搭建YARN伪分布式集群

配置环境变量yarn-env.sh,加入JDK路径

export JAVA_HOME=/home/currify/software/jdk/jdk-19.0.1

配置mapred-site.xml


	
		mapreduce.framework.name
		yarn
	
	
		mapred.job.tracker.http.address
		0.0.0.0:50030
	

	
		mapred.task.tracker.http.address
		0.0.0.0:50060
	

	
		mapreduce.admin.user.env
		HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME
	
	
		yarn.app.mapreduce.am.env
		HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME
	

配置yarn-site.xml



        
                 yarn.resourcemanager.hostname
                
                hdfs://localhost:9000
        
        
        
                yarn.nodemanager.aux-services
                mapreduce_shuffle
        


单节点逐个启动YARN集群进行测试

yarn resourcemanager start
yarn nodemanager start

你可能感兴趣的:(hadoop,分布式,大数据,运维开发)