文章作者:luxianghao

文章来源:http://www.cnblogs.com/luxianghao/p/7886195.html  转载请注明,谢谢合作。

免责声明:文章内容仅代表个人观点,如有不当,欢迎指正。

---

一 引言

Ambari和Hadoop,HBase等一样是Apache的顶级开源项目,由Hortonworks公司提供,是一个大数据集群管理平台,功能包括部署,管理,监控,日志收集等,允许企业使用,而且没有集群规模的限制。

二 Ambari特点

Ambari不但提供可视化的Web UI,而且也有非常易用的REST API,有了这些就使Hadoop集群管理变得非常简单,对自动化的集群管理大有裨益。
Ambari能提供的方便大概有如下几个方面:
1 简化安装,配置和管理:把简单、高效的创建、管理、监控集群的的工作做到极致,集群配置过程中,Ambari也会提供一些可选的建议,Ambari已经部分智能化,甚至, 如果你不想通过在web端点击来创建集群,你还可以利用Ambari Blueprints(简单来说 你可以利用一份配置文件和REST API来搭建一个集群);

2 使安全配置中心化: 减少管理、配置集群安全策略的复杂性,支持KerberosApache Ranger的自动化安装;

3 集群健康状态的全面可视化:通过全面的监控来确保集群的健康和可用性,并配置预定义的告警;使用Grafana捕获并可视化程序运行过程中的指标,用来分析和故障排查;

4 高度的可扩展性和可定义性:可以给Ambari Stacks添加自定义的服务,并进行管理;可以编辑Ambari views生成自定义的Ambari Web UI

三 同类产品比较(大数据集群管理的几个阶段)

1 纯人肉操作阶段:大数据集群一般都规模较大,一个规模较大的集群可能有上千个节点,为了方便集群部署,起停服务,一般会给集群的节点间配置免密码SSH,用纯linux shell命令来管理集群,当然这样的方式一般是学习或测试时来搭建小集群,当集群规模大起来后就行不通了;

2 在1的基础上借助ansible(批量操作工具),puppet(配置管理工具)等工具来操作集群,这样就能管理规模稍大一点的集群,但是这仍然弊端很多,比如ansible命令容易敲错造成误操作,为了管理配置需要配置puppet;

3 平台化、可视化的工具:如Ambari,Cloudera Manager,小米Minos;

a)Ambari:上面已经介绍;
b)Cloudera Manager:和Ambari基本类似,但是不开源,这是多数工程师不能容忍的;
c)小米Minos:其开源的版本目前还不能可视化的操作集群,但是已经有了监控,包管理,配置管理等功能,基本功能都用,比较容易上手。

四 Ambari架构

1 整体架构图

2 Ambari Server架构图

3 Ambari Agent架构

五 Ambari技术栈

Ambari Server:Java
Ambari Web:Ember.js,Handlebars.js,jQuery,Bootstrap 2,LESS
Ambari Admin Web:AngularJS
Ambari Agent:Python

REST server框架: Jersey (JAX-RS)
Database: Postgres, Oracle, MySQL
ORM: EclipseLink

编译调试工具:Idea,Mvn,Brunch,Gulp

五 相关链接

Ambari Git代码库: https://github.com/apache/ambari

Ambari官网:https://ambari.apache.org/

Ambari WIKI:https://cwiki.apache.org/confluence/display/AMBARI/Ambari

Hortonworks社区:https://community.hortonworks.com/index.html

Ambari概览的更多相关文章

  1. Ambari Auto Start(进程自动拉起)

    文章作者:luxianghao 文章来源:http://www.cnblogs.com/luxianghao/p/7886850.html  转载请注明,谢谢合作. 免责声明:文章内容仅代表个人观点, ...

  2. Hadoop学习-生态体系(ecosystem)概览

    0. 大背景 全球No.1搜索引擎公司谷歌(Google)面临每天海量搜索引擎数据的问题,经过长时间的实践积累, 谷歌形成了自己的大数据框架,但是并没有开源,而是发表了一篇论文,阐述了自己的思想,在论 ...

  3. 手把手教你通过Ambari新建Hadoop集群图解案例

    手把手教你通过Ambari新建Hadoop集群图解案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 登陆系统之后,会看到Ambari空空如也的欢迎界面,接下来我们就需要介绍如何通 ...

  4. 基于Ambari的WebUI实现服务缩容

    基于Ambari的WebUI实现服务缩容 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.实现服务的扩容 1>.进入到主机的管理界面 2>.查看主机的信息概览 3&g ...

  5. 基于Ambari Server部署HDP集群实战案例

    基于Ambari Server部署HDP集群实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.部署Ambari Server端 博主推荐阅读: https://www.c ...

  6. Activity之概览屏幕(Overview Screen)

    概览屏幕 概览屏幕(也称为最新动态屏幕.最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务. 用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除 ...

  7. Atitit 软件工程概览attilax总结

    Atitit 软件工程概览attilax总结 1.1. .2 软件工程的发展 进一步地,结合人类发展史和计算机世界演化史来考察软件工程的发展史. 表2 软件工程过程模型 表2将软件工程的主要过程模型做 ...

  8. Ambari组件黄色预警

    Ambari组件黄色预警 组件上为黄色问号,代表心跳丢失,解决如下: 1.  查看个节点之间是否可以相互通信,若ssh连接不上,有可能是该节点关机了,没有打开,手动开启该节点,再次验证是否可互通. 2 ...

  9. iOS开发系列—Objective-C之基础概览

    概览 前面我们已经用了几章内容进行C语言介绍,当然要通过几篇文章完整的介绍C语言的知识是不太现实的,例如C语言的文件操作.内存申请等我们都没有重点介绍,当然核心知识点基本都已经提到了,后面有时间我们会 ...

随机推荐

  1. 更新——Canvas画布动画效果之实现倒计时

    Hello,大家好! 小W复活啦!继续欢乐的给大家更博,输送新知识~~ 不开玩笑啦!秒进正题~~~ 上次更博,小W给大家介绍了Canvas画布的基础部分,以及实现了一个由7*10点阵图显示的倒计时的基 ...

  2. iOS的异步绘制--YYAsyncLayer源码分析

    iOS的异步渲染 最近看了YYAsyncLayer在这里总结一下.YYAsyncLayer是整个YYKit异步渲染的基础.整个项目的Github地址在这里.你可以先下载了一睹为快,也可以跟着我一步一步 ...

  3. php 变量 循环关键词以及方法

    <?php/* 多行注释 */常用数据类型int string double/float bool变量的定义$a = 123;$b = "123";$c = '456';$d ...

  4. 在 Arch 下编译 OpenWRT cmcurl 问题与解决方案

    0 现象 在 Arch 下编译 OpenWRT (15.05) cmcurl 时报错: [ 28%] Linking C executable LIBCURL lib/libcmcurl.a(open ...

  5. ST40 自制 JTAG 适配器

    // 文章首发于 https://zhuanlan.zhihu.com/p/28762429 // 但是不知道为什么搜索引擎还没有收录,便在博客再次发布. 0. 引言 意法半导体生产的 SH4 架构的 ...

  6. Ceph和Openstack的cinder模块对接方法

    1.创建存储池 在ceph节点中执行如下语句. #ceph osd pool create volumes 2.配置 OPENSTACK 的 CEPH 客户端 在ceph节点两次执行如下语句,两次{y ...

  7. 深入javascript之对象

    前言 这是读书笔记第二篇,看完之后突然发现自己对js的内置的一些东西还是了解的不够全面,很多方法见都没见过,啥用都不知道,这是非常不可取的.码农好歹也得眼熟啊,晓都不晓得后面的学习还怎么进行下去... ...

  8. 浅析Entity Framework Core中的并发处理

    前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少的文章.. 本文主要是浅析一下Entity Framework Core的并发处理方式. 1.常见的并发处 ...

  9. C#中的异常处理(try-catch的使用)——使程序更加稳定

    使用try-catch来对代码中容易出现异常的语句进行异常捕获. try { 可能出现异常的代码: } catch { 出现异常后需要执行的代码: } 注:1.在执行过程中,如果try中的代码没有出现 ...

  10. 用Python从零开始创建区块链

    本文主要内容翻译自Learn Blockchains by Building One 本文原始链接,转载请注明出处. 作者认为最快的学习区块链的方式是自己创建一个,本文就跟随作者用Python来创建一 ...