做苗木网站哪个公司好,wordpress页面生成二维码,郑州定制网站,长沙网站建设 网站设计一、集群组成概述
Hadoop集群包括两个集群#xff1a;HDFS集群、YARN集群
两个集群逻辑上分离、通常物理上在一起
两个集群都是标准的主从架构集群
HDFS集群#xff08;分布式存储#xff09;#xff1a;
主角色#xff1a;NameNode从角色#xff1a;DataNode主角色…一、集群组成概述
Hadoop集群包括两个集群HDFS集群、YARN集群
两个集群逻辑上分离、通常物理上在一起
两个集群都是标准的主从架构集群
HDFS集群分布式存储
主角色NameNode从角色DataNode主角色辅助角色SecondaryNameNode
YARN集群资源管理调度
主角色ResourceManager从角色NodeManager MapReduce是计算框架、代码层面的组件 没有集群之说 二、集群模式安装
1、Hadoop源码编译
安装包、源码包下载地址https://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/
源码本地编译用途匹配不同操作系统本地库环境Hadoop某些操作比如压缩、IO需要调用系统本地库
2、集群角色规划
根据软件工作特性和服务器硬件资源情况合理分配
资源上有抢夺冲突的尽量不要部署在一起工作上需要互相配合的。尽量部署在一起
3、服务器环境配置
# 主机名
cat /etc/hostname# hosts映射
vim /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.88.151 node1.itcast.cn node1
192.168.88.152 node2.itcast.cn node2
192.168.88.153 node3.itcast.cn node3# JDK 1.8安装 上传 jdk-8u241-linux-x64.tar.gz到/export/server/目录下
cd /export/server/
tar zxvf jdk-8u241-linux-x64.tar.gz#配置环境变量vim /etc/profileexport JAVA_HOME/export/server/jdk1.8.0_241export PATH$PATH:$JAVA_HOME/binexport CLASSPATH.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar#重新加载环境变量文件source /etc/profile# 集群时间同步
ntpdate ntp5.aliyun.com# 防火墙关闭
firewall-cmd --state #查看防火墙状态
systemctl stop firewalld.service #停止firewalld服务
systemctl disable firewalld.service #开机禁用firewalld服务# ssh免密登录只需要配置node1至node1、node2、node3即可#node1生成公钥私钥 (一路回车)ssh-keygen #node1配置免密登录到node1 node2 node3ssh-copy-id node1ssh-copy-id node2ssh-copy-id node34、Hadoop的安装
上传Hadoop安装包到node1 /export/server
hadoop-3.3.0-Centos7-64-with-snappy.tar.gztar zxvf hadoop-3.3.0-Centos7-64-with-snappy.tar.gz修改配置文件(配置文件路径 hadoop-3.3.0/etc/hadoop)
1、hadoop-env.sh
#文件最后添加
export JAVA_HOME/export/server/jdk1.8.0_241export HDFS_NAMENODE_USERroot
export HDFS_DATANODE_USERroot
export HDFS_SECONDARYNAMENODE_USERroot
export YARN_RESOURCEMANAGER_USERroot
export YARN_NODEMANAGER_USERroot 2、core-site.xml
!-- 设置默认使用的文件系统 Hadoop支持file、HDFS、GFS、ali|Amazon云等文件系统 --
propertynamefs.defaultFS/namevaluehdfs://node1:8020/value
/property!-- 设置Hadoop本地保存数据路径 --
propertynamehadoop.tmp.dir/namevalue/export/data/hadoop-3.3.0/value
/property!-- 设置HDFS web UI用户身份 --
propertynamehadoop.http.staticuser.user/namevalueroot/value
/property!-- 整合hive 用户代理设置 --
propertynamehadoop.proxyuser.root.hosts/namevalue*/value
/propertypropertynamehadoop.proxyuser.root.groups/namevalue*/value
/property!-- 文件系统垃圾桶保存时间 --
propertynamefs.trash.interval/namevalue1440/value
/property3、hdfs-site.xml
!-- 设置SNN进程运行机器位置信息 --
propertynamedfs.namenode.secondary.http-address/namevaluenode2:9868/value
/property4、mapred-site.xml
!-- 设置MR程序默认运行模式 yarn集群模式 local本地模式 --
propertynamemapreduce.framework.name/namevalueyarn/value
/property!-- MR程序历史服务地址 --
propertynamemapreduce.jobhistory.address/namevaluenode1:10020/value
/property!-- MR程序历史服务器web端地址 --
propertynamemapreduce.jobhistory.webapp.address/namevaluenode1:19888/value
/propertypropertynameyarn.app.mapreduce.am.env/namevalueHADOOP_MAPRED_HOME${HADOOP_HOME}/value
/propertypropertynamemapreduce.map.env/namevalueHADOOP_MAPRED_HOME${HADOOP_HOME}/value
/propertypropertynamemapreduce.reduce.env/namevalueHADOOP_MAPRED_HOME${HADOOP_HOME}/value
/property5、yarn-site.xml
!-- 设置YARN集群主角色运行机器位置 --
propertynameyarn.resourcemanager.hostname/namevaluenode1/value
/propertypropertynameyarn.nodemanager.aux-services/namevaluemapreduce_shuffle/value
/property!-- 是否将对容器实施物理内存限制 --
propertynameyarn.nodemanager.pmem-check-enabled/namevaluefalse/value
/property!-- 是否将对容器实施虚拟内存限制。 --
propertynameyarn.nodemanager.vmem-check-enabled/namevaluefalse/value
/property!-- 开启日志聚集 --
propertynameyarn.log-aggregation-enable/namevaluetrue/value
/property!-- 设置yarn历史服务器地址 --
propertynameyarn.log.server.url/namevaluehttp://node1:19888/jobhistory/logs/value
/property!-- 历史日志保存的时间 7天 --
propertynameyarn.log-aggregation.retain-seconds/namevalue604800/value
/property6、workers
node1.itcast.cn
node2.itcast.cn
node3.itcast.cn7、分发同步hadoop安装包
cd /export/serverscp -r hadoop-3.3.0 rootnode2:$PWD
scp -r hadoop-3.3.0 rootnode3:$PWD8、将hadoop添加到环境变量3台机器
vim /etc/profileexport HADOOP_HOME/export/server/hadoop-3.3.0
export PATH$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbinsource /etc/profile#别忘了scp给其他两台机器哦5、Hadoop目录结构
目录说明binHadoop最基本的管理脚本和使用脚本的目录这些脚本是sbin目录下管理脚本的基础实现用户可以直接使用这些脚本管理和使用HadoopetcHadoop配置文件所在的目录include对外提供的编程库头文件具体动态库和静态库在lib目录中这些头文件均是用C定义的通常用于C程序访问HDFS或者编写MapReduce程序lib包含了Hadoop对外提供的编程动态库和静态库与include目录中的头文件结合使用libexec各个服务对用的shel1配置文件所在的目录可用于配置日志输出、启动参数比如JVM参数等基本信息sbinHadoop管理脚本所在的目录主要包含HDFS和YARN中各类服务的启动/关闭脚本shareHadoop各个模块编译后的 jar包所在的目录官方自带示例
6、HDFS初始化
首次启动HDFS时必须对其进行格式化操作。
format本质上是初始化工作进行HDFS清理和准备工作
hdfs namenode -format如果多次format除了造成数据丢失外还会导致hafs集群主从角色之间互不识别。通过删除所有机器hadoop.tmp.dir目录重新format解决 三、集群启停命令
1、手动逐个进程启停
每台机器上每次手动启动关闭一个角色进程可以精准控制每个进程启停避免群起群停
HDFS集群
#hadoop2.x版本命令
hadoop-daemon.sh start|stop namenode|datanode|secondarynamenode#hadoop3.x版本命令
hdfs --daemon start|stop namenode|datanode|secondarynamenodeYARN集群
#hadoop2.x版本命令
yarn-daemon.sh start|stop resourcemanager|nodemanager#hadoop3.x版本命令
yarn --daemon start|stop resourcemanager|nodemanager2、shell脚本一键启停
在node1上使用软件自带的shell脚本一键启动 前提配置好机器之间的SSH免密登录和workers文件 start-dfs.shstart-yarn.sh3、进程状态、日志查看
启动完毕之后可以使用 jps命令查看进程是否启动成功
Hadoop启动日志路径/export/server/hadoop-3.3.0/logs/
四、Web UI
HDFS集群http://node1:9870/
YARN集群http://node1:8088/
五、Hadoop初体验
1、HDFS
HDFS本质就是一个文件系统
有目录树结构 和Linux类似分文件、文件夹
2、MapReduceYARN
执行Hadoop官方自带的MapReduce案例评估圆周率r的值。
cd /export/server/hadoop-3.3.0/share/hadoop/mapreduce/
hadoop jar hadoop-mapreduce-examples-3.3.0.jar pi 2 4