文档章节

Ambari安装指南

白石
 白石
发布于 2015/10/26 10:25
字数 1506
阅读 1710
收藏 3

(WJW)Ambari安装指南

     Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目.目前最新的发布版本是 2.1.2.
就 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,方便用户了解到集群的各种状态,并进行相应的维护.


[X] 安装环境:

  • 系统版本:CentOS 6.3 x86_64
  • JAVA版本:JDK-1.7.x
  • 确保机器的 Python 版本大于或等于2.6
  • 服务器列表:

192.168.68.17 T1.youyuan.cn #Ambari Server,namenode1,resourcemanager

192.168.68.18 T2.youyuan.cn #Ambari Agent,namenode2,journalnode1,datanode1,nodemanager1

192.168.68.20 T3.youyuan.cn #Ambari Agent,journalnode2,datanode2,nodemanager2

192.168.68.21 T4.youyuan.cn #Ambari Agent,journalnode3,datanode3,nodemanager3

  • SSL

需要openssl的1.0以上版本!

yum install openssl
或者
yum upgrade openssl
  • JDK

建议安装Sun的JDK1.7版本! 安装完毕并配置java环境变量,在/etc/profile末尾添加如下代码:
export JAVA_HOME=/usr/java/default
export PATH=$JAVA_HOME/bin:$PATH
保存退出即可,然后执行source /etc/profile生效.在命令行执行java -version 如下代表JAVA安装成功.

  • ssh

需要配置各个节点的免密码登录!
首先在自己机器上使用ssh-keygen -t rsa
会要求输入密码(必须为空),回车几次,然后会在HOME目录下生成.ssh文件夹,
里面有私钥和公钥,公钥为~/.ssh/id_rsa.pub,私钥为~/.ssh/id_rsa.
配置本地的免登录 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
现在你需要将你的公钥拷贝到服务器上,如果你的系统有ssh-copy-id命令,拷贝会很简单:ssh-copy-id 用户名@服务器名, 否则,你需要手动将你的私钥拷贝到服务器上的~/.ssh/authorized_keys文件中!scp ~/.ssh/authorized_keys T1.youyuan.cn:/root/.ssh/

  • NTP

集群的时钟要保证基本的一致.稍有不一致是可以容忍的,但是很大的不一致会 造成奇怪的行为. 运行 NTP 或者其他什么东西来同步你的时间.
如果你查询的时候或者是遇到奇怪的故障,可以检查一下系统时间是否正确!

echo "server 192.168.0.2" >> /etc/ntp.conf  
chkconfig ntpd on  
service ntpd restart  
ntpq -p  
  • ulimit和nproc

Hdaoop会在同一时间使用很多的文件句柄.大多数linux系统使用的默认值1024是不能满足的,修改/etc/security/limits.conf文件为:

      *               soft    nproc   16384
      *               hard    nproc   16384  
      *               soft    nofile  65536  
      *               hard    nofile  65536  

  • 修改 192.168.68.17,192.168.68.18,192.168.68.20,192.168.68.21etc/hosts文件 在文件最后添加:
192.168.68.17  T1.youyuan.cn
192.168.68.18  T2.youyuan.cn
192.168.68.20  T3.youyuan.cn 
192.168.68.21  T4.youyuan.cn

  • 禁止 PackageKit
pkill -9 packagekitd
vim /etc/yum/pluginconf.d/refresh-packagekit.conf

将内容改为enabled=0


[X] 安装Ambari Server

在T1上操作

[1] 添加yum资源库:

cd /tmp
wget -O ambari.repo http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.1.2/ambari.repo  
cp ambari.repo /etc/yum.repos.d  
yum install epel-release

[2] 校验YUM仓库ambari:

由于公司安全机制,这个地方可能不会安装成功
执行yum repolist,如果有ambari字符串的话,就可以开始安装了!

[3.1] YUM在线安装: ambari-server

yum install ambari-server

实验证明,网速巨慢,耐心...,等待安装完成!

[3.2] YUM离线本地安装: ambari-server

  • 先找一个网络好的环境,配置/etc/yum.conf文件,修改keepcache1,来保留安装包;再通过yum install ambari-server安装成功后后;把相关的rpm文件复制到需要离线安装的环境上;例如:
ambari-server-2.1.2-377.x86_64.rpm
ambari-agent-2.1.2-377.x86_64.rpm
postgresql-8.4.20-3.el6_6.x86_64.rpm
postgresql-devel-8.4.20-3.el6_6.x86_64.rpm
postgresql-libs-8.4.20-3.el6_6.x86_64.rpm
postgresql-server-8.4.20-3.el6_6.x86_64.rpm
  • 再执行yum localhost ./postgresql-8.4.20-3.el6_6.x86_64.rpm ./postgresql-server-8.4.20-3.el6_6.x86_64.rpm ./postgresql-libs-8.4.20-3.el6_6.x86_64.rpm ./postgresql-devel-8.4.20-3.el6_6.x86_64.rpm ./ambari-server-2.1.2-377.x86_64.rpm来进行离线安装!

[5] 配置AMBARI-SERVER

##指定JAVA_HOME
ambari-server setup -j /usr/java/default
##不指定JAVA_HOME执行
ambari-server setup

选择n会按默认配置
数据库类型:postgresql
数据库:ambari
用户名:ambari
密码:bigdata
等待安装完成

[6] 启动AMBARI-SERVER

##启动:
ambari-server start
##查看:
ps -ef | grep Ambari
##停止:
ambari-server stop
##帮助
ambari-server help

然后访问:http://T1.youyuan.cn:8080
不出意外的话就安装完成了
用户名/密码:admin/admin

[6] 安装AMBARI-AGENT

在网络环境不好的地方或者sshd的端口不是标准的22时,可以在每个agent节点上先手工安装AMBARI-AGENT

yum install ambari-agent

备注:

  • 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

FAQ

  • 主机名格式必须是hoastname.domain,如T1.youyuan.cn
  • Zookeeper-Agent端修改Server指向的HOSTNAME, /etc/ambari-agent/conf/ambari-agent.ini,如修改过主机hostname
  • 安装失败后或重新安装先执行ambari-server resetambari-setup
  • 最后一步安装可能会失败,多数原因是下载包错误引起的,可重复安装直到成功,本人反复几个最终成功了,网络,网络,尤其就朝民,各种干扰!

© 著作权归作者所有

白石

白石

粉丝 67
博文 51
码字总数 102811
作品 1
海淀
程序员
私信 提问
加载中

评论(3)

t
thechildlee
找到问题了
是我看日志没看全,Web UI上有下面几行日志:
ERROR 2015-11-11 19:39:36,765 NetUtil.py:77 - [Errno 1] _ssl.c:492: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:unknown group
ERROR 2015-11-11 19:39:36,765 NetUtil.py:78 - SSLError: Failed to connect. Please check openssl library versions.
CentOS6.5的openssl有bug
解决方法参考:http://zh.hortonworks.com/community/forums/topic/ambari-agent-registration-failure-on-rhel-6-5-due-to-openssl-2/
t
thechildlee
补充说明:
我用的一台虚拟机,在这台虚拟机上安装了ambari-server,然后在GUI上添加集群的时候指定了这台虚拟机的hostname,hostname是vm1.lisg.com
t
thechildlee
请教您一个问题。

我的ambari-server安装成功了,我通过GUI安装一个新集群,在Confirm Hosts步骤的时候总是失败:Registering with the server...
Registration with the server failed.

/var/log/ambari-server/ambari-server.log的报错信息如下:
11 Nov 2015 19:41:45,494 ERROR [qtp-client-23] AbstractResourceProvider:279 - Caught AmbariException when creating a resource
org.apache.ambari.server.HostNotFoundException: Host not found, hostname=
at org.apache.ambari.server.state.cluster.ClustersImpl.getHost(ClustersImpl.java:343)
at org.apache.ambari.server.state.ConfigHelper.getEffectiveDesiredTags(ConfigHelper.java:108)
at org.apache.ambari.server.controller.AmbariManagementControllerImpl.findConfigurationTagsWithOverrides(AmbariManagementControllerImpl.java:1820)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMeth

我的hostname是vm1.lisg.com
Ambari在离线环境中安装Hadoop集群

(WJW)Ambari在离线环境中安装Hadoop集群 如果手工安装Hadoop集群,在管理和后继部署中,越来越多的问题不断出现,主要如下:+ 各集群节点的配置同步+ 新应用的部署:比如为集群添加hbase应用,...

白石
2015/10/26
1K
0
ambari部署hadoop集群

1、基本工具 yum、scp、curl、wget、pdsh、ssh 2、环境准备 2.1、系统环境 Centos6.5 64bit Ambari 1.4.3.38 2.2、ambari server 与 ambari agent 服务器root ssh无密互访 Ambari server服务...

chunhei2008
2014/01/18
1K
0
centos7.4配置ambari2.4.0.1+HDP-2.5.0.0

前言   由于项目需求,最近需要使用ambari配置hdp,因此在公司找了台搭建一套测试环境,测试环境运行在kvm虚拟机上,ambari版本和hdp版本没有采用最新版进行配置,为了快速进行配置,使用了...

sdhzdtwhm
2018/07/09
0
0
简单分析Ambari——顶级Hadoop管理方案

前面我们提到了两个比较火的Hadoop集群运维管理工具 Ambari和Cloudera Manager。它们集安装,配置,监控于一身,对于Hadoop的初学者可以起到很好的帮助作用。这篇文章就对Ambari着重介绍一下...

叁金
2018/05/25
0
0
Ambari离线安装hadoop集群所需资源包

ambari安装包 http://public-repo-1.hortonworks.com/ambari/centos6/ambari-1.7.0-centos6.tar.gz HDP(Hortonworks Data Platform) http://public-repo-1.hortonworks.com/HDP/centos6/H......

遇见o未来
2015/01/27
6K
0

没有更多内容

加载失败,请刷新页面

加载更多

3_数组

3_数组

行者终成事
21分钟前
3
0
经典系统设计面试题解析:如何设计TinyURL(二)

原文链接:https://www.educative.io/courses/grokking-the-system-design-interview/m2ygV4E81AR 编者注:本文以一道经典的系统设计面试题:《如何设计TinyURL》的参考答案和解析为例,帮助...

APEMESH
今天
7
0
使用logstash同步MySQL数据到ES

概述   在生成业务常有将MySQL数据同步到ES的需求,如果需要很高的定制化,往往需要开发同步程序用于处理数据。但没有特殊业务需求,官方提供的logstash就很有优势了。   在使用logstas...

zxiaofan666
今天
10
0
X-MSG-IM-分布式信令跟踪能力

经过一周多的鏖战, X-MSG-IM的分布式信令跟踪能力已基本具备, 特点是: 实时. 只有要RX/TX就会实时产生信令跟踪事件, 先入kafka, 再入influxdb待查. 同时提供实时sub/pub接口. 完备. 可以完整...

dev5
今天
7
0
OpenJDK之CyclicBarrier

OpenJDK8,本人看的是openJDK。以前就看过,只是经常忘记,所以记录下 图1 CyclicBarrier是Doug Lea在JDK1.5中引入的,作用就不详细描述了,主要有如下俩个方法使用: await()方法,如果当前线...

克虏伯
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部