阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

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

148次阅读
没有评论

共计 7804 个字符,预计需要花费 20 分钟才能阅读完成。

前言

做大数据相关的后端开发工作一年多来, 随着 Hadoop 社区的不断发展, 也在不断尝试新的东西, 本文着重来讲解下 Ambari, 这个新的 Apache 的项目, 旨在让大家能够方便快速的配置和部署 Hadoop 生态圈相关的组件的环境, 并提供维护和监控的功能.

作为新手, 我讲讲我自己的学习经历, 刚刚开始学习的时候, 当然最简单的 Google 下 Hadoop , 然后下载相关的包, 在自己的虚拟机 (CentOS 6.3) 上安装一个单机的 Hadoop 版本用来做测试, 写几个测试类, 然后做下 CRUD 测试之类的, 跑跑 Map/Reduce 的测试, 当然这个时候对于 Hadoop 还不是很了解, 不断的看别人的文章, 了解下整体的架构, 自己所做的就是修改 conf 下的几个配置文件, 让 Hadoop 能够正常的跑起来, 这个时候几种在修改配置上, 这个阶段之后, 又用到了 HBase, 这个 Hadoop 生态圈的另外一个产品, 当然还是修改配置, 然后 start-all.sh , start-hbase.sh 把服务起起来, 然后就是修改自己的程序, 做测试, 随着用 Hbase 学了下 Zookeeper 和 Hive 等, 接着过了这个操作阶段了之后, 开始研究 Hadoop2.0, 算是对 Hadoop 的生态圈整体有一些了解, 介于自己在公司所承担的开发所涉及到相关的技术仅仅就这些. 但是作为一个爱好探索的人, 是否想多了解下呢, 它的性能怎么样? 它是具体如何运作的? 看大公司的那些 PPT, 人家(淘宝等大公司) 动不动就是几十个, 几百个, 乃至几千个节点, 人家是如何管理的, 性能是怎么样的? 看着 PPT 里面的那些性能测试的曲线, 你是否也能够详细的了解, 并且对自己的项目进行性能调优呢? 我貌似找到答案了, 那就是 Ambari , 由 HortonWorks 开发的一个 Hadoop 相关的项目, 具体可以上官方去了解.

————————————– 分割线 ————————————–

相关阅读

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

Hadoop LZO 安装教程 http://www.linuxidc.com/Linux/2013-01/78397.htm

Hadoop 集群上使用 Lzo 压缩 http://www.linuxidc.com/Linux/2012-05/60554.htm

————————————– 分割线 ————————————– 

了解 Hadoop 生态圈

现在我们经常看到的一些关键字有: HDFS,MapReduce,HBase,Hive,ZooKeeper,Pig,Sqoop,Oozie,Ganglia,Nagios,CDH3,CDH4,Flume,Scribe,Fluented,HttpFS 等等, 其实应该还有更多,Hadoop 生态圈现在发展算是相当繁荣了, 而在这些繁荣的背后又是谁在推动的呢? 读过 Hadoop 历史的朋友可能知道,Hadoop 最早是始于 Yahoo, 但是现在主要是由 HortonWorks 使用 Ambari 快速部署 Hadoop 大数据环境和 Cloudera  使用 Ambari 快速部署 Hadoop 大数据环境 这 2 家公司在维护者, 大部分的 commiter 都属于这 2 家公司, 所以现在市面上看到的主要有 2 个版本,CDH 系列, 和社区版, 我最早用的是社区版本, 后来换到 CDH3, 现在又换回社区版, 因为有 Ambari. 当然, 用什么和不用什么, 只要自己的技术到家, 还是都能修改的跑的正常的. 这里就不多说了. 讲了这么多废话了, 开始讲 Ambari 安装吧.

 

开始部署

首先了解下 Ambari, 项目地址在:http://incubator.apache.org/ambari/

安装文档在: http://incubator.apache.org/ambari/1.2.2/installing-hadoop-using-ambari/content/index.html

HortonWorks 的人写的一篇介绍安装的文章我翻译了下:  http://www.linuxidc.com/Linux/2014-05/101530.htm 安装的时候请大家先看下安装文档吧, 安装文档必须认真看, 结合自己当前所使用的系统版本, 配置不同的源, 而且安装过程中需要的时间相对比较长, 所以需要认真的做好安装文档的每个步骤. 这里我就说我遇到的一些问题.

以下说说我自己的安装过程.

机器准备:

我的测试环境采用 9 台 HP 的烂机器, 分别是 cloud100 – cloud108 , cloud108 做为管理节点.

Ambari 安装的环境路径:

各台机器的安装目录:

/usr/lib/hadoop

/usr/lib/hbase

/usr/lib/zookeeper

/usr/lib/hcatalog

/usr/lib/hive

Log 路径, 这里需要看出错信息都可以在目录下找到相关的日志

/var/log/hadoop

/var/log/hbase

配置文件的路径

/etc/hadoop

/etc/hbase

/etc/hive

HDFS 的存储路径

/hadoop/hdfs

 

安装过程需要注意的点:

1, 安装的时候, 需要做好每台机器的 ssh 免密码登陆, 这篇  http://www.linuxidc.com/Linux/2014-05/101532.htm 中提到了, 做好之后, 从 管理节点到各个集群节点之间, 都能使用这个登陆.

2, 如果你的机器之前安装过 Hadoop 的相关服务, 特别是 Hbase 里面配置了 HBASE_HOME 的环境变量, 需要 unset 掉, 这个环境变量会影响, 因为我之前把这些路径放到 /etc/profile 里面导致影响了 HBase, 因为 Ambari 安装的路径和你之前安装的可能不一样.

3, 在服务选择页面的时候, NameNode 和 SNameNode 需要布置在一起, 我之前尝试做 HA 而把他们分开, 但是 SNameNode 一直起不来, 导致整个启动失败, 接下来时间需要花在 HA 上.

 

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

4. JobTrakcer 不和 Namenode 在一起也会导致 启动不起来.

5. Datanode 的节点 不能少于 Block replication 中数, 基本都是需要 >= 3.

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

6. Confirm Hosts 的时候, 需要注意里面的 Warning 信息, 把相关的 Warning 都处理掉, 有一些 Warning 会导致安装出错.

7. 记住安装中所新建的用户, 接下来需要用到这些用户.

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

8. Hive 和 HBase Master 部署在同一个节点, 这里当然你也可以分开. 设置好后就开始安装了.

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

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-05/101531p2.htm

9. 如果安装失败的情况下, 如何重新安装.

首先, 先删除掉系统已经安装的文件相关的目录,

sh file_cp.sh cmd “rm -rf /usr/lib/Hadoop && rm -rf /usr/lib/hbase && rm -rf /usr/lib/zookeeper”

sh file_cp.sh cmd “rm -rf /etc/hadoop && rm -rf /etc/hbase && rm -rf /hadoop && rm -rf /var/log/hadoop”

sh file_cp.sh cmd “rm -rf /etc/ganglia && rm -rf /etc/hcatalog && rm -rf /etc/hive && rm -rf /etc/nagios && rm -rf /etc/sqoop && rm -rf /var/log/hbase && rm -rf /var/log/nagios && rm -rf /var/log/hive && rm -rf /var/log/zookeeper && rm -rf /var/run/hadoop && rm -rf /var/run/hbase && rm -rf /var/run/zookeeper “

再在 Yum remove 掉安装的相关的包.

sh file_cp.sh cmd “yum -y remove ambari-log4j hadoop hadoop-lzo hbase hive libconfuse nagios sqoop zookeeper”

我这里使用到了自己写的 Shell, 方便在多台机器之间执行命令:

https://github.com/xinqiyang/opshell/tree/master/hadoop

Reset 下 Ambari-Server

ambari-server stop

 

ambari-server reset

 

ambari-server start

 

 

10. 注意时间的同步, 时间问题会导致 regionserver 起不来

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

 

11. iptables 需要关闭, 有的时候可能机器会重新启动, 所以不单单需要 service stop 也需要 chkconfig 关闭掉.

最后安装完成后, 登陆地址查看下服务的情况:

http:// 管理节点 ip:8080 , 比如我这里的: http://192.168.1.108:8080/ 登陆之后, 需要设置之前在安装 Ambari-server 时候输入的账号和密码, 进入

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

查看 ganglia 的监控

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

查看 nagios 的监控

前言

做大数据相关的后端开发工作一年多来, 随着 Hadoop 社区的不断发展, 也在不断尝试新的东西, 本文着重来讲解下 Ambari, 这个新的 Apache 的项目, 旨在让大家能够方便快速的配置和部署 Hadoop 生态圈相关的组件的环境, 并提供维护和监控的功能.

作为新手, 我讲讲我自己的学习经历, 刚刚开始学习的时候, 当然最简单的 Google 下 Hadoop , 然后下载相关的包, 在自己的虚拟机 (CentOS 6.3) 上安装一个单机的 Hadoop 版本用来做测试, 写几个测试类, 然后做下 CRUD 测试之类的, 跑跑 Map/Reduce 的测试, 当然这个时候对于 Hadoop 还不是很了解, 不断的看别人的文章, 了解下整体的架构, 自己所做的就是修改 conf 下的几个配置文件, 让 Hadoop 能够正常的跑起来, 这个时候几种在修改配置上, 这个阶段之后, 又用到了 HBase, 这个 Hadoop 生态圈的另外一个产品, 当然还是修改配置, 然后 start-all.sh , start-hbase.sh 把服务起起来, 然后就是修改自己的程序, 做测试, 随着用 Hbase 学了下 Zookeeper 和 Hive 等, 接着过了这个操作阶段了之后, 开始研究 Hadoop2.0, 算是对 Hadoop 的生态圈整体有一些了解, 介于自己在公司所承担的开发所涉及到相关的技术仅仅就这些. 但是作为一个爱好探索的人, 是否想多了解下呢, 它的性能怎么样? 它是具体如何运作的? 看大公司的那些 PPT, 人家(淘宝等大公司) 动不动就是几十个, 几百个, 乃至几千个节点, 人家是如何管理的, 性能是怎么样的? 看着 PPT 里面的那些性能测试的曲线, 你是否也能够详细的了解, 并且对自己的项目进行性能调优呢? 我貌似找到答案了, 那就是 Ambari , 由 HortonWorks 开发的一个 Hadoop 相关的项目, 具体可以上官方去了解.

————————————– 分割线 ————————————–

相关阅读

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

Hadoop LZO 安装教程 http://www.linuxidc.com/Linux/2013-01/78397.htm

Hadoop 集群上使用 Lzo 压缩 http://www.linuxidc.com/Linux/2012-05/60554.htm

————————————– 分割线 ————————————– 

了解 Hadoop 生态圈

现在我们经常看到的一些关键字有: HDFS,MapReduce,HBase,Hive,ZooKeeper,Pig,Sqoop,Oozie,Ganglia,Nagios,CDH3,CDH4,Flume,Scribe,Fluented,HttpFS 等等, 其实应该还有更多,Hadoop 生态圈现在发展算是相当繁荣了, 而在这些繁荣的背后又是谁在推动的呢? 读过 Hadoop 历史的朋友可能知道,Hadoop 最早是始于 Yahoo, 但是现在主要是由 HortonWorks 使用 Ambari 快速部署 Hadoop 大数据环境和 Cloudera  使用 Ambari 快速部署 Hadoop 大数据环境 这 2 家公司在维护者, 大部分的 commiter 都属于这 2 家公司, 所以现在市面上看到的主要有 2 个版本,CDH 系列, 和社区版, 我最早用的是社区版本, 后来换到 CDH3, 现在又换回社区版, 因为有 Ambari. 当然, 用什么和不用什么, 只要自己的技术到家, 还是都能修改的跑的正常的. 这里就不多说了. 讲了这么多废话了, 开始讲 Ambari 安装吧.

 

开始部署

首先了解下 Ambari, 项目地址在:http://incubator.apache.org/ambari/

安装文档在: http://incubator.apache.org/ambari/1.2.2/installing-hadoop-using-ambari/content/index.html

HortonWorks 的人写的一篇介绍安装的文章我翻译了下:  http://www.linuxidc.com/Linux/2014-05/101530.htm 安装的时候请大家先看下安装文档吧, 安装文档必须认真看, 结合自己当前所使用的系统版本, 配置不同的源, 而且安装过程中需要的时间相对比较长, 所以需要认真的做好安装文档的每个步骤. 这里我就说我遇到的一些问题.

以下说说我自己的安装过程.

机器准备:

我的测试环境采用 9 台 HP 的烂机器, 分别是 cloud100 – cloud108 , cloud108 做为管理节点.

Ambari 安装的环境路径:

各台机器的安装目录:

/usr/lib/hadoop

/usr/lib/hbase

/usr/lib/zookeeper

/usr/lib/hcatalog

/usr/lib/hive

Log 路径, 这里需要看出错信息都可以在目录下找到相关的日志

/var/log/hadoop

/var/log/hbase

配置文件的路径

/etc/hadoop

/etc/hbase

/etc/hive

HDFS 的存储路径

/hadoop/hdfs

 

安装过程需要注意的点:

1, 安装的时候, 需要做好每台机器的 ssh 免密码登陆, 这篇  http://www.linuxidc.com/Linux/2014-05/101532.htm 中提到了, 做好之后, 从 管理节点到各个集群节点之间, 都能使用这个登陆.

2, 如果你的机器之前安装过 Hadoop 的相关服务, 特别是 Hbase 里面配置了 HBASE_HOME 的环境变量, 需要 unset 掉, 这个环境变量会影响, 因为我之前把这些路径放到 /etc/profile 里面导致影响了 HBase, 因为 Ambari 安装的路径和你之前安装的可能不一样.

3, 在服务选择页面的时候, NameNode 和 SNameNode 需要布置在一起, 我之前尝试做 HA 而把他们分开, 但是 SNameNode 一直起不来, 导致整个启动失败, 接下来时间需要花在 HA 上.

 

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

4. JobTrakcer 不和 Namenode 在一起也会导致 启动不起来.

5. Datanode 的节点 不能少于 Block replication 中数, 基本都是需要 >= 3.

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

6. Confirm Hosts 的时候, 需要注意里面的 Warning 信息, 把相关的 Warning 都处理掉, 有一些 Warning 会导致安装出错.

7. 记住安装中所新建的用户, 接下来需要用到这些用户.

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

8. Hive 和 HBase Master 部署在同一个节点, 这里当然你也可以分开. 设置好后就开始安装了.

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

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-05/101531p2.htm

测试

安装完成后, 看着这些都正常了, 是否需要自己验证一下呢? 不过基本跑了冒烟测试后, 正常的话, 基本还是正常的, 但是我们自己也得来操作下吧.

验证 HDFS

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

验证 Map/Reduce

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

验证 HBase

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

验证 Hive

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

 

总结

到这里, 相关的 Hadoop 及 hbase 及 hive 的相关配置就都配置完成了, 接下来需要做一些压力测试. 还有其他方面的测试, 对于 Ambari 带的是 HortonWorks 打包的 rpm 版本的 Hadoop 相关的源码, 所以这里可能会和其他的版本有一些不同, 但是作为开发环境来说, 暂时还是没有很多大的影响的, 但是现在还没有在生产上使用, 所以也不管说如何的稳定, 接下来我会在开发项目的过程中, 将所遇到的 Bug 给列出来. 总体来说 Ambari 还是很值得使用的, 毕竟能够减少很多不必要的配置时间, 而且相对在单机环境下, 在集群环境下更能贴近生产做一些相关的性能测试和调优测试等等, 而且配置的 ganglia 和 nagios 的监控也能够发布的让我们查看到集群相关的数据, 总体来说还是推荐使用的, 新东西有 Bug 是在所难免的, 但是在用的过程中我们会不断的完善. 接下来如果有时间, 会对 Ambariserver 的功能进行扩展, 添加诸如 redis/nginx 之类的常用的高性能模块的监控选项. 这个有时间在弄了. 总之, 欢迎使用 Ambari.

 

//update:

最近遇到 Ambari 的一些问题:

1. 在自定义里面开启了 append 选项后, 还是依旧无法 append.

更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计7804字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中