Hadoop集群的搭建(全网最详细,看了就会)

Hadoop是Apache旗下的一个用java语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。在搭建之前请一定要确保Hadoop集群搭建的前置准备已经完成,详细内容可以参考我的这篇文章。Hadoop安装包链接:https://pan.baidu.com/s/12R1q8ygEnosP9pVbX5rvxg 
提取码:LZZY

http://t.csdn.cn/FzkEShttp://t.csdn.cn/FzkES

 一、上传并解压Hadoop的压缩包

1、上传Hadoop的压缩包到我们的CentOS7系统上去,可以将压缩包直接拖入系统根目录,如图所示。(安装包在百度网盘,需要的小伙伴可以自行获取)。还可以通过我们的wgt命令去从官网下载,不过使用wgt命令下载的话,下载速度是非常慢的,使用小编还是建议大家采取第一种方案去获取我们的Hadoop的压缩包)使用wgt的完整命令在这里:wget http: /archive.apache.org/dist/hadoop/common/hadoop3.1.3/hadoop-3.1.3.tar.g

Hadoop集群的搭建(全网最详细,看了就会)_第1张图片

 2、然后我们就要解压我们的Hadoop压缩包,使用命令:tar -zxvf hadoop-3.1.3.tar.gz -C /export/server/ 将Hadoop压缩包解压至/export/server目录下。正常解压好后是如下图所示,但是有可能会有解压不了的情况,可能是在Hadoop压缩包上传的时候出现了问题。可以虚拟机上的Hadoop的压缩包,在重新上传即可。

Hadoop集群的搭建(全网最详细,看了就会)_第2张图片

3、还是跟之前安装JDK一样,为了后续操作的方便去给Hadoop创建一个软连接。

ln -s /export/server/hadoop-3.1.3 /export/server/hadoop

Hadoop集群的搭建(全网最详细,看了就会)_第3张图片

二、修改Hadoop的配置文件

1、首先进入Hadoop的文件夹中,

cd /export/server/hadoop/etc/Hadoop

可以看见其中有个叫etc的文件,他存放的就是我们的配置文件

 Hadoop集群的搭建(全网最详细,看了就会)_第4张图片

 2、修改配置文件hadoop-env.sh

使用命令:vim hadoop-env.sh 在其开头加上下段代码。

# 配置Java安装路径
export JAVA_HOME=/export/server/jdk
#配置Hadoop安装路径
export HADOOP_HOME=/export/server/hadoop
#Hadoop hdfs配置文件路径
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
#Hadoop YARN配置文件路径
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
# Hadoop YARN 日志文件夹
export YARN_LOG_DIR=$HADOOP_HOME/1ogs/yarn
# Hadoop hdfs 日志文件夹
export HADOOP_LOG_DIR=$HADOOP_HOME/logs/hdfs

# Hadoop的使用启动用户配置
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
export YARN_PROXYSERVER_USER=root

插入好后入下图所示,然后保存退出。(vim编辑器保存方式是在末行模式下点击esc键进入命令模式,然后输入:在输入wq这里表示推出,q表示保存。后面我会在单独出发布一篇vim编辑器的使用方法以及常用命令)

Hadoop集群的搭建(全网最详细,看了就会)_第5张图片

3、修改配置文件core-site.xml 将下面代码替代core-site.xml里的所有代码








        
                fs.defaultFS
                hdfs://master:8020
        

        
                io.file.buffer.size
		131072
		
        

Hadoop集群的搭建(全网最详细,看了就会)_第6张图片

4、修改配置文件hdfs-site.xml将下面代码替代hdfs-site.xml里的所有代码









	
		dfs.datanode.data.dir.perm
		700
	

	
		dfs.namenode.name.dir
		/data/nn
		Path on the local filesystem where the NameNode stores the namespace and transactions logs persistently.
	

	
		dfs.namenode.hosts
		node1,node2,node3
		List of permitted DataNodes.
	

	
		dfs.blocksize
		268435456
		
	

	
		dfs.namenode.handler.countL
		100
		
	

	
		dfs.datanode.data.dir
		/data/dn
	

Hadoop集群的搭建(全网最详细,看了就会)_第7张图片

 5、修改配置文件mapred-env.sh 将下面代码加入mapred-env.sh的开头

export JAVA_HOME=/export/server/jdk
export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=1000
export HADOOP_MAPRED_ROOT_LOGGER=INFO,RFA

Hadoop集群的搭建(全网最详细,看了就会)_第8张图片

6 、修改配置文件mapred-site.xml将下面代码替换mapred-site.xml的所有代码








	
		yarn.log.server.url
		http: /node1:19888/jobhistory/logs
		
	

	
		yarn.web-proxy.address
		node1:8089
		proxy server hostname and port
	

	
		yarn.log-aggregation-enable
		true
		Configuration to enable or disable log aggregation
	

	
		yarn.nodemanager.remote-app-logdir
		/tmp/logs
		Configuration to enable or disable log aggregation
	

	
		yarn.resourcemanager.hostname
		node1
		
	

	
		yarn.resourcemanager.scheduler.class
		org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler

		
	

	
		yarn.nodemanager.local-dirs
		/data/nm-local
		Comma-separated list of paths on the local filesystem where intermediate data is written.
	

	
		yarn.nodemanager.log-dirs
		/data/nm-log
		Comma-separated list of paths on the local filesystem where logs are written.
	

	
		yarn.nodemanager.log.retainseconds
		10800
		Default time (in seconds) to retain log files on the NodeManager Only applicable if log-aggregation is disabled.
	

	
		yarn.nodemanager.aux-services
		mapreduce_shuffle
		Shuffle service that needs to be set for Map Reduce applications. 

	

Hadoop集群的搭建(全网最详细,看了就会)_第11张图片

 9、在配置文件workers插入如下代码

node1
node2
node3

Hadoop集群的搭建(全网最详细,看了就会)_第12张图片

三、搭建Hadoop

1、将Hadoop分发给其他虚拟机,此过程只用在node1中操作即可。使用命令:cd /export/server进入我们Hadoop安装目录

分发给node2

scp -r hadoop-3.1.3 node2:`pwd`/ 

Hadoop集群的搭建(全网最详细,看了就会)_第13张图片分发给node3

scp -r hadoop-3.1.3 node3:`pwd`/

2、分发好后,还是同样操作在node2,node3中创建Hadoop软链接

ln -s /export/server/hadoop-3.1.3 /export/server/hadoop

Hadoop集群的搭建(全网最详细,看了就会)_第14张图片

 3、创建工作目录。

在node1中分别创建以下目录

mkdir -p /data/nn
mkdir -p /data/dn
mkdir -p /data/nm-log 
mkdir -p /data/nm-local

 在node2中分别创建以下目录

mkdir -p /data/dn 
mkdir -p /data/nm-log 
mkdir -p /data/nm-local

  在node3中分别创建以下目录

mkdir -p /data/dn 
mkdir -p /data/nm-log 
mkdir -p /data/nm-local

 4、配置环境变量

在node1、node2、node3修改/etc/profile 将下面代码复制到/etc/profile文件最下面

export HADOOP_HOME=/export/server/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

Hadoop集群的搭建(全网最详细,看了就会)_第15张图片

 注意,需要在三台虚拟机中都要执行此操作。保存退出后还要执行命令:source /etc/profile使其生效

 4、格式化NameNode

在node1中操作即可,使用命令: hadoop namenode -formathadoop 这个命令来自于:$HADOOP_HOME/bin中的程序 由于配置了环境变量PATH,所以可以在任意位置执行hadoop命令哦

Hadoop集群的搭建(全网最详细,看了就会)_第16张图片

 四、启动Hadoop集群

1、启动hadoop的hdfs集群,在node1执行即可

start-dfs.sh
 # 如需停止可以执行 
stop-dfs.sh

Hadoop集群的搭建(全网最详细,看了就会)_第17张图片

2、启动hadoop的yarn集群,在node1执行即可

start-yarn.sh
# 如需停止可以执行 
stop-yarn.sh

Hadoop集群的搭建(全网最详细,看了就会)_第18张图片

 3、启动历史服务器

mapred -daemon start historyserver 
# 停止命令
mapred -daemon stop historyserver

Hadoop集群的搭建(全网最详细,看了就会)_第19张图片

 注意:如果ips后发现没有启动历史服务器可以进入hadoop目录下的sbin输入如下命令(mr-jobhistory-daemon.sh start historyserver)

 4、启动web代理服务器

yarn-daemon.sh start proxyserver
#停止命令
yarn-daemon.sh stop proxyserver

Hadoop集群的搭建(全网最详细,看了就会)_第20张图片

 五、验证Hadoop集群搭建是否成功

1、 node1 node2 node3 上通过 jps 验证进程是否都启动成功
Hadoop集群的搭建(全网最详细,看了就会)_第21张图片

到这里我们的Hadoop集群就已经搭建完毕了,感谢您阅读我的博客!希望本文能够给您带来新的思考和启发。如果您对本文中的观点有任何疑问或者想要深入讨论的话题,请随时在评论区留言,我会尽力回答。期待与您共同探索更多有趣的话题,下次见!

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