栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Ubunutu16.04完成Hadoop集群式搭建

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Ubunutu16.04完成Hadoop集群式搭建

#Ubunutu16.04完成Hadoop集群式搭建 版本情况

VMwareWorkstation 12.5
JDK1.8.0_321
HADOOP-2.7.1

hadoop分布式工作机制说明

前面伪分布式配置时,只配置了HDFS的存储,并没有启用yarn进行资源管理,也未指定MapReduce执行所依赖的框架。要完成分布式集群搭建,接下来要完成下列工作:
在hdfs-site.xml中修改hdfs的副本数、指明SecondaryNamenode服务器
配置yarn集群
yarn-env.sh:指明yarn基本运行环境
yarn-site.xml:指明ResourceManager服务器、NodeManager服务
配置MapReduce在yarn集群上运行
mapred-env.sh:指明MapReduce基本运行环境
mapred-site.xml:指定运行在 yarn 框架上
配置slaves:用于标识集群中所有DataNode

基础配置

规划好集群机器数及各自的IP与机器名
通过VM查看可用IP地址范围:编辑—>虚拟网络编辑器

上图设置与你规划的地址有关
如果出现虚拟机ping得通百度 有下载ssh但是xshell连接不上
请到网络适配器里看看vmware8的网卡
将ip地址改为我们要规划的网段范围内的地址

规划IP地址
集群有3台机器:
Master 192.168.80.140
myslave1 192.168.80.141
myslave2 192.168.80.142

1 先安装好主服务器,完成下面操作
创建虚拟机、安装ubuntu系统、换源、更新、安装lrzsz、ssh、免密配置、jdk;(tomcat、mysql可选)
这里我们直接从之前配置好的hadoop伪分布式克隆作为主服务器
2指定机器名
sudo nano /etc/hostname
3配置固定IP
sudo nano /etc/network/interfaces
auto ens33
iface ens33 inet static
address 192.168.80.140
netmask 255.255.255.0
gateway 192.168.80.2
dns-nameservers 192.168.80.2
dns-nameservers 114.114.114.114
dns-nameservers 8.8.8.8
4设置集群IP地址与主机名的映射关系(做完这步操作最好重启机器)
sudo nano /etc/hosts
127.0.0.1 localhost
#127.0.1.1 Master.localdomain Master
192.168.80.140 Master Master.lmu.cn
192.168.80.141 myslave1 myslave1.lmu.cn
192.168.80.142 myslave2 myslave2.lmu.cn

主服务的配置

1)
cd /app/hadoop-2.7.1/etc/hadoop
配置hadoop-env.sh(hadoop基本运行环境)
export JAVA_HOME=${JAVA_HOME}
2 配置core-site.xml

fs.defaultFS hdfs://Master:9000 hadoop.tmp.dir file:/usr/local/hadoop/tmp Abase for other temporary directories. **3)配置hdfs-site.xml** dfs.replication 2 dfs.namenode.name.dir file:/usr/local/hadoop/tmp/dfs/name dfs.datanode.data.dir file:/usr/local/hadoop/tmp/dfs/data dfs.namenode.secondary.http-address Master:50090 **4)配置yarn-env.sh (yarn基本运行环境)** export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 **5)配置yarn-site.xml** yarn.resourcemanager.hostname Master yarn.nodemanager.aux-services mapreduce_shuffle **6)配置mapred-env.sh (MapReduce基本运行环境)** export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 **7 配置mapred-site.xml** (原本没mapred-site.xml,要由mapred-site.xml.template模板生成) cp mapred-site.xml.template mapred-site.xml,再编辑 mapreduce.framework.name yarn **8)配置slaves,该文件中保存集群中所有slave节点的信息** myslave1 myslave2 从服务搭建

先建2个目录用于存放克隆虚拟机的文件。
关闭Master,在VM界面上右击Master,选择管理—>克隆—>虚拟机中的当前状态—>创建完整克隆,填写克隆机的名称、指定存放位置。
完成克隆后,最好将ubuntu的安装镜像包拷贝到克隆目录下,并修改克隆机的CD盘镜像

对2台克隆机分别做:
先关闭Master,再启动克隆机(因为:它们现在的IP都是一样的)
修改机器名:sudo nano /etc/hostname
改变IP地址:sudo nano /etc/network/interfaces
设置集群IP地址与主机名的映射关系(这步可不做,在主服务器上已完成)
sudo nano /etc/hosts
source /etc/profile

在每台主机上完成下面免密登录授权设置:
配置好ssh免密登录,会在用户的家目录下生成公私密钥文件,用ll -a查看
执行语句:ssh-copy-id Master (myslave1、myslave2),集群中的机器应两两都要这样操作一次
测试能否免密登录:ssh myslave1
返回:exit

安装NTP服务安装NTP服务
完全分布式模式由多台主机组成,各主机的时间可能存在较大差异,可能会导致执行mapreduce程序时会出错。NTP服务通过获取网络时间使集群内不同主机的时间保持一致。
sudo apt-get install ntp

格式化文件系统(只在主节点做一次即可)
hdfs namenode -format
出现“successfully formatted”信息,才算格式化成功

启动与关闭集群
单节点启动服务:(一个节点一个节点启动)
hadoop-daemon.sh start namenode hadoop-daemon.sh stop namenode
hadoop-daemon.sh start datanode
yarn-daemon.sh start resourcemanager
yarn-daemon.sh start nodemanager
hadoop-daemon.sh start secondarynamenode

脚本一键启动(所有节点应均已配置有双向免密登录)
start-dfs.sh stop-dfs.sh
start-yarn.sh stop-yarn.sh
(在主节点用start-all.sh(stop-all.sh),目前已不建议这样启动)

验证hadoop进程
执行jps

WEB访问
http://192.168.80.140:50070:HDFS WEB界面,查看NameNode、DataNode的信息
看到live nodes 有两个活动节点

http://192.168.80.140:8088:yarn查看当前运行进程的信息

10、测试hadoop
1)在root的~/mydata目录下创建文本文件data.txt
Hello World
Hello Hadoop
Hadoop is very good
2)在HDFS创建input目录:hdfs dfs -mkdir /input
3)将data.txt上传到hdfs:hdfs dfs -put data.txt /input
4)查看是否上传成功:hdfs dfs -ls /input

或从网页上看:http://192.168.80.140:50070 Utilities —>Browse the file system

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/750882.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号