当前位置:
文档之家› 2-Hadoop环境构建v01
2-Hadoop环境构建v01
Hadoop基准测试
一、测试条件 集群完全安装配置后,应立即开始基准测试。基准测试时集 群里不应该运行其他一切任务。
二、测试目标 1. 硬盘故障:新系统最常见的故障。可以通过运行高强度的
IO基准测试程序集中测试。例如TestDFSIO 2. MapReduce的性能
测试方法
三、测试方法
1、TestDFSIO基准测试HDFS (测试顺序应该是先写测试后读测试)
下载hadoop压缩包并解压
在namenode上配置hadoop
按照和伪分布模式相同的方法修改core-site.xml,hdfs-site.xml, mapred-site.xml等配置文件
修改hadoop-env.sh文件 修改masters和slaves文件,记录集群中各个节点 向各节点分发hadoop 格式化namenode 在namenode上启动守护进程,系统会自动到各个节点启动相应的进程
HDFS的JBOD(Just a Bunch Of Disks)慢 JBOD配置的某一磁盘出现故障,HDFS还可以忽略该磁盘继续工作,
RAID的某一盘片故障可能会导致整个磁盘阵列不可用。
集群部署建议
一个Hadoop集群的规模应该有多大? 怎么部署比较合适? 部署集群应当注意什么?
集群大小可用根据需要逐步扩展(大约在10台左右,具体根据实际数据 量和计算能力而定)。
hadoop jar hadoop-examples-0.20.2-cdh3u1.jar terasort terasort/1000000-input terasort/1000000-output
查看排序: hadoop fs -ls terasort/1000000-output
1TB排序通常用于衡量分布式数据处理框架的数据处理能力。Terasort是Hadoop中的的 一个排序作业,在2008年,Hadoop在1TB排序基准评估中赢得第一名,耗时209秒。
完全分布式模式的安装和配置
配置hosts文件 建立hadoop运行账号 配置ssh免密码连入 下载并解压hadoop安装包 配置namenode,修改site文件 配置hadoop-env.sh 配置masters和slaves文件 向各节点复制hadoop 格式化namenode 启动hadoop 用jps检验各后台进程是否成功启动
内存
系统日志文件
Hadoop实验-基准测试
TestDFSIO基准测试HDFS TeraSort 基准测试实验
集群基准测试
测试对于验证系统的正确性、分析系统的性能来说非常重 要。为了能对系统有更全面的了解、能找到系统的瓶颈所在、能 对系统性能做更好的改进。
学习Hadoop几种主要的测试手段。 如何使用Hadoop自带的测试工具进行测试 Intel开放的Hadoop Benchmark Suit: HiBench的安装及使用。
首先我们通过使用RandomWriter生成一些随机的数据。它以每个节点10个map 的方式运行一个MapReduce作业,并且每一个map生成近似10GB的随机二进制数据, 带有不同长度的键和值。
hadoop jar $HADOOP_HOME/hadoop-examples*.jar randomwriter random-data
•
得道多助失道寡助,掌控人心方位上 。22:57:3322:57:3322:57Thur sday, November 19, 2020
•
安全在于心细,事故出在麻痹。20.11.1920.11.1922:57:3322:57:33November 19, 2020
•
加强自身建设,增强个人的休养。2020年11月19日 下午10时57分20.11.1920.11.19
修改core-site.xml、hdfs-site.xml以及 mapred-site.xml(注意修改localhost)
修改masters和slaves文件
修改hadoop-env.sh
向各节点复制hadoop
格式化分布式文件系统
启动守护进程
检测守护进程2012/12/hadoop-benchmarks.html)
Hadoop基准测试
Hadoop自带了几个基准测试,被打包在几个jar包中,如 hadoop-*test*.jar和hadoop-*examples*.jar,在Hadoop 环境中可以很方便地运行测试。
课程安排
Hadoop环境构建
2014/09
构建Hadoop集群
• 课程目标 了解Hadoop安装的三种模式 能独立熟练完成Hadoop的安装 熟悉Hadoop的配置与管理 能够利用基准测试程序测试Hadoop集群
构建Hadoop集群
• 课程大纲
集群规范 构建Hadoop集群 Hadoop配置 Hadoop实验-基准测试
运行namenode的机器一般采用64位硬件,避免32位架构下Java堆的3GB内存 限制。
NameNode与文件数对应关系
网络拓扑
通常Hadoop集群架构包含两级网络拓扑。 这一架构的突出特点是:同一机架内部节点间的总
带宽要远高于不同机架节点的带宽。
典型场景是: 1、 各机架装配10-15个服务器, 共享一个10GB的交换机 2、 各机架的交换机又通过上行 链路与一个核心交换机或者路由 器互联。
tasktracker、secondary namenode等5个进程,模拟分布式运行的各个节点 完全分布式模式:正常的Hadoop集群,由多个各司其职的节点构成
伪分布式模式的安装和配置步骤
下载并解压Hadoop安装包,为了和教材一致,选用了1.2.1版本 进入Hadoop的解压目录,编辑conf/hadoop-env.sh文件 编辑conf目录下core-site.xml、hdfs-site.xml和mapred-site.xml三个核心配置文件 配置ssh,生成密钥,使到ssh可以免密码连接localhost 格式化HDFS 使用bin/start-all.sh启动Hadoop 使用bin/stop-all.sh关闭Hadoop
在运行的最后,结果被写入控制台并记录到TestDFSIOresults_write.txt 读测试:
hadoop jar $HADOOP_HOME/hadoop-test-*.jar TestDFSIO -read-nrFiles 10 -fileSize 1000 -resFile /tmp/TestDFSIOresults_read.txt
写测试: 使用10个map任务写10个文件,每个500m。
hadoop jar $HADOOP_HOME/hadoop-test-*.jar TestDFSIO -write -nrFiles 10 -fileSize 1000 -resFile /tmp/TestDFSIOresults_write.txt
构建Hadoop集群
集群部署三种模式 伪分布式模式的安装与配置 完全分布式模式的安装与配置
准备与配置安装环境
安装虚拟机和linux,虚拟机推荐使用vmware,PC可以使用workstation,服务器可以 使用ESXi,在管理上比较方便。ESXi还可以通过拷贝镜像文件复制虚拟机,复制后 自动修改网卡号和ip,非常快捷。如果只是实验用途,硬盘大约预留20-30G空间。
集群规范
集群硬件要求 不适用RAID的原因 集群部署建议 集群网络拓扑
集群硬件要求
Hadoop运行在商业硬件上,注意两个问题:
① 商业硬件并不等同于低端硬件,低端机器便宜的零部件会导致维护成本 巨大。
② 也不建议构建在大型机器上,因为集群服务器较少,某一台出现故障, 对整个集群影响较大。(故障硬件所占的比重增大了)
测试方法
三、测试方法
3、TeraSort 基准测试实验
hadoop jar $HADOOP_HOME/hadoop-examples*.jar teragen 1000000 terasort/1000000-input 查看数据: hadoop fs -ls /usr/hadoop/terasort/1000000-input hadoop jar hadoop-*-examples.jar terasort in-dir out-dir 排序:
•
扩展市场,开发未来,实现现在。2020年11月19日 星期四 下午10时57分33秒22:57:3320.11.19
•
做专业的企业,做专业的事情,让自 己专业 起来。2020年11月下 午10时57分20.11.1922:57November 19, 2020
Hadoop-1.2.1:
/apache/hadoop/common/hadoop-1.2.1/hadoop-1.2.1.tar.gz
三种运行模式
单机模式:安装简单,几乎不用作任何配置,但仅限于调试用途 伪分布模式:在单节点上同时启动namenode、datanode、jobtracker、
以Centos为例,分区可以选择默认,安装选项选择Desktop Gnome,以及Server、 Server GUI即可。其它Linux,注意选项里应包括ssh,vi(用于编辑配置文件), perl等(有些脚本里包含perl代码需要解析)
到Oracle官网下载java jdk安装包,并且进行安装
辅助namenode和namenode可用运行在同一机器之中,但由于内存的原因(辅 助与主需要同样的内存需求),二者最好运行在独立的硬件上。
对一个小集群(几十个节点)而言,在一台master节点上运行namenode和 jobtracker通常没有问题,当namenode需要更多内存时,最好分别放在不同的 机器上运行
配置hosts文件
所有的节点都修改/etc/hosts,使彼此之间都能把主机名解析为ip