linux服务配置 安装部署Hadoop大数据数据库

一、Hadoop简介

1.什么是Hadoop

Hadoop是一个开源的框架,可编写和运行分布式应用处理大规模数据,是专为离线和大规模数据分析而设计的。

2.Hadoop的核心架构

Hadoop Common:提供基础设施;
Hadoop HDFS:(Hadoop Distributed File System)一个高可靠、高吞吐量的分布式文件系统
Hadoop MapReduce:一个分布式的离线并行计算框架
Hadoop Yarn:(Yet Another Resource Negotiator)一个新的MapReduce框架,负责任务调度及资源管理

3.HDFS的架构

NameNode:为主节点,作用是储存文件的元数据(文件属性、文件目录等信息);
DataNode:负责储存文件块数据及其校验
Secondary NameNode:用来监控HDFS状态的辅助后台程序,会每隔一段时间获取HDFS元数据的快照。

4.YARN的架构

ResourceManager:负责处理客户端请求、启动/监控ApplicationMaster、监控NodeManager以及资源分配及调度
ApplicationMaster:负责数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错
NodeManager:为单节点上的资源管理器,负责处理来自ResourceManager和ApplicationMaster的命令
Container:对任务进行环境的抽象,封装了CPU、内存等多维资源以及任务运行相关信息 (服务于NodeManager)

二、Hadoop配置(CentOS 7 linux系统)

1.环境准备及节点规划
IP=192.168.189.128IP=192.168.189.130IP=192.168.189.132
HDFS:NameNode、Secondary NameNodeHDFS:DataNodeHDFS:DataNode
YARN:ResourceManagerYARN:NodeManagerYARN:NodeManager
主机名:server主机名:web01.saltstack.com主机名:web02.saltstack.com
2.官网下载Hadoop安装包

Hadoop官网:http://hadoop.apache.org/
Download----选择版本,点击”source”----点击网址即可下载
在这里插入图片描述

3.上传软件包到Linux(rz),并解压
mkdir /root/hadoop/   #建立安装目录
tar -xvf hadoop-3.1.2.tar.gz -C /root/hadoop
4.安装较新版本的JDK

下载软件包 jdk-8u211-linux-x64.tar.gz(其它版本也可)

tar -xvf jdk-8u211-linux-x64.tar.gz -C /root/hadoop

#卸载旧版JDK
rpm -qa|grep jdk
rpm -e 包全名      #依次删除即可

#改名
mv jdk1.8.0_211 jdk1.8.0-211

#配置环境变量
vim /etc/profile
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
export JAVA_HOME=/root/hadoop/jdk1.8.0-211

#立即生效配置
source /etc/profile

#验证
[root@server ~]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
5.修改Hadoop配置文件
#切换到hadoop目录,方便修改
cd /root/hadoop/hadoop-3.1.2/

#修改JDK安装路径
vim etc/hadoop/hadoop-env.sh
37 JAVA_HOME=/root/hadoop/jdk1.8.0-211

#指定HDFS主节点所在机器以及端口号(默认9000)
vim etc/hadoop/core-site.xml
<configuration>
   <property>
      <name>fs.defaultFS</name>
      <value>hdfs://server:9000</value> #server为主机名,要对应修改
   </property>
</configuration>    

#指定副本数量(默认为1,只要不超过Node数即可)
vim etc/hadoop/hdfs-site.xml
<configuration>
  <property>
    <name>dfs.replication</name>
    <value>2</value>   #副本数量
  </property>
  <property>
    <name>dfs.http.address</name>   #web访问页面及端口
    <value>server:50070</value>
  </property>    
</configuration>

#指定mapreduce在yarn上运行以及资源路径
vim etc/hadoop/mapred-site.xml  
<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
  <property>
    <name>mapreduce.application.classpath</name>
    <value>/root/hadoop/hadoop-3.1.2/share/hadoop/mapreduce/*:/root/hadoop/hadoop-3.1.2/share/had    oop/mapreduce/lib/*</value>   #这里的路径要与自己安装的路径对应
  </property>
</configuration> 

#指定shuffle链接以及从节点环境变量
vim etc/hadoop/yarn-site.xml 
<configuration>
    <property>
         <name>yarn.nodemanager.aux-services</name>
         <value>mapreduce_shuffle</value>
    </property>
    <property>
         <name>yarn.nodemanager.env-whitelist</name>                                 
         <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCA    CHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
</configuration>

#配置从节点位置
vim etc/hadoop/workers   #写从节点的主机名或IP
 web01.saltstack.com
 web02.saltstack.com                                                                                  
6.server端关闭防火墙以及SELinux
iptables -F   #清除防火墙规则
setenforce 0
7.复制Hadoop、jdk文件夹到从节点位置
#在相应的从节点同样的位置创建目录
mkdir /root/hadoop

#删除hadoop中的不重要的文件,加快复制速度
rm -rf /root/hadoop/hadoop-3.1.2/share/doc

#scp复制文件夹到130、132主机上
scp -r /root/hadoop/hadoop-3.1.2/ 192.168.189.130:/root/hadoop
scp -r /root/hadoop/hadoop-3.1.2/ 192.168.189.132:/root/hadoop
scp -r /root/hadoop/jdk1.8.0-211/ 192.168.189.130:/root/hadoop
scp -r /root/hadoop/jdk1.8.0-211/ 192.168.189.132:/root/hadoop
8.测试前从节点配置

(1)关闭相应的防火墙以及SELinux;
(2)在 /etc/profile 下配置JDK环境变量

9.测试前server端配置(防止报错)
(1)设置三台机器免密登录(解决Permission denied错误)
ssh-keygen #生成公钥
ssh-copy-id root@192.168.189.128
ssh-copy-id root@192.168.189.130
ssh-copy-id root@192.168.189.132

#ssh验证
ssh root@192.168.189.128
ssh root@192.168.189.130
ssh root@192.168.189.132
#达到互相可以无密码登录的效果即可
(2)编辑dfs脚本(解决no……definied问题)
cd /root/hadoop/hadoop-3.1.2/
vim sbin/start-dfs.sh stop-dfs.sh  #需要同时修改启动和关闭脚本
#在开头添加如下信息
 #!/usr/bin/env bash
 HDFS_NAMENODE_USER=root
 HDFS_DATANODE_USER=root
 HDFS_SECONDARYNAMENODE_USER=root
 HADOOP_SECURE_USER=hdfs  
(3)编辑yarn脚本(解决no……definied问题)
vim sbin/start-yarn.sh stop-yarn.sh  #需要同时修改启动和关闭脚本
#在开头添加如下信息
  #!/usr/bin/env bash
  YARN_RESOURCEMANAGER_USER=root                                                                       
  YARN_NODEMANAGER_USER=root
  HADOOP_SECURE_DN_USER=yarn 
10.测试验证Hadoop集群
(1)server端执行启动脚本
[root@server hadoop-3.1.2]# sbin/start-dfs.sh
Starting namenodes on [server]
上一次登录:六 5月 15 14:09:01 CST 2021从 192.168.189.1pts/1 上
Starting datanodes
上一次登录:六 5月 15 15:02:44 CST 2021pts/1 上
Starting secondary namenodes [server]
上一次登录:六 5月 15 15:02:48 CST 2021pts/1 上
(2)jps查看节点
#IP=192.168.189.128
[root@server hadoop-3.1.2]# jps
13713 SecondaryNameNode
13857 Jps
13418 NameNode

#IP=192.168.189.130
[root@web01 ~]# jps
1776 DataNode
1846 Jps

#IP=192.168.189.132
[root@web02 ~]# jps
8760 Jps
8234 DataNode
(3)web访问Hadoop界面

浏览器访问192.168.189.128:50070 或 server:50070
在这里插入图片描述
在这里插入图片描述
可以看到Hadoop的web管理界面
证明Hadoop配置成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值