宝马娱乐在线城-宝马娱乐在线

来自 世界互联 2019-10-09 04:37 的文章
当前位置: 宝马娱乐在线城 > 世界互联 > 正文

Ambari宝马娱乐在线-整体介绍

原标题:手把手教你Apache顶级项目Amabari 的集群管理(一)

Ambari-整体介绍

Ambari目标

解决Hadoop生态系统部署

部署:hadoop组件间有依赖,包括配置、版本、启动顺序、权限配置等。

部署过程跟踪。能够展示出部署过程中每个步骤的状态及相关信息。

多机部署问题,当集群规模增加后,机器出问题机率增加,在部署或更新中可能会出现机器故障

组件本身设计:hadoop及其组件需要容忍机器的故障,同时需要防止不兼容版本组件给系统带来的影响

部署服务:需要能够容忍某些组件启动、更新失败

配置管理

可以将默认配置写入stack中(stack后续介绍),在开启时ambari将stack中各个版本的config文件读入,在使用blueprint创建集群部署hadoop时,直接生成command-json文件。(blueprint后续介绍)

服务状态展示、监控、报警

Ambari主要概念

资源

ambari将集群及集群中的服务、组件、机器都视为资源,资源的状态都会记录在db中

Hadoop生态

Stack

发行版本的含义,如HDP,可以有若干版本。

Service

服务,属于stack,一个stack下可以有多个service,service也可以分多个版本,版本间可以有继承关系。例如zookeeper就是一项服务。

Component

组件,属于service,一个service下可以有多个component组成。例如HDFS服务下的组件有datanode,namenode等。

角色

Component可以指定部署时的角色,如master、slave等,也可以指定每种角色需要的host个数。例如namenode为单一host组件,可以部署在master机器上,datanode可以部署在多台host上那么可以指定部署datanode的角色为slave

host

host为运行ambari-agent的一台机器,同时也是搭建集群内部的一台机器,可以为host设置对应的角色,例如master,slave等。

Ambari整体流程

restAPI->ambari-server

单步创建

通过调用ambari提供的restAPI进行集群的单步创建

Add cluster:新建集群

Update cluster:更新集群配置

Add service for cluster:向集群添加服务

Add component for service:为每个服务添加对应组件

Add host for cluster:添加host资源

Add component on host:设置每个host上运行的组件

Install/Start/Stop service:安装/开启/关闭 集群的对应服务

Blueprint

调用一次restAPI即可进行集群创建、服务安装、组件部署、服务开始等集群操作,简化了单步创建的调用次数。

ambari-server->ambari-agent

ambari-server端负责接收rest请求,再向agent端发送命令,发送命令的格式是json,内部包涵部署脚本执行命令(安装/开始/停止服务)所需要的配置信息,这里所指的配置信息一般是手动部署集群需要配置的xml文件,例如hadoop-site.xml文件,在blueprint或单步创建里会有详细说明。

ambari-agent执行脚本。ambari-agent所执行的脚本存储在ambari-server 机器上的/var/lib/ambari-server/resources/stacks/HDP/2.0.6/下各个service路径下的package路径下的scripts内,脚本的编写语言为python,脚本继承了名为Script的父类,该父类提供了一些函数,例如Script.get_config(),该函数将agent接收来自server端的command-json文件的内容转化为字典格式方便脚本实现部署时对配置的使用。具体anent接收到的command-json保存在了运行agent机器下的/var/lib/ambari-agent/data路径下。

Hadoop集群监控工具Ambari安装

使用Ambari快速部署Hadoop大数据环境

本文永久更新链接地址:

http://www.bkjia.com/Linux/909039.htmlwww.bkjia.comtruehttp://www.bkjia.com/Linux/909039.htmlTechArticleAmbari-整体介绍 Ambari目标 解决Hadoop生态系统部署 部署:hadoop组件间有依赖,包括配置、版本、启动顺序、权限配置等。 部署过程跟踪。能...

导读

Apache Ambari是Hortonworks开源的Hadoop集群管理工具,并于2013年底从孵化器毕业,成为Apache的顶级项目。Ambari具备Hadoop组件的安装、管理、运维等基本功能,并提供GUI进行可视化的集群管理,简化了大数据平台的安装、使用难度。

本次分享主要涉及Ambari的简单介绍及Ambari自定义插件开发步骤(基于Ambari 2.5.1.0版本)。

▌**引言**

Hadoop自从它诞生之日起,集群的管理就是一个无法回避的问题。两家商业化平台厂商Cloudera和Hortonworks分别推出了各自的平台管理软件:ClouderaManager和Ambari来解决集群管理这个问题。Ambari并没有对Hadoop组件进行过多的功能集成(如日志分析等),只是提供了安装,配置,启停等基础功能,尽量保持了跟原生Hadoop组件的隔离性,对组件的具体操作,则可通过Quick Links直接导向原生的管理界面(如yarn UI,HBase Master UI)来完成,保持了对于Hadoop组件的低侵入性。但是Ambari目前只支持HDP,不支持原生的或者其他二次开发的Hadoop平台,一定程度上影响了它的流行。

考虑到Ambari的开源,可拓展,社区强大等特性,易观选择了Ambari来管理集群。

▌**概念介绍**

正式开始之前,先为不熟悉Ambari的同学普及几个ambari里的概念:

Server,Agent:Ambari框架采用的是Server/Client的模式,主要由两部分组成:ambari-agent和ambari-server。Ambari Server 会读取 Stack 和 Service 的配置文件。当Ambari Server启动的时候,Ambari Server 会分发 Stack 和 Service 的配置文件以及 Service 生命周期的控制脚本到 Ambari Agent。Agent端拿到配置文件后,会下载安装公共源里软件包(对于centos系统,就是使用 yum 服务)。安装完成后,Ambari Server 会通知 Agent去启动 Service。之后 Ambari Server 会定期发送命令到 Agent 检查 Service 的状态,Agent 返回信息给 Server,并呈现在 Ambari 的 GUI 上。

一个ambari服务的目录结构大致如下:

宝马娱乐在线 1

stacks: stack表示某个发行版本,例如HDP-2.0.6。stack版本可以通过metainfo.xml设置继承关系,便于共享脚本和配置。

common-services:ambari的服务定义库。service在此完成定义,在某个stack版本注册,实现服务的发布。

service:service是集群(大数据)组件的抽象,由一个或多个component组成。component的category有MASTER,SLAVE,CLIENT三种,对应不同的生命周期:

宝马娱乐在线 2

▌**工作原理**

宝马娱乐在线 3

图一:Ambari工作原理

Ambari工作原理如上图所示:

1.ambari已安装的服务配置会存储在mysql中,可通过web界面修改,改完记得重启服务保证配置生效;

2.新添加的service定义会在ambari-server启动时,从server节点分发到各agent节点;

3.安装service时,会默认yum安装,而且它对于安装服务,有30分钟的超时时间,如果30分钟内没有下载完,就会造成安装失败。这意味着大部分情况下需要你配置本地yum源;

4.web界面的start,stop命令,会被server发送给agent,由agent调用生命周期脚本中的对应方法来实现服务起停。

▌**服务定制开发**

虽然Ambari已经支持大多数Hadoop组件,但是有时候我们希望通过Ambari监控管理部署在集群上的自研程序,这时候就需要用到ambari的服务定制。

下面,我们将尝试开发一个叫EGSERVER的服务,并将它添加到一个已存在的stack里:

1.创建服务定义目录

宝马娱乐在线 4

2.进入刚创建的目录,创建编辑metainfo.xml文件

宝马娱乐在线 5

宝马娱乐在线 6

宝马娱乐在线 7

宝马娱乐在线 8

编辑metainfo.xml时要注意:

a.service和component的name一定要大写;

b.cardinality节点表示安装数。

本文由宝马娱乐在线城发布于世界互联,转载请注明出处:Ambari宝马娱乐在线-整体介绍

关键词: