设为首页 收藏本站
查看: 870|回复: 0

[经验分享] Apache BigTop试用感想

[复制链接]

尚未签到

发表于 2018-11-24 08:50:43 | 显示全部楼层 |阅读模式
Bigtop是去年apache基金会推出的一个对Hadoop及其周边生态进行打包,分发和测试的工具。推出的时间不长,加上官方的文档很简单,只告诉你如何用bigtop安装hadoop,其他都不讲。这两天深入的玩了一下,就个人体会来说,Bigtop算是个比较有趣的玩具。实用价值不大,尤其是对准备在hadoop本身上做文章的公司和个人来说,是一个看上去很美,但实际部署是很值得商榷的玩意。



Bigtop,本意是马戏团的大帐篷,apache hadoop整个生态系统都是由动物标志所构成的,所以由Cloudera提交给apache的这个软件,用意比较明显,就是他想用这玩意一统Hadoop生态系统圈。这个放到后面去说,总之,Cloudera的野心还是很大的。



在我玩这个东西之前,我做了两件事,看了一下官方文档和找中文资料,但是十分遗憾,官方文档只写如何通过下载apache bigtop的官方repo去在你的操作系统里加入一个安装hadoop的源,却没有讲他是如何打包和分发的。中文相关的内容我只找到寥寥几篇新闻和一篇简介通过bigtop安装hadoop的博客,基本没有太多的参考价值,只能自己钻研。



如果只看官方文档,会认为这个东西不过就是apache官方提供的一个安装hadoop ecosystem的源,包含yum的repo和apt的repo而已。但是其实这个软件还是有点水平的,他最重要的功能并不是给你一个.repo的文件,而是让你自己把apache的hadoop生态系统打成安装包和建立仓库源。这样你就可以把apache官方的hadoop生态圈都打成自己的包来进行分发,并且这些生态软件与hadoop发行版之间的兼容性是由bigtop来自动解决的,而Cloudera的野心就在这个自动解决上,继续往下。



那我不是可以做一个自己的hadoop发行版,也开个公司干个Cloudera出来了吗?我觉得这问题你基本别想,bigtop在打包过程中,除了会下载maven的repo中的jar文件,最重要的是他还要下载很多cloudera的jar包。等于你最后打完的东西,是个cloudera和apache混合的rpm包,这是我觉得cloudera的野心所在,所以hortonworks和mapr根本不鸟这个玩意。提都不带提的。论开源,它里面有闭源的东西,天知道闭源的jar包都在干什么。论性能和稳定,谁也没验证过。所以我觉得这就是一个玩具,玩玩即可,真把他打出来的东西放到生产环境,会发生什么事情,只有上帝才知道。当然他是开源的,你可以去修改pom里面的东西去掉cloudera的玩意换成自己的,但是我觉得那比直接改hadoop源码还费劲。



大概介绍一下使用,我用centos,按照官方文档要求,你必须自己解决如下的依赖:

Building Bigtop requires the following tools:

  •   Java JDK 1.6
  •   Apache Ant
  •   Apache Maven
  •   wget
  •   tar
  •   git
  •   subversion
  •   gcc
  •   gcc-c++
  •   make
  •   fuse
  •   protobuf-compiler
  •   autoconf
  •   automake
  •   libtool
  •   sharutils
  •   asciidoc
  •   xmlto
On RPM-based systems one also needs

  •   lzo-devel
  •   zlib-devel
  •   fuse-devel
  •   openssl-devel
  •   python-devel
  •   libxml2-devel
  •   libxslt-devel
  •   cyrus-sasl-devel
  •   sqlite-devel
  •   mysql-devel
  •   openldap-devel
  •   rpm-build
  •   createrepo
  •   redhat-rpm-config (RedHat/CentOS only)


我在centos6上玩的,然后我发现,用yum安装这些东西,只是长征的开始。Maven和ProtocolBuffer是需要自己去安装的,yum里面没有。然后他还少写了一个依赖是cmake,然后你还需要自己去export PATH,JAVA_HOME,LD_LIBARY_PATH什么的。



安装好各种依赖,就可以开始尝试build hadoop了。bigtop-0.6.0是用最新的apache-hadoop-2.0.5-alpha的源码进行编译打包。



正常的话,编译到中间你会遇到错误,maven会号称找不到com.google.protobuf的类。这时候还是得修改hadoop的一个pom.xml文件,将编译配置里面的protobuf换成你自己编译的prorocolbuffer的jar包。maven自动下载的protobuf的jar包应该是有问题,用不了。



编译过程很简单,但是编译排错是很麻烦的事情。编译完成之后的东西看起来很眼熟。

  [root@localhost hadoop]# ll -h
  总用量 77M
  -rw-r--r-- 1 root root  12M 7月   6 16:33 hadoop-2.0.5-1.el6.src.rpm
  -rw-r--r-- 1 root root  15M 7月   6 16:53 hadoop-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 7.6K 7月   6 16:53 hadoop-client-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root  15K 7月   6 16:53 hadoop-conf-pseudo-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 139K 7月   6 16:53 hadoop-debuginfo-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.0M 7月   6 16:53 hadoop-doc-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root  12M 7月   6 16:53 hadoop-hdfs-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.6K 7月   6 16:53 hadoop-hdfs-datanode-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root  21K 7月   6 16:53 hadoop-hdfs-fuse-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.5K 7月   6 16:53 hadoop-hdfs-journalnode-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.6K 7月   6 16:53 hadoop-hdfs-namenode-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.6K 7月   6 16:53 hadoop-hdfs-secondarynamenode-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.6K 7月   6 16:53 hadoop-hdfs-zkfc-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root  17M 7月   6 16:53 hadoop-httpfs-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root  26K 7月   6 16:53 hadoop-libhdfs-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root  11M 7月   6 16:53 hadoop-mapreduce-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.6K 7月   6 16:53 hadoop-mapreduce-historyserver-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 8.8M 7月   6 16:53 hadoop-yarn-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.5K 7月   6 16:53 hadoop-yarn-nodemanager-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.4K 7月   6 16:53 hadoop-yarn-proxyserver-2.0.5-1.el6.x86_64.rpm
  -rw-r--r-- 1 root root 4.5K 7月   6 16:53 hadoop-yarn-resourcemanager-2.0.5-1.el6.x86_64.rpm


娘的,是不是跟Cloudera的东西一模一样,唯一的区别就是前面没有了cdh的前缀。除了编译2.x,1.x我也试了,默认情况下远程已经找不到源代码的文件了。



也尝试编了其他的东西,mahout官方代码,可执行加源码一共70多兆,打包完了100多兆。oozie连源码不到1兆,打完居然60多兆。



hive和pig编译失败,直接把我的2G内存的虚拟机跑挂了,所以我觉得这个东西基本就是个玩具,而且受cloudera影响太多,这些编译好的安装包,在用rpm安装的时候,需要用yum解决的依赖,比他打好的包要多得多。我只是尝试rpm -ivh hadoop-2.0.5-1.el6.x86_64.rpm,告诉我缺少一些依赖,然后用yum一看,居然这些依赖加上依赖的依赖,要下载装150多兆。除去我之前编译前下载的各种依赖100M,这要是用在生产环境下,每台服务器部署的时候都要先下载几百兆的操作系统依赖,太崩溃了。



所以我觉得,这东西玩玩还行,研究一下他的原理还可以,用到生产环境还是算了,真拿这个装,比拿tar包安装hadoop生态圈还费劲。





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-638863-1-1.html 上篇帖子: 基于apache服务的svn服务器之构建 下篇帖子: Linux下Apache自动监测重启脚本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表