Hibench是一套用于云平台进行基准测试的工具。去年用的时候记得是5.0版本,还只支持Hadoop,而现在迭代到6.0版本后,居然可以支持Spark,而且支持到最新的2.2.X版本。最近刚好有实验需要使用这么一套工具,因此在实验室服务器进行编译和部署。
准备工作
当然,不管是服务器也好后还是虚拟机也好,都可以在linux下部署这套测试工具。我的目标集群是10台DELL服务器,Hibench只需要在主节点进行安装部署即可。我的目的是为了做Spark的基准测试。
1、基本的环境:
1)JDK1.7、1.8均可
2)Python>=2.6均可(centos6.5中就是2.6.6版本,可以不用升级,强迫症患者可以升一下)
3)Hadoop和Spark搭建好并能正常运行。(搭建方法可参考我前一篇博文)
2、安装包
1)Maven-3.5.0 在官网下载最新版本的maven-3.5.0,可以在本地下载完后SCP传到服务器上,进行解压。
2)Hibench-6.0下载:在github将整个项目down下来,SCP上传到自己服务器上。
3、Maven安装
Maven解压后,pwd命令copy一下当前maven的安装路径。然后修改环境变量:
vim /etc/profile
在环境变量中加入:
export MAVEN_HOME=/home/ccit-cluster/apache-maven-3.5.0
export PATH=$PATH:$MAVEN_HOME/bin
修改完后,进入root权限,使用source /etc/profile
使刚刚的配置生效。
命令行输入 mvn -version
看看是否成功。
4、Maven镜像修改
很多时候在编译时会发现maven无法访问一些国外网站而导致编译失败,所以最好修改一下镜像为国内镜像。
在Maven-3.5.0/conf目录下找到settings.xml,直接添加如下:
<mirror>
<id>nexus-osc</id>
<mirrorOf>*</mirrorOf>
<name>Nexusosc</name>
<url>http://maven.oschina.net/content/groups/public/</url>
</mirror>
<mirror>
<id>osc_thirdparty</id>
<mirrorOf>thirdparty</mirrorOf>
<url>http://maven.oschina.net/content/repositories/thirdparty/</url>
</mirror>
<profile>
<id>jdk-1.4</id>
<activation>
<jdk>1.4</jdk>
</activation>
<repositories>
<repository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://maven.oschina.net/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
同时可修改一下仓库目录为自定义目录。我再maven-3.5.0安装路径下创建mvnRepo文件夹,然后同样在settings.xml文件中添加如下配置:
<localRepository>/home/ccit-cluster/apache-maven-3.5.0/mvnRepo</localRepository>
5、编译Hibench
新版本的Hibench提供自定义编译,也就是说如果只想对hadoop进行测试,可以只单独编译hadoop版本的hibench,甚至假如只想使用其中一个测试用例也可以只编译其中的一个测试用例,大大降低了编译的时间。我这里编译的是spark的全部测试用例。我的spark版本为2.1.0,scala版本2.11.7,因此使用如下编译命令:
mvn -Psparkbench -Dspark=2.1 -Dscala=2.11 clean package
编译还是需要几个小时,视网速而定。
编译结束后,即可使用。使用方法可参考Hibench github
我的博客 : https://NingSM.github.io
转载请注明原址,谢谢。