集群测试工具

article/2025/9/16 1:30:52

DFSIO测试集群I/O性能

DFSIO 用法
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.X-tests.jar TestDFSIO
15/05/22 19:50:22 INFO fs.TestDFSIO: TestDFSIO.1.8
Missing arguments.
Usage: TestDFSIO [genericOptions] -read [-random | -backward | -skip [-skipSize Size]] | -write | -append | -truncate | -clean [-compression codecClassName] [-n rFiles N] [-size Size[B|KB|MB|GB|TB]] [-resFile resultFileName] [-bufferSize Bytes]
DFSIO可以测试写操作和读操作,以MapReduce作业的方式运行,返回整个集群的I/O性能报告。DFSIO读写测试的位置在hdfs://namendoe:8020/benchmarks/TestDFSIO/io_data,其中读测试不会自己产生数据,必须先执行DFSIO写测试。

-read:读测试,对每个文件读-size指定的字节数
-write:写测试,对每个文件写-size指定的字节数
-append:追加测试,对每个文件追加-size指定的字节数
-truncate:截断测试,对每个文件截断至-size指定的字节数
-clean:清除TestDFSIO在HDFS上生成数据
-n:文件个数
-size:每个文件的大小
-resFile:生成测试报告的本地文件路径
-bufferSize:每个mapper任务读写文件所用到的缓存区大小,默认为1000000字节。

DFSIO测试

写10个100MB的文件
hadoop@node50064:~$ hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.X-tests.jar TestDFSIO -write -nrFiles 10 -fileSize 100MB -resFile /tmp/DFSIO-write.out
查看写测试结果
本地文件/tmp/DFSIO-write.out包含写测试性能报告:

hadoop@node50064:~$ cat /tmp/DFSIO-write.out
----- TestDFSIO ----- : write
Date & time: Sat May 23 00:44:59 EDT 2015
Number of files: 10
Total MBytes processed: 1000.0
Throughput mb/sec: 3.458508276210305
Average IO rate mb/sec: 4.84163236618042
IO rate std deviation: 2.384178973806887
Test exec time sec: 170.605
DFSIO 写测试在HDFS上生成的数据:
hadoop@node50064:~$ hadoop fs -ls /benchmarks/TestDFSIO/
Found 3 items
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:44 /benchmarks/TestDFSIO/io_write
hadoop@node50064:~$ hadoop fs -ls /benchmarks/TestDFSIO/io_control
Found 10 items
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_0
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_1
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_2
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_3
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_4
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_5
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_6
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_7
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_8
-rw-r–r-- 2 hadoop supergroup 112 2015-05-23 00:42 /benchmarks/TestDFSIO/io_control/in_file_test_io_9
hadoop@node50064:~$ hadoop fs -ls /benchmarks/TestDFSIO/io_data
Found 10 items
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_0
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_1
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_2
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_3
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_4
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_5
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_6
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_7
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_8
-rw-r–r-- 2 hadoop supergroup 104857600 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data/test_io_9
hadoop@node50064:~$ hadoop fs -ls /benchmarks/TestDFSIO/io_write
Found 2 items
-rw-r–r-- 2 hadoop supergroup 0 2015-05-23 00:44 /benchmarks/TestDFSIO/io_write/_SUCCESS
-rw-r–r-- 2 hadoop supergroup 79 2015-05-23 00:44 /benchmarks/TestDFSIO/io_write/part-00000

读10个100MB的文件
hadoop@node50064:~$ hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.X-tests.jar TestDFSIO -read -nrFiles 10 -fileSize 100MB -resFile /tmp/DFSIO-read.out
查看读测试结果
本地文件/tmp/DFSIO-read.out包含读测试性能报告:

hadoop@node50064:~$ cat /tmp/DFSIO-read.out
----- TestDFSIO ----- : read
Date & time: Sat May 23 00:59:25 EDT 2015
Number of files: 10
Total MBytes processed: 1000.0
Throughput mb/sec: 101.09179134654266
Average IO rate mb/sec: 160.2582244873047
IO rate std deviation: 126.10457558779005
Test exec time sec: 39.327

DFSIO 写测试在HDFS上生成的数据:

hadoop@node50064:~$ hadoop fs -ls /benchmarks/TestDFSIO
Found 4 items
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:58 /benchmarks/TestDFSIO/io_control
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:44 /benchmarks/TestDFSIO/io_data
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:59 /benchmarks/TestDFSIO/io_read
drwxr-xr-x - hadoop supergroup 0 2015-05-23 00:44 /benchmarks/TestDFSIO/io_write
hadoop@node50064:~$ hadoop fs -ls /benchmarks/TestDFSIO/io_read
Found 2 items
-rw-r–r-- 2 hadoop supergroup 0 2015-05-23 00:59 /benchmarks/TestDFSIO/io_read/_SUCCESS
-rw-r–r-- 2 hadoop supergroup 80 2015-05-23 00:59 /benchmarks/TestDFSIO/io_read/part-00000
清除DFSIO在HDFS生成的数据
hadoop@node50064:~$ hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.7.X-tests.jar TestDFSIO -clean
hadoop@node50064:~$ hadoop fs -ls /benchmarks

Hadoop测试TeraSort

2014-02-04 21:09:15 teraSort hadoop

使用Teragen来产生数据,示例如下:
hadoop jar hadoop--examples.jar teragen 参数1 参数2
teragen的参数解释:
参数1:表示要产生的数据的行数。Teragen每行数据的大小是100B。
参数2 : 产生的数据放置的文件夹地址
如果要产生1T的数据,需要的行数=102410241024
1024/100=10995116277行

默认的teragen的启动的map数比较少,只有2个,如果要指定map数可以加-Dmapred.map.tasks=map数的方式。

比如我们来产生1T的数据,命令如下

hadoop jar hadoop-*-examples.jar teragen -Dmapred.map.tasks=100 10995116277 terasort/1T-input
ls一下目录是否产出

hadoop@myhost $ hadoop fs -ls /user/hadoop/terasort/
Found 1 items
drwxr-xr-x - hadoop cug-admin 0 2013-07-13 12:49 /user/hadoop/terasort/1T-input
使用Terasort排序

使用terasort对刚才使用teragen产生的数据进行排序,排序结果输出到/user/hadoop/terasort/1T-output。

默认的reduce数目是1,会导致任务跑得非常慢。通过-Dmapred.reduce.tasks指定reduce数目,这里我们设置50个

hadoop jar hadoop-*-examples.jar terasort -Dmapred.reduce.tasks=50
/user/hadoop/terasort/1T-input /user/hadoop/terasort/1T-output
启动Teragen之后,会提交mapre reduce任务来,产生TeraSort需要的数据

使用Teravalidate 进行验证

使用TeraValidate 对Terasort的结果进行验证:

hadoop jar hadoop-*-examples.jar teravalidate /user/hadoop/terasort/1T-output /user/hadoop/terasort/1T-validate

WordCount程序

单词计数是最简单也是最能体现MapReduce思想的程序之一,可以称为MapReduce版"Hello World",该程序的完整代码可以在Hadoop安装包的"src/examples"目录下找到。单词计数主要完成功能是:统计一系列文本文件中每个单词出现的次数,如下图所示。
在这里插入图片描述
上传本地file中文件到集群的input目录下 -put
在这里插入图片描述
Hadoop命令会启动一个JVM来运行这个MapReduce程序,并自动获得Hadoop的配置,同时把类的路径(及其依赖关系)加入到Hadoop的库中。以上就是Hadoop Job的运行记录,从这里可以看到,这个Job被赋予了一个ID号:job_201202292213_0002,而且得知输入文件有两个(Total input paths to process : 2),同时还可以了解map的输入输出记录(record数及字节数),以及reduce输入输出记录。比如说,在本例中,map的task数量是2个,reduce的task数量是一个。map的输入record数是2个,输出record数是4个等信息。


http://chatgpt.dhexx.cn/article/2fjHFOYl.shtml

相关文章

集群监视软件Ganglia

什么是ganglia Ganglia监控软件主要是用来监控系统性能的软件,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到…

Linux集群管理软件clustershell

Linux集群管理软件clustershell 1.简介 机房有大概百台的服务器需要管理,加上需要搭建Hadoop以及Spark集群等,因此,一个轻量级的集群管理软件就显得非常有必要了。经过一段时间的了解以及尝试,最终选择了clustershell这个软件&…

计算机集群

计算机集群简称集群是一种计算机系统, 它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有…

HAProxy集群与常见的Web集群软件调度器对比

目录 一.常见的Web集群调度器 二.HAProxy基本介绍 1.HAProxy是什么? 2.HAProxy的特性 3.HAProxy常用的8种负载均衡调度算法 3.1 轮询:RR(Round Robin) 3.2 最小连接数:LC(Least Connections&#xf…

[Linux基础与服务管理——常用集群高可用软件 Keepalived]

1.Keepalived 简介 Keepalived是Linux下的一个免费的、轻量级的高可用解决方案。是一个由C语言编写的路由软件,主要目标是为Linux系统和基于Linux的基础架构提供简单而强大的负载平衡和高可用性设。Keepalived实现了一组检查器,以根据其健康状况动态地和…

高性能集群软件keepalived

背景 网络的飞速发展,给网络带宽和服务器性能带来了巨大的挑战,基于互联网的应用系统越来越多地瓶颈出现在服务器端,这就对服务器提出了更高的要求,来保证服务的持续性。 集群简介 定义:集群是一组协同工作的服务集合…

集群分为几种,用的软件分别是什么?

集群分为几种,用的软件分别是什么? 补充:涉及的组件 1.1、apache 跨平台的网页服务器,主要使用它做静态资源服务器,也可以做代理服务器转发请求 1.2、ngnix 高性能的 HTTP和反向代理服务器,ngnix处理能力相当于apache…

Linux下的5款主流高可用集群软件介绍

Linux集群主要分成三大类:高可用集群(High Availability Cluster)、负载均衡集群(Load Balance Cluster)、科学计算集群(High Performance Computing Cluster)。 其中高可用集群具有保障应用程序持续提供服务的能力,可以将因软、硬件、人为造成的故障对业务的影响降低到最小…

Horizon Daas 桌面报错:desktop agent通信错误

一、故障描述 上述错误是因无法解析来自身份验证错误响应中的错误时,会报出。这往往时由于horizon client与TA,view agent之间的通信中断造成的。造成在desktone.log日志里可看到相关warning或error,如下所示: 二、分析处理 1、…

一文看懂数据服务DaaS

数据是国家的,金融是国家的。朕不给,你不能要。 (1)中国数据服务 一、数据工具 像云计算厂商搞的大数据平台,就是这个定位。它们纯搞产品,做好品牌,做好合作伙伴招募,由合作伙伴去做…

IaaS、PaaS、SaaS、DaaS的区别与联系

按照服务划分,云计算可以分为IaaS、PaaS、SaaS、DaaS四个层次。 IaaS(Infrastructure as a Service,基础架构即服务)是基础层。在这一层,通过虚拟化、动态化将IT基础资源(计算、网络、存储)聚合…

Horizon Daas浮动桌面无法删除解决

Horizon Daas浮动桌面无法删除解决 【问题描述】 某次执行对桌面删除重新分配操作,发现桌面功能下拉列表里,未出现删除选项,【浮动桌面】无法删除,即无法释放所占资源。 【问题分析】 经检查发现,原来此类桌面为“…

关于Daas平台无法登录的故障处理

关于Daas平台无法登录的故障处理 【事件描述】 某天对Daas桌面环境中AD域控服务器进行挂起,执行克隆备份操作后,再次开启AD域控后,登录短少系统报错:身份验证失败,无法登录。如下图所示: 【故障分析及处…

daas 数据即服务_万物物联时代,数据即服务

关于DAAS的概念 1.未来万物互联,数据就是服务 如何利用移动通信将万物互联,彻底实现智能化,是当前发展的愿景。在这个愿景之下,我们希望能够建立统一的框架,把人的通讯问题、万物互联的问题囊括其中,以超高…

跑出了几个明星厂商,DaaS赛道要火?

图片来源于Unsplash 文丨螳螂观察 作者丨陈淼 从今年的形势来判断,DaaS(数据即服务)赛道看来要火。 相关的信号有两个。 6月末,阿里成立了一家子公司,瓴羊智能服务公司。根据介绍,这家公司将把阿里巴巴…

IaaS、PaaS、SaaS、DaaS的区别

1.IaaS IaaS是Infrastructure as a server的缩写,意思是基础设施即服务。又云端公司把IT环境的基础设施建设好,然后直接对外出租硬件服务器或者虚拟机。消费者可以利用所有计算基础设施,包括处理CPU、内存、存储、网络和其它基本的计算资源&…

Tapdata 在线研讨会:DaaS vs 大数据平台,是竞争还是共处?

从20年前的传统数仓,到10年前大数据平台,5年前开始火热的数据中台以及最近出现的湖仓一体新数据平台,今天被数据孤岛困扰的企业,面临着太多的选择。这些数据产品及架构有一个共性:他们本质上解决的大部分都是分析洞察类…

云目录(DaaS )快速入门

目录即服务(Directory-as-a-Service,DaaS)是针对企业用户存储的云解决方案,将 LDAP 或微软 Active Directory(AD)作为云服务进行管理。DaaS 和很多云平台一样,不仅仅是基于云的 AD 或LDAP不单单…

关于Horizon DaaS Platform的一些疑问

问: DaaS 是什么意思? 答: DaaS 的含义是“Desktops as a Service”(桌面即服务)。 问:所谓的“以云计算服务的形式交付 Windows 桌面或应用”是什么意思? 答:是指云提供商利用他们…

数据中台:始于阿里,兴于DaaS

2014年,马云从芬兰一家游戏公司Supercell接触到中台概念后,在阿里内部积极践行,开创了“大中台、小前台”的组织机制和业务机制。 阿里数据中台的理念是通过高效、统一的后方系统来支撑快速变化的前端业务,提高业务产出效率&…