hadoop3.2.2安装

参考:https://zhuanlan.zhihu.com/p/116394945

1 准备机器

集群规划
ip hostanem 配置 服务
192.168.109.151 node1 2c8g master
192.168.109.152 node2 2c4g  
192.168.109.153 node3 2c4g  
       

 

2 给普通用户liucf sudo 权限

三台机器都要

对于linux用户来讲,普通用户的权限是有一定限制的,所以在有些操作的时候,是需要sudo权限的,那么如何在linux下赋予普通用户sudo权限呢?此处将讲解一下方法。

在login我们的系统后,如果是普通用户,我们可以使用su - root来切换到root用户下进行操作,在root用户下,命令行输入 visudo回车即可进入/etc/sudoers下,找到

## Allow root to run any commands anywhere 
root    ALL=(ALL)       ALL

在这个下面添加如下即可

liucf   ALL=(ALL)       ALL

然后保存退出,再次切换到普通用户下,执行sudo命令就可以看到相应的信息了

3 固定集群中每个节点的IP、机器名、IP与机器名的映射

3台都要

hadoop3.2.2安装_第1张图片

4 安装jdk

3台都要

4.1 卸载系统自带的OpenJDK以及相关的java文件  

① 查看系统是否自带JDK 

[liucf@node1 ~]$ java -version
openjdk version "1.8.0_262"
OpenJDK Runtime Environment (build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)
[liucf@node1 ~]$ rpm -qa | grep java
java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
javapackages-tools-3.4.1-11.el7.noarch
tzdata-java-2020a-1.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
[liucf@node1 ~]$ 

② 删除自带jdk

然后将上一步中带openjdk的文件全部删除,具体根据你安装的版本不同,文件也不尽相同,这里以上一步中的文件为例。

[liucf@node2 ~]$ sudo rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64
[liucf@node2 ~]$ sudo rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
[liucf@node2 ~]$ java -version
-bash: /usr/bin/java: No such file or directory
[liucf@node2 ~]$ 

4.2 下载解压jdk1.8到linux机器

[liucf@node1 soft]$ tar -zxvf jdk-8u121-linux-x64.tar.gz -C /home/liucf/soft

4.3 配置JAVA_HOME

[liucf@node1 jdk1.8.0_121]$ sudo vim /etc/profile

 hadoop3.2.2安装_第2张图片

[liucf@node1 jdk1.8.0_121]$ source /etc/profile
[liucf@node1 jdk1.8.0_121]$ java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
[liucf@node1 jdk1.8.0_121]$ 

5 配置SSH无密登录

CentOS7 默认使用RSA加密算法生成密钥对,保存在~/.ssh目录下的id_rsa(私钥)和id_rsa.pub(公钥)。也可以使用“-t DSA”参数指定为DSA算法,对应文件为id_dsa和id_dsa.pub,密钥对生成过程会提示输入私钥加密密码,可以直接回车不使用密码保护。

分发秘钥到各个机器,注意本机也分发一份

[liucf@node2 ~]$ ssh-copy-id -i node1
[liucf@node2 ~]$ ssh-copy-id -i node2
[liucf@node2 ~]$ ssh-copy-id -i node3

6 关闭防火墙

sudo systemctl stop firewalld
sudo systemctl disable firewalld

7 禁用selinux

sudo vim /etc/selinux/config
SELINUX=enforcing --> SELINUX=disabled

8 时钟同步

参照:https://blog.csdn.net/m0_37813354/article/details/105118147

里的 3.4 配置ntp

8 安装并配置Hadoop

下载:https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.2.2/hadoop-3.2.2.tar.gz

8.1 现在单台机器上配置hadoop

[liucf@node1 softfile]$ tar -zxvf hadoop-3.2.2.tar.gz -C /home/liucf/soft

8.2 配置hdfs

8.2.1 core-site.xml


	
	
		fs.defaultFS
		hdfs://node1:8020/
	
	
	
		hadoop.tmp.dir
		/home/liucf/data/dfs/tmp
	

8.2.2 hdfs-site.xml


	
	
		dfs.replication
		2
	
	
	
		dfs.permissions.enabled
		false
		

8.2.3 hadoop-env.sh

export JAVA_HOME=/home/liucf/soft/jdk1.8.0_121

8.2.4 work文件里配置datanode

8.2.5 分发文件到node2,node3

[liucf@node1 soft]$ scp -r hadoop-3.2.2 liucf@node2:/home/liucf/soft
[liucf@node1 soft]$ scp -r hadoop-3.2.2 liucf@node3:/home/liucf/soft

8.2.6 格式化hdfs

[liucf@node1 soft]$ hdfs namenode  -format

8.2.7 启动namenode,datanode

[liucf@node1 soft]$ /home/liucf/soft/hadoop-3.2.2/sbin/hadoop-daemon.sh start namenode
[liucf@node2 data]$ /home/liucf/soft/hadoop-3.2.2/sbin/hadoop-daemon.sh start datanode
[liucf@node3 data]$ /home/liucf/soft/hadoop-3.2.2/sbin/hadoop-daemon.sh start datanode

8.2.8验证

① jps 命令各个机器上查看进程

② web ui 查看

查看端口

[liucf@node1 soft]$ hdfs getconf -confKey dfs.namenode.http-address
0.0.0.0:9870

http://192.168.109.151:9870/

8.3 配置yarn

8.3.1 yarn-site.xml


	
	
		yarn.resourcemanager.hostname
		node1
	
	
	
		yarn.nodemanager.aux-services
		mapreduce_shuffle
	
	
		yarn.nodemanager.aux-services.mapreduce_shuffle.class
		org.apache.hadoop.mapred.ShuffleHandler
	
	
	
		yarn.log-aggregation-enable
		true
	


8.3.2 yarn-env.sh和mapred-env.sh

两个文件里都配置

export JAVA_HOME=/home/liucf/soft/jdk1.8.0_121

8.3.3 分发文件到node2,node3

[liucf@node1 soft]$ scp -r hadoop-3.2.2 liucf@node2:/home/liucf/soft
[liucf@node1 soft]$ scp -r hadoop-3.2.2 liucf@node3:/home/liucf/soft

8.3.4 启动yarn

[liucf@node1 soft]$ /home/liucf/soft/hadoop-3.2.2/sbin/yarn-daemon.sh start resourcemanager
[liucf@node2 data]$ /home/liucf/soft/hadoop-3.2.2/sbin/yarn-daemon.sh start nodemanager
[liucf@node3 data]$ /home/liucf/soft/hadoop-3.2.2/sbin/yarn-daemon.sh start nodemanager

8.3.5 验证

jps 看到进程都在

ResourceManager

NodeManager

hadoop3.2.2安装_第3张图片

完成

 

 

 

 

 

 

你可能感兴趣的:(学习爱好,hadoop)