随着大数据的越发流行,大大小小的互联网公司都开始参与一些大数据相关的业务,都想从中分一杯羹。Hadoop是大数据的典型代表,也可以说现在的领头大哥,很多互联网巨头都在使用hadoop,包括BAT等大公司。但是由于hadoop对于管理维护的人员要求比较高,企业需要对其投入大量的人力、财力。这里介绍个工具ambari,是apache开源社区的顶级子项目,由hortonworks公司开发维护的,并作为apache的一个子项目,hortonworks公司可以说是apache的新贵公司,实力相当雄厚。ambari主要功能是通过web端界面提供UI来实现hadoop及生态工具的自动化安装、配置、监控、报警功能于一体的工具。可以通过web界面点击鼠标来部署维护hadoop集群,可以大量减轻运维人员的劳动量。

其实关于ambari工具我也只是了解个皮毛,大概知道它的功能和简单系统结构。接触ambari也纯属偶然,公司最近需要做大数据方面的产品,想做一个类似ambari的工具,但是ambari工具的界面不是特别友好,架构也有点复杂,我们公司期望做一个可视化友好的,简单的,类似ambari的工具。所以最近开始研究这个ambari工具,大都是英文资料,研究起来也是很费力的。

前几天初次研究ambari系统的时候,也尝试安装ambari工具。安装方式主要2种:公共源安装和源码编译安装。初次使用源码安装,ambari-server大部分似乎是使用java编写的,编译工具是maven,之前没用过,尝试编译,中间遇到过很多次错误,编译安装过程中需要下载很多依赖的包,如果网络不好的话,安装过程中会中断,我记得试着安装了好几次,他妹的都被龟速的网络给卡住,实在没心情搞源码编译了,就放弃了。结果去采用yum方式来安装ambari,本想着这种方式肯定是万无一失,于是乎按照ambari官方文档进行了安装,配置ambari源,安装server,ambari-server setup设置server的环境和数据库等,设置完毕,开启server。在浏览器172.16.1.27:8080打开,顺利打开。按照向导开始部署hadoop测试集群,设定stack名称,填写主机列表,配置server的ssh私钥,开始安装ambari-agent(ambari-server自动会向各主机列表执行安装命令),第一步就报错,大概意思是yum安装ambari-agent失败,原因是找不到ambari-agent源。于是自己手动去搜索ambari-agent软件包,也没有搜素到,至于ambari-server等一些列的包,就是没有ambari-agent,当时这个问题困扰了我好长时间,也没有查出什么原因;前天又开始搞一下ambari,想大概看一下源码,就无意间看了下官方的一些文档,妹的,文档也藏得这么神秘,嵌套了好几层的目录。文档中只说明支持64系统,并没有说支持32bit的。后来又尝试了64bit的centos6.4系统,似乎可以了,以前的问题没有了,继续尝试安装hadoop集群,到最后安装hadoop的各个服务组件时候,需要向互联网源去下载hadoop的相关安装包,yum源是hortonworks官方的,速度可以说是很操蛋,需要下载的包还很多,很大。尝试过N次,最后都因为网络中断超时导致安装失败。最后又拿出了杀手锏,想自己搭建一个yum源服务器,让测试主机从内网的yum服务器去下载,这样应该可以了吧。于是乎去虚拟机上又搭建了个服务器,采用http方式的,步骤比较简单,搭建http服务器,简单配置,把下载到的rpm包放到相关目录,再执行createrepo命令,似乎是这个命令来生成repo的相关格式数据,即可从web浏览器上查看到相关安装包。于是就不再说了,成功安装,但是中间有点问题,可能是虚拟机本身内存太小,安装过程中有警告信息,没有理会,安装完毕后,有一个host经常会挂掉,应该是虚机内存问题,至少反映了ambari工具的功能还是比较强悍的,显示出来的dashboard也比较漂亮,要是能显示中文就更好了。

其中的一些技术细节先不记录了,下次有时间总结一下ambari的安装过程,包括建立yum本地源的过程。

Ambari工具之认识学习01的更多相关文章

  1. Android Testing学习01 介绍 测试测什么 测试的类型

    Android Testing学习01 介绍 测试测什么 测试的类型 Android 测试 测什么 1.Activity的生命周期事件 应该测试Activity的生命周期事件处理. 如果你的Activ ...

  2. Java学习01

    Java学习01 第一章 1.JRE与JDK JDK(JAVA Develop Kit,JAVA开发工具包)提供了Java的开发环境和运行环境,主要用于开发JAVA程序,面向Java程序的开发者; J ...

  3. Redis学习01——介绍与搭建环境

    Redis学习01介绍与搭建环境一简介二yum配置已经配置了的可以跳过三安装gcc四安装redis1 上传Redis到linux中2 解压到usrlocal下3 编译redis4 安装redis5 拷 ...

  4. Python学习--01入门

    Python学习--01入门 Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.和PHP一样,它是后端开发语言. 如果有C语言.PHP语言.JAVA语言等其中一种语言的基础,学习Py ...

  5. Java虚拟机JVM学习01 流程概述

    Java虚拟机JVM学习01 流程概述 Java虚拟机与程序的生命周期 一个运行时的Java虚拟机(JVM)负责运行一个Java程序. 当启动一个Java程序时,一个虚拟机实例诞生:当程序关闭退出,这 ...

  6. ThinkPhp学习01

    原文:ThinkPhp学习01 一.ThinkPHP的介绍           MVC  M - Model 模型                工作:负责数据的操作  V - View  视图(模板 ...

  7. 【iScroll源码学习01】准备阶段 - 叶小钗

    [iScroll源码学习01]准备阶段 - 叶小钗 时间 2013-12-29 18:41:00 博客园-原创精华区 原文  http://www.cnblogs.com/yexiaochai/p/3 ...

  8. JVM学习01:内存结构

    JVM学习01:内存结构 写在前面:本系列分享主要参考资料是  周志明老师的<深入理解Java虚拟机>第二版. 内存结构知识要点Xmind梳理 案例分析 分析1 package com.h ...

  9. webservice学习01:wsdl文档结构

    webservice学习01:wsdl文档结构 wsdl文档结构 WSDL文档示例 <wsdl:definitions xmlns:xsd="http://www.w3.org/200 ...

随机推荐

  1. GJM: Unity3D AssetBundle 手记 [转载]

    这篇文章从AssetBundle的打包,使用,管理以及内存占用各个方面进行了比较全面的分析,对AssetBundle使用过程中的一些坑进行填补指引以及喷!   AssetBundle是Unity推荐的 ...

  2. java枚举与.net中的枚举区别

    通过一段时间的项目实践,发现java中的枚举与.net中的枚举有很大的差别,初期造成了我对java中的枚举一些错误理解及部分有缺陷的应用,其实追其原因还是因为我会习惯性的认为java的枚举在作用以及定 ...

  3. 七个结构模式之代理模式(Proxy Pattern)

    定义: 给某一个对象提供一个代理或者占位符,并由代理类来控制对原对象的访问.代理对象在客户端和实际对象之间启到了中介作用,并且强调了代理类对原对象的控制作用.例如:安全代理.缓冲代理.远程代理等. 结 ...

  4. [Cordova] Plugin开发入门

    [Cordova] Plugin开发入门 Overview Cordova的设计概念,是在APP上透过Web控件来呈现Web页面,让Web开发人员可以操作熟悉的语言.工具来开发APP.使用Web页面来 ...

  5. Community Value再理解

    其实之前写“从香港机房引入google/bitbucket路由”的时候,对community value的了解还并不深入,对Juniper default BGP export/import poli ...

  6. Node.js+Express配置入门

    Node.js是一个Javascript运行环境(runtime).实际上它是对Google V8引擎进行了封装.V8引 擎执行Javascript的速度非常快,性能非常好.Node.js对一些特殊用 ...

  7. Smint – 用于单页网站制作的 jQuery 导航菜单插件

    Smint 是一款用于实现单页风格网站的 jQuery 导航插件,包含两部分:固定在页面顶部的精美导航条和能够在你点击的时候自动滚动到对应内容的菜单按钮.Smint 使用非常简单,只有一个参数用于设置 ...

  8. Framer – 将视觉搞转换为更真实的动态原型

    Framer 是一个 JavaScript 框架,简化了创建现实原型,实现完整的3D效果.以一种简单,可读的和强大的方式定义交互和创建动画. 另外还有 Framer Generator  是一个桌面应 ...

  9. 【特别推荐】几款极好的 JavaScript 下拉列表插件

    表单元素让人爱恨交加.作为网页最重要的组成部分,表单几乎无处不在,从简单的邮件订阅.登陆注册到复杂的需要多页填写的信息提交功能,表单都让开发者花费了大量的时间和精力去处理,以期实现好用又漂亮的表单功能 ...

  10. CSS3简单动画

    css3的动画确实非常绚丽!浏览器兼容性很重要!. 分享两个小动画 <!doctype html> <html lang="en"> <head> ...