Ambari——大数据平台的搭建利器

虽然大数据越来越流行,但其学习的门槛却一直阻碍着很多的分布式应用初学者或者大数据的业务应用开发者。多个产品之间的不兼容问题,快速集成和维护也显得比较困难。不管是 Hadoop V1 或者 V2 的安装,又或者 Spark/YARN 等的集成,都不是几行简单的命令可以完成的,而是需要手工修改很多的集群配置,这进一步增加了业务开发者的学习和使用难度。有了 Ambari,这些都不再是难题。

Ambari 是什么

Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目。目前最新的发布版本是 2.0.1,未来不久将发布 2.1 版本。就 Ambari 的作用来说,就是创建、管理、监视 Hadoop 的集群,但是这里的 Hadoop 是广义,指的是 Hadoop 整个生态圈(例如 Hive,Hbase,Sqoop,Zookeeper 等),而并不仅是特指 Hadoop。用一句话来说,Ambari 就是为了让 Hadoop 以及相关的大数据软件更容易使用的一个工具。

说到这里,大家就应该明白什么人最需要 Ambari 了。那些苦苦花费好几天去安装、调试 Hadoop 的初学者是最能体会到 Ambari 的方便之处的。而且,Ambari 现在所支持的平台组件也越来越多,例如流行的 Spark,Storm 等计算框架,以及资源调度平台 YARN 等,我们都能轻松地通过 Ambari 来进行部署。

Ambari 自身也是一个分布式架构的软件,主要由两部分组成:Ambari Server 和 Ambari Agent。简单来说,用户通过 Ambari Server 通知 Ambari Agent 安装对应的软件;Agent 会定时地发送各个机器每个软件模块的状态给 Ambari Server,最终这些状态信息会呈现在 Ambari 的 GUI,方便用户了解到集群的各种状态,并进行相应的维护。详细的操作和介绍会在后续章节介绍。

Ambari 的安装

安装准备

关于 Ambari 的安装,目前网上能找到两个发行版,一个是 Apache 的 Ambari,另一个是 Hortonworks 的,两者区别不大。这里就以 Apache 的 Ambari 2.0.1 作为示例。本文使用三台 RedHat 6.6 作为安装环境(目前测试验证结果为 Ambari 在 Redhat 6.6 的版本上运行比较稳定),三台机器分别为 zwshen37.example.com、zwshen38.example.com、zwshen39.example.com。zwshen37 计划安装为 Ambari 的 Server,另外两台为 Ambari Agent。

安装 Ambari 最方便的方式就是使用公共的库源(public repository)。有兴趣的朋友可以自己研究一下搭建一个本地库(local repository)进行安装。这个不是重点,所以不在此赘述。在进行具体的安装之前,需要做几个准备工作。

  1. SSH 的无密码登录;
    Ambari 的 Server 会 SSH 到 Agent 的机器,拷贝并执行一些命令。因此我们需要配置 Ambari Server 到 Agent 的 SSH 无密码登录。在这个例子里,zwshen37 可以 SSH 无密码登录 zwshen38 和 zwshen39。
  2. 确保 Yum 可以正常工作;
    通过公共库(public repository),安装 Hadoop 这些软件,背后其实就是应用 Yum 在安装公共库里面的 rpm 包。所以这里需要您的机器都能访问 Internet。
  3. 确保 home 目录的写权限。
    Ambari 会创建一些 OS 用户。
  4. 确保机器的 Python 版本大于或等于 2.6.(Redhat6.6,默认就是 2.6 的)。

以上的准备工作完成后,便可以真正的开始安装 Ambari 了。

安装过程

首先需要获取 Ambari 的公共库文件(public repository)。登录到 Linux 主机并执行下面的命令(也可以自己手工下载):

wget http://public-repo-1.hortonworks.com/ambari/CentOS6/2.x/updates/2.0.1/ambari.repo

将下载的 ambari.repo 文件拷贝到 Linux 的系统目录/etc/yum.repos.d/。拷贝完后,我们需要获取该公共库的所有的源文件列表。依次执行以下命令。

yum clean all
yum list|grep ambari

如图 1 所示:

图 1. 获取公共库源文件列表

Ambari——大数据平台的搭建利器

如果可以看到 Ambari 的对应版本的安装包列表,说明公共库已配置成功。然后就可以安装 Ambari 的 package 了。执行下面的命令安装 Ambari Server 到该机器。

yum install ambari-server

待安装完成后,便需要对 Ambari Server 做一个简单的配置。执行下面的命令。

amari-server setup

在这个交互式的设置中,采用默认配置即可。Ambari 会使用 Postgres 数据库,默认会安装并使用 Oracle 的 JDK。默认设置了 Ambari GUI 的登录用户为 admin/admin。并且指定 Ambari Server 的运行用户为 root。

简单的 setup 配置完成后。就可以启动 Ambari 了。运行下面的命令。

ambari-server start

当成功启动 Ambari Server 之后,便可以从浏览器登录,默认的端口为 8080。以本文环境为例,在浏览器的地址栏输入 http://zwshen37.example.com:8080,登录密码为 admin/admin。登入 Ambari 之后的页面如下图。

图 2. Ambari 的 welcome 页面

Ambari——大数据平台的搭建利器

图 2. Ambari 的 welcome 页面

Ambari——大数据平台的搭建利器

至此,Ambari Server 就安装完成了。

部署一个 Hadoop2.x 集群

到这一节,我们将可以真正地体验到 Ambari 的用武之地,以及它所能带来的方便之处。

登录 Ambari 之后,点击按钮“Launch Install Wizard”,就可以开始创建属于自己的大数据平台。

第一步,命名集群的名字。本环境为 bigdata。

第二步,选择一个 Stack,这个 Stack 相当于一个 Hadoop 生态圈软件的集合。Stack 的版本越高,里面的软件版本也就越高。这里我们选择 HDP2.2,里面的对应的 Hadoop 版本为 2.6.x。

第三步,指定 Agent 机器(如果配置了域,必须包含完整域名,例如本文环境的域为 example.com),这些机器会被安装 Hadoop 等软件包。还记得在安装章节中提到的 SSH 无密码登陆吗,这里需要指定当时在 Ambari Server 机器生成的私钥(ssh-keygen 生成的,公钥已经拷贝到 Ambari Agent 的机器,具体的 SSH 无密码登录配置,可以在网上很容易找到配置方法,不在此赘述)。另外不要选择“Perform manual registration on hosts and do not use SSH“。因为我们需要 Ambari Server 自动去安装 Ambari Agent。具体参见下图示例。

图 3. 安装配置页面

Ambari——大数据平台的搭建利器

图 3. 安装配置页面

Ambari——大数据平台的搭建利器

第四步,Ambari Server 会自动安装 Ambari Agent 到刚才指定的机器列表。安装完成后,Agent 会向 Ambari Server 注册。成功注册后,就可以继续 Next 到下一步。

第五步,这里我们终于看到跟 Hadoop 有关的名词了。在这一步,我们需要选择要安装的软件名称。本文环境选择了 HDFS,YARN + MapReduce2,Zoopkeeper,Storm 以及 Spark。选的越多,就会需要越多的机器内存。选择之后就可以继续下一步了。这里需要注意某些 Service 是有依赖关系的。如果您选了一个需要依赖其他 Service 的一个 Service,Ambari 会提醒安装对应依赖的 Service。参见下图。

图 4. Service 选择页面

Ambari——大数据平台的搭建利器

图 4. Service 选择页面

Ambari——大数据平台的搭建利器

第六步和第七步,分别是选择安装软件所指定的 Master 机器和 Slave 机器,以及 Client 机器。这里使用默认选择即可(真正在生产环境中,需要根据具体的机器配置选择)。

第八步,就是 Service 的配置。绝大部分配置已经有默认值,不需要修改。初学者,如果不需要进行调优是可以直接使用默认配置的。有些 Service 会有一些必须的手工配置项,则必须手动输入,才可以下一步。本文环境直接使用默认配置。

第九步,Ambari 会总结一个安装列表,供用户审阅。这里没问题,就直接下一步。

第十步,Ambari 会开始安装选择的 Service 到 Ambari Agent 的机器(如下图)。这里可能需要等好一会,因为都是在线安装。安装完成之后,Ambari 就会启动这些 Service。

图 5. Service 的安装进度

Ambari——大数据平台的搭建利器

图 5. Service 的安装进度

Ambari——大数据平台的搭建利器

安装完成之后,就可以查看 Ambari 的 Dashboard 了。例如下图。

图 6. Ambari 的 Dashboard 页面

Ambari——大数据平台的搭建利器

图 6. Ambari 的 Dashboard 页面

Ambari——大数据平台的搭建利器

至此,您专属的 bigdata 集群已经安装完成。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: