大数据集群(Hadoop生态)安装部署
简介
1)Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
2)主要解决,海量数据的存储和海量数据的分析计算问题。
三类组件
-
Hadoop HDFS:提供分布式海量数据存储能力
-
Hadoop YARN:提供分布式集群资源管理能力
-
Hadoop MapReduce:提供分布式海量数据计算能力
前置要求
- 请确保完成了集群化环境前置准备
- 即:JDK、SSH免密、关闭防火墙、配置主机名映射等前置操作
JDK、防火墙配置
集群化环境前置准备、SSH免密、关闭防火墙、配置主机名映射
Hadoop集群角色
Hadoop生态体系中总共会出现如下进程角色:
- Hadoop HDFS的管理角色:Namenode进程(仅需1个即可(管理者一个就够))
- Hadoop HDFS的工作角色:Datanode进程(需要多个(工人,越多越好,一个机器启动一个))
- Hadoop YARN的管理角色:ResourceManager进程(仅需1个即可(管理者一个就够))
- Hadoop YARN的工作角色:NodeManager进程(需要多个(工人,越多越好,一个机器启动一个))
- Hadoop 历史记录服务器角色:HistoryServer进程(仅需1个即可(功能进程无需太多1个足够))
- Hadoop 代理服务器角色:WebProxyServer进程(仅需1个即可(功能进程无需太多1个足够))
- Zookeeper的进程:QuorumPeerMain进程(仅需1个即可(Zookeeper的工作者,越多越好))
角色和节点分配
角色分配如下:
- node1:Namenode、Datanode、ResourceManager、NodeManager、HistoryServer、WebProxyServer、QuorumPeerMain
- node2:Datanode、NodeManager、QuorumPeerMain
- node3:Datanode、NodeManager、QuorumPeerMain
安装
调整虚拟机内存
如上图,可以看出node1承载了太多的压力。同时node2和node3也同时运行了不少程序
为了确保集群的稳定,需要对虚拟机进行内存设置。
请在VMware中,对:
- node1设置4GB或以上内存
- node2和node3设置2GB或以上内存
大数据的软件本身就是集群化(一堆服务器)一起运行的。
现在我们在一台电脑中以多台虚拟机来模拟集群,确实会有很大的内存压力哦。
Zookeeper集群部署
Zookeeper集群部署
Hadoop集群部署
-
下载Hadoop安装包、解压、配置软链接
# 1. 下载 wget http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz # 2. 解压 # 请确保目录/export/server存在 tar -zxvf hadoop-3.3.0.tar.gz -C /export/server/ # 3. 构建软链接 ln -s /export/server/hadoop-3.3.0 /export/server/hadoop
-
修改配置文件:hadoop-env.sh
Hadoop的配置文件要修改的地方很多,请细心
cd 进入到/export/server/hadoop/etc/hadoop,文件夹中,配置文件都在这里
修改hadoop-env.sh文件
此文件是配置一些Hadoop用到的环境变量
这些是临时变量,在Hadoop运行时有用
如果要永久生效,需要写到/etc/profile中
# 在文件开头加入: # 配置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/logs/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
-
修改配置文件:core-site.xml
如下,清空文件,填入如下内容
fs.defaultFS hdfs://node1:8020 io.file.buffer.size 131072 -
配置: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.count 100 dfs.datanode.data.dir /data/dn -
配置:mapred-env.sh文件
# 在文件的开头加入如下环境变量设置 export JAVA_HOME=/export/server/jdk export HADOOP_JOB_HISTORYSERVER_HEAPSIZE=1000 export HADOOP_MAPRED_ROOT_LOGGER=INFO,RFA
-
配置:mapred-site.xml文件
mapreduce.framework.name yarn mapreduce.jobhistory.address node1:10020 mapreduce.jobhistory.webapp.address node1:19888 mapreduce.jobhistory.intermediate-done-dir /data/mr-history/tmp mapreduce.jobhistory.done-dir /data/mr-history/done yarn.app.mapreduce.am.env HADOOP_MAPRED_HOME=$HADOOP_HOME mapreduce.map.env HADOOP_MAPRED_HOME=$HADOOP_HOME mapreduce.reduce.env HADOOP_MAPRED_HOME=$HADOOP_HOME -
配置:yarn-env.sh文件
# 在文件的开头加入如下环境变量设置 export JAVA_HOME=/export/server/jdk export HADOOP_HOME=/export/server/hadoop export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop export YARN_LOG_DIR=$HADOOP_HOME/logs/yarn export HADOOP_LOG_DIR=$HADOOP_HOME/logs/hdfs
-
配置:yarn-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-log-dir /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.retain-seconds 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. -
修改workers文件
# 全部内容如下 node1 node2 node3
-
分发hadoop到其它机器
# 在node1执行 cd /export/server scp -r hadoop-3.3.0 node2:`pwd`/ scp -r hadoop-3.3.0 node3:`pwd`/
-
在node2、node3执行
# 创建软链接 ln -s /export/server/hadoop-3.3.0 /export/server/hadoop
-
创建所需目录
-
在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
-
配置环境变量
在node1、node2、node3修改/etc/profile
export HADOOP_HOME=/export/server/hadoop export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
执行source /etc/profile生效
-
格式化NameNode,在node1执行
hadoop namenode -format
hadoop这个命令来自于:$HADOOP_HOME/bin中的程序
由于配置了环境变量PATH,所以可以在任意位置执行hadoop命令哦
-
启动hadoop的hdfs集群,在node1执行即可
start-dfs.sh # 如需停止可以执行 stop-dfs.sh
start-dfs.sh这个命令来自于:$HADOOP_HOME/sbin中的程序
由于配置了环境变量PATH,所以可以在任意位置执行start-dfs.sh命令哦
-
启动hadoop的yarn集群,在node1执行即可
start-yarn.sh # 如需停止可以执行 stop-yarn.sh
-
启动历史服务器
mapred --daemon start historyserver # 如需停止将start更换为stop
-
启动web代理服务器
yarn-daemon.sh start proxyserver # 如需停止将start更换为stop
-
验证Hadoop集群运行情况
-
在node1、node2、node3上通过jps验证进程是否都启动成功
-
验证HDFS,浏览器打开:http://node1:9870
创建文件test.txt,随意填入内容,并执行:
hadoop fs -put test.txt /test.txt hadoop fs -cat /test.txt
-
验证YARN,浏览器打开:http://node1:8088
执行:
# 创建文件words.txt,填入如下内容 itheima itcast hadoop itheima hadoop hadoop itheima itcast # 将文件上传到HDFS中 hadoop fs -put words.txt /words.txt # 执行如下命令验证YARN是否正常 hadoop jar /export/server/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.0.jar wordcount -Dmapred.job.queue.name=root.root /words.txt /output
猜你喜欢
- 18天前(万豪酒店 珠海)万豪酒店品牌启航珠海金湾,续写大湾区拓展新篇
- 18天前(三亚太阳湾柏悦度假酒店)三亚太阳湾柏悦酒店携手ROSEONLY诺誓缔造浪漫七夕
- 18天前(天气预报 华为)2025HDC华为天气上新系统级天气智能体,引领更智能的气象服务
- 18天前(重庆恐龙化石遗址)重庆黔江恐龙化石抢救性发掘新闻发布会举行
- 18天前(“清透会呼吸”轻松拿捏春日出游氛围感)“清透会呼吸”轻松拿捏春日出游氛围感
- 18天前(苏梅岛普吉岛哪个好玩)苏梅岛金普顿基塔蕾度假酒店推出家庭度假套餐
- 18天前(万豪旅享家活动2021)精彩上新,漫享夏日----跟随万豪旅享家新开酒店解锁夏日旅行灵感
- 18天前(2025年安徽省“百场黄梅唱响百家景区”示范展示启动)2025年安徽省“百场黄梅唱响百家景区”示范展示启动
- 18天前(新西兰登陆《我的世界》!全球首个目的地游戏模组震撼上线)新西兰登陆《我的世界》!全球首个目的地游戏模组震撼上线
- 18天前(海南航空现况怎样)用一场直播找到市场扩张新渠道,海南航空做对了什么?
网友评论
- 搜索
- 最新文章
- (2020广州车展哈弗)你的猛龙 独一无二 哈弗猛龙广州车展闪耀登场
- (哈弗新能源suv2019款)智能科技颠覆出行体验 哈弗重塑新能源越野SUV价值认知
- (2021款全新哈弗h5自动四驱报价)新哈弗H5再赴保障之旅,无惧冰雪护航哈弗全民电四驱挑战赛
- (海南航空现况怎样)用一场直播找到市场扩张新渠道,海南航空做对了什么?
- (visa jcb 日本)优惠面面俱到 JCB信用卡邀您畅玩日本冰雪季
- (第三届“堡里有年味·回村过大年”民俗花灯会活动)第三届“堡里有年味·回村过大年”民俗花灯会活动
- (展示非遗魅力 长安启源助力铜梁龙舞出征)展示非遗魅力 长安启源助力铜梁龙舞出征
- (阿斯塔纳航空公司)阿斯塔纳航空机队飞机数量增至50架
- (北京香港航班动态查询)香港快运航空北京大兴新航线今日首航
- (我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉)我在港航“呵护”飞机 每一次安全着陆就是最好的荣誉
- 热门文章