Ambari是Hortonworks开源的一个管理和安装hadoop集群的工具,跟ClouderaManager类似。
1、系统要求
1.1、操作系统要求
都要求是64位操作系统。
Red Hat EnterPrise Linux:5.x 或 6.x
CentOS:5.x 或 6.x
SUSE Linux Enterprise Server 11, SP1
必须有相应版本的操作系统包,否则安装会遇到错误
1.2、 浏览器要求
Ambari是一个基于浏览器的web程序,要求如下:
Windows(Vista,7)
IE9或以上
Firefox最新版
Safari最新版
Google Chrome最新版
Mac OS X(10.6或以上)
Firefox最新版
Safari最新版
Google Chrome最新版
Linux(RHEL、CentOS、SLES)
Firefox最新版
Google Chrome最新版
1.3、软件要求
yum
rpm
scp
curl
wget
pdsh
如果使用SUSE操作系统,需要把Python版本升级到2.6.8-0.15.1
1.4、数据库要求
Hive/HCatalog、Oozie和Ambari都需要一个内部数据库。
Hive/HCatalog:默认使用Ambari自带的Mysql5.x。也可以自己配置Oracle 11g r2。
Oozie:默认使用Ambari自带的Derby。也可以自己配置Mysql5.x和Oracle 11g r2。
Ambari:默认使用Ambari自带的PostgreSQL8.x,也可以使用Oracle 11g r2.
2、环境准备
2.1、检查已经安装的软件:
RHEL/CentOS v5
RHEL/CentOS v6
SLES 11
Ambari Server |
|
-
postgresql 8.4.13-1.el6_3
-
postgresql-libs 8.4.13-1.el6_3
-
postgresql-server 8.4.13-1.el6_3
|
|
Ambari Agent[a] |
|
None
|
None
|
Nagios Server[b] |
|
-
nagios 3.2.3-2.el6
-
nagios-plugins1.4.9-1
|
-
nagios 3.2.3-2.1
-
nagios-plugins 1.4.9-1
-
nagios-www 3.2.3-2.1
|
Ganglia Collector[c] |
-
ganglia-gmetad 3.2.0-99
-
rrdtool 1.4.5-1.el5
|
-
ganglia-gmetad 3.2.0-99
-
rrdtool 1.4.5-1.el6
|
-
ganglia-gmetad 3.2.0-99
-
rrdtool 1.4.5-4.5.1
|
Ganglia Monitor[d] |
ganglia-gmond 3.2.0-99
|
ganglia-gmond 3.2.0-99
|
ganglia-gmond 3.2.0-99
|
[a] 集群中的每台机器都要安装,用来与Ambari服务器沟通,来执行命令。
[d] 集群中的每台机器都要安装,用来向Ganglia收集器发送指标。
|
2.2、设置无密码SSH
为了让Ambari Server在集群各节点上安装Ambari Agent,必须在各节点上配置无密码登录。
步骤如下:
1)在Ambari服务器上生成SSH公私钥对:
ssh-keygen
所有步骤全部点回车,如果提示是否要overwrite,填写y。会生成两个文件,分别是“/root/.ssh/id_rsa”是私钥,“/root/.ssh/id_rsa.pub”是公钥。
2)将公私钥拷贝到服务器所在主机的主账号.ssh目录下。如果就是在目标主机进行的操作,那么公私钥会自动生成在对应的路径下,如果不是,就拷贝过去。
3)将公钥的内容复制到“/root/.ssh/authorized_keys”文件中、
cat id_rsa.pub >> authorized_keys
4)将~/.ssh目录权限设置为700,~/.ssh/authorized_keys文件权限设置为600
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
5)将authorized_keys文件拷贝到集群其他主机root用户的~/.ssh路径下。
2.3、配置NTP,将集群中所有主机的时间同步。
2.4、系统不支持ip访问,需要使用主机名。
检查DNS,需要配置好集群中各节点的DNS和反向DNS,如果没有DNS,就需要配置各节点的/etc/hosts文件。
将所有节点的“{ip} {对应主机名}”加入到/etc/hosts文件中即可。
可以用hostname -f命令来查看主机名。
最后还需要配置网络文件:
打开网络配置文件:vi /etc/sysconfig/network
输入以下内容:
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME={主机名}
GATEWAY={网关地址}
2.5、 禁用SELinux
可以选择临时性和永久性的禁用。
临时性,使用命令:
setenforce 0
永久性,修改/etc/selinux/config文件
SELINUX=disabled
SELINUXTYPE=targeted
2.6、禁用iptables,使用以下命令
chkconfig iptables off
/etc/init.d/iptables stop
2.7、禁用PackageKit
在RHEL/CentOS中,编辑/etc/yum/pluginconf.d/refresh-packagekit.conf,进行如下修改
enabled=0
2.8、检查umask的值
集群的所有机器上,umask的值必须是022
可以在/etc/profile中设置
2.9、安装python26(集群所有机器都要安装)
下载以下的包:
python26:http://dl.fedoraproject.org/pub/epel/5/x86_64/python26-2.6.8-2.el5.x86_64.rpm
libffi.so.5()(64bit):http://dl.fedoraproject.org/pub/epel/5/x86_64/libffi-3.0.5-1.el5.x86_64.rpm
libpython2.6.so.1.0()(64bit):http://dl.fedoraproject.org/pub/epel/5/x86_64/python26-libs-2.6.8-2.el5.x86_64.rpm*
把这三个放在同一个目录下,进行安装
rpm -ivh *.rpm
rpm -ivh python26*
3、创建系统软件源
创建系统软件园系统apache server和createrepo软件包,如果没有需要安装。
3.1、下载ambari、HDP和HDP-Utils软件包
ambari:http://public-repo-1.hortonworks.com/ambari/centos5/ambari-1.2.5.17-centos5.tar.gz
HDP:http://s3.amazonaws.com/public-repo-1.hortonworks.com/HDP/centos5/HDP-1.3.2.0-centos5-rpm.tar.gz
HDP-Utils:http://s3.amazonaws.com/public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.16/repos/centos5/HDP-UTILS-1.1.0.16-centos5.tar.gz
3.2、建立ambari库
1)解压后,将(解压相对路径)
ambari-1.2.5.17-centos5\ambari\centos5\1.x\updates\1.2.5.17\noarch
ambari-1.2.5.17-centos5\ambari\centos5\1.x\updates\1.2.5.17\x86_64
等两个目录拷贝到本地库所在主机的/var/www/html/ambari路径下(注意不要拷贝repodata目录)
2)创建软件源
chmod -R ugo+rX /var/www/html/ambari
cd /var/www/html/ambari
createrepo .
3)创建/etc/yum.repos.d/ambari.repo文件并加入以下内容
[ambari-1.2.5.17]
name = Ambari
baseurl = http://${server_id}/ambari/
enabled=1
gpgcheck = 0
3.3、建立hdp-util库
1)解压,将(解压相对路径)HDP-UTILS-1.1.0.16-centos5\HDP-UTILS-1.1.0.16\repos\centos5\目录下,除了hdp-util.repo文件和repodata目录之外的所有文件盒目录拷贝到软件源服务器的/var/www/html/hdp-util路径下
2)创建软件源
chmod -R ugo+rX /var/www/html/hdp-util
cd /var/www/html/hdp-util
createrepo .
3)创建/etc/yum.repos.d/hdp-util.repo文件并加入以下内容
[HDP-UTILS-1.1.0.16]
name=Hortonworks Data Platform Utils Version - HDP-UTILS-1.1.0.16
baseurl=http://${server_ip}/hdp-util/
path=/
enabled=1
gpgcheck=0
3.4、建立HDP库
1)解压,将(解压相对路径)HDP-1.3.2.0-centos5-rpm\HDP\centos5\1.x\updates\1.3.2.0\目录下,除了hdp.repo文件和repodata目录之外的所有文件盒目录拷贝到软件源服务器的/var/www/html/hdp路径下
2)创建软件源
chmod -R ugo+rX /var/www/html/hdp
cd /var/www/html/hdp
createrepo .
3)注意不要创建相应的库描述文件,这个文件会在ambari安装ambari-agent的过程中自动创建
3.5、创建系统软件源
1)把系统安装光盘(或镜像文件)下Packages(centos)路径下的所有软件包拷贝到软件源服务器的/var/www/html/system路径下
2)创建软件源
chmod -R ugo+rX /var/www/html/hdp
cd /var/www/html/hdp
createrepo .
3)创建/etc/yum.repos.d/system.repo文件并加入以下内容
baseurl=http://${server_ip}/system/
path=/
enabled=1
gpgcheck=0
3.6、验证软件源
在浏览器中输入http://${server_ip}/$[ambari, hdp-util, system],如果三个源都正确显示,切生成了repodata目录,说明软件源创建正确。
3.6、复制软件源描述文件
将软件源服务器/etc/yum.repos.d/目录下的ambari.repo、hdp-util.repo、system.repo等三个文件拷贝到集群所有主机的/etc/yum.repos.d/目录下。
在各主机上运行命令 yum repolist,如果显示下面的文字,说明操作正确。
repo id repo name
ambari-1.2.5.17 Ambari
HDP-UTILS-1.1.0.16 Hortonworks Data Platform Utils Version - HDP-UTILS-1.1.0.16
system system
4、安装
4.1、安装ambari-server的二进制包
在ambari服务器上执行:
yum install ambari-server
4.2、修改/etc/ambari-server/conf/ambari.properties
1)下载http://public-repo-1.hortonworks.com/ARTIFACTS/jce_policy-6.zip文件,放在本地http服务器上(软件源服务器即可)。
将 jce_policy.url 属性值设为这个文件的本地地址。
例如,将文件放在了apache server的/var/www/html/xx/jce_policy-6.zip路径的话,地址是:http://{server_ip}/xx/jce_policy-6.zip
2)自己做一个名字叫“public-hostname”的文件,文件内容与/etc/hosts相同,要包含集群内所有主机的主机名和ip地址对,放到本地http服务器上。
将server.fqdn.service.url 属性值设为文件的本地地址。
3)到oracle网站下载一个jdk-6u31-linux-x64.bin 安装文件,放在本地http服务器上。
将jdk.url 属性值改为文件的本地地址。
4)在文件末尾加上:security.passwords.encryption.enabled=false
4.2、安装ambari-server
ambari-server setup -j ${JAVA_HOME}
注意:这个JAVA_HOME需要在集群所有主机上使用同一个路径
4.3、配置ambari-server,使之能够找到本地HDP库
vi /var/lib/ambari-server/resources/stacks/HDPLocal/${version}/repos/repoinfo.xml
这个文件中有很多操作系统条目,找到你的系统所在的条目,将baseurl的值改为hdp库的地址。
注:根据你自己的版本号变更${version}的值
4.4、启停ambari-server
ambari-server start
ambari-server stop
4.5、登录ambari-server
默认用户名/密码:admin/admin
如果出现了登录界面并能登录成功,说明安装成功了。
5、安装HDP
1、安装步骤如下:
1)环境界面,敲入集群名:
2)选择安装包,我们选择1.3.0
3)安装选项:
填写要加入集群的机器,每行写一个,可以使用表达式,如:gic20[6-31],即使gic206-gic231之间的所有机器
选择ssh私钥文件。选择之前做ssh无密码登陆时创建的私钥,通常名字为id_rsa。
SSH user,我们使用root
高级选项中,我们选择本地软件库而不是联网;填写主机上64位JDK的地址。
4)确认主机:
如果成功可能会抛出几个异常,包括:1)有些用户不应该存在;2)有些目录不应该存在;3)有的服务不应该启动;4)有的服务需要启动。按照提示,做相应的操作。
5)选择要安装的服务。
6)指定Master
NameNode和SecondaryNameNode要放在一起
NameNode和JobTracker要放在一起
否则JobTracker和SecondaryNameNode会找不到NameNode,这个问题还没有解决,谁解决了请告诉一下解决方法。(zhang.jb@neusoft.com)
7)选择slave和客户端
8)定义服务参数
9)review:检查一下设置,下一步就是部署了。
10)安装、启动和测试
6、注意事项:
6.1、ambari库描述文件的名称必须是 ambari.repo
6.2、日志查看
tail -300f /var/log/ambari-server/ambari-server.log
tail -300f /var/log/ambari-agent/ambari-agent.log
6.3、如果失败,可以使用下面的命令重新来过。
手工在所有集群节点上执行:ambari-agent stop
在主节点上执行:ambari-server stop ; ambari-server reset; ambari-server start,即可重新来过。
有时候ambari-server启动时ambari-agent已经在之前安装完毕,会卡在集群安装的确认主机(第四步),需要手工将集群其他节点的agent启动。
6.4、安装过程中如果失败,最好清空一下浏览器的历史记录,有时候即使ambari-server reset了,登录浏览器后也会直接跑到失败那一步。
6.5、Hadoop安装过程中提示hdp库id找不到
下面两个位置的库id要保持一致
1)/var/lib/ambari-server/resources/stacks/HDPLocal/${version}/repos/repoinfo.xml文件中的“repoid”属性值
2)安装集群第二步选择的版本号
6.6、安装时设置的jdk路径,需要对创建的所有ambari用户具有可执行权限
6.7、最好找一个干净的环境来安装,本人用之前装过Cloudera的机器来装,真是费了九牛二虎之力啊...
7、ambari卸载脚本
#1.删除hdp.repo和hdp-util.repo
cd /etc/yum.repos.d/
rm -rf hdp*
rm -rf HDP*
rm -rf ambari*
#2.删除安装包
#用yum list installed | grep HDP来检查安装的ambari的包
yum remove -y ambari-server.noarch
yum remove -y ambari-agent.x86_64
yum remove -y sqoop.noarch
yum remove -y lzo-devel.x86_64
yum remove -y hadoop-libhdfs.x86_64
yum remove -y rrdtool.x86_64
yum remove -y hbase.noarch
yum remove -y pig.noarch
yum remove -y lzo.x86_64
yum remove -y ambari-log4j.noarch
yum remove -y oozie.noarch
yum remove -y oozie-client.noarch
yum remove -y gweb.noarch
yum remove -y snappy-devel.x86_64
yum remove -y hcatalog.noarch
yum remove -y python-rrdtool.x86_64
yum remove -y nagios.x86_64
yum remove -y webhcat-tar-pig.noarch
yum remove -y snappy.x86_64
yum remove -y libconfuse.x86_64
yum remove -y mysql.x86_64
yum remove -y webhcat-tar-hive.noarch
yum remove -y ganglia-gmetad.x86_64
yum remove -y extjs.noarch
yum remove -y hive.noarch
yum remove -y hadoop-lzo.x86_64
yum remove -y hadoop-lzo-native.x86_64
yum remove -y hadoop-native.x86_64
yum remove -y hadoop-pipes.x86_64
yum remove -y nagios-plugins.x86_64
yum remove -y hadoop.x86_64
yum remove -y zookeeper.noarch
yum remove -y mysql-libs.x86_64
yum remove -y mysql-connector-java.noarch
yum remove -y hadoop-sbin.x86_64
yum remove -y ganglia-gmond.x86_64
yum remove -y libganglia.x86_64
yum remove -y perl-rrdtool.x86_64
yum remove -y epel-release.noarch
yum remove -y compat-readline5*
yum remove -y fping.x86_64
yum remove -y perl-Crypt-DES.x86_64
#3.删除用户
userdel nagios
userdel hive
userdel ambari-qa
userdel hbase
userdel oozie
userdel hcat
userdel mapred
userdel hdfs
userdel rrdcached
userdel zookeeper
userdel mysql
userdel sqoop
userdel puppet
#4.删除文件夹
rm -rf /hadoop
rm -rf /etc/hadoop
rm -rf /etc/hbase
rm -rf /etc/hcatalog
rm -rf /etc/hive
rm -rf /etc/ganglia
rm -rf /etc/nagios
rm -rf /etc/oozie
rm -rf /etc/sqoop
rm -rf /etc/zookeeper
rm -rf /etc/hue
rm -rf /var/run/hadoop
rm -rf /var/run/hbase
rm -rf /var/run/hive
rm -rf /var/run/ganglia
rm -rf /var/run/nagios
rm -rf /var/run/oozie
rm -rf /var/run/zookeeper
rm -rf /var/log/hadoop
rm -rf /var/log/hbase
rm -rf /var/log/hive
rm -rf /var/log/nagios
rm -rf /var/log/oozie
rm -rf /var/log/zookeeper
rm -rf /usr/lib/hadoop
rm -rf /usr/lib/hbase
rm -rf /usr/lib/hcatalog
rm -rf /usr/lib/hive
rm -rf /usr/lib/oozie
rm -rf /usr/lib/sqoop
rm -rf /usr/lib/zookeeper
rm -rf /var/lib/hue
rm -rf /var/lib/hive
rm -rf /var/lib/ganglia
rm -rf /var/lib/oozie
rm -rf /var/lib/zookeeper
rm -rf /var/tmp/oozie
rm -rf /tmp/hive
rm -rf /tmp/nagios
rm -rf /tmp/ambari-qa
rm -rf /tmp/sqoop-ambari-qa
rm -rf /var/nagios
rm -rf /hadoop/oozie
rm -rf /hadoop/zookeeper
rm -rf /hadoop/mapred
rm -rf /hadoop/hdfs
rm -rf /tmp/hadoop-hive
rm -rf /tmp/hadoop-nagios
rm -rf /tmp/hadoop-hcat
rm -rf /tmp/hadoop-ambari-qa
rm -rf /tmp/hsperfdata_hbase
rm -rf /tmp/hsperfdata_hive
rm -rf /tmp/hsperfdata_nagios
rm -rf /tmp/hsperfdata_oozie
rm -rf /tmp/hsperfdata_zookeeper
rm -rf /tmp/hsperfdata_mapred
rm -rf /tmp/hsperfdata_hdfs
rm -rf /tmp/hsperfdata_hcat
rm -rf /tmp/hsperfdata_ambari-qa
#5.删除ambari包
#采用这句命令来检查yum list installed | grep ambari
yum remove -y ambari-*
yum remove -y postgresql
rm -rf /etc/yum.repos.d/ambari*
rm -rf /var/lib/ambari*
rm -rf /var/log/ambari*
rm -rf /etc/ambari*
rm -rf /usr/lib/ambari*
#6.删除快捷方式
cd /etc/alternatives
rm -rf hadoop-conf
rm -rf hbase-conf
rm -rf hive-conf
rm -rf hadoop-etc
rm -rf zookeeper-conf
rm -rf hbase-conf
rm -rf hadoop-log
rm -rf hadoop-lib
rm -rf hadoop-default
rm -rf oozie-conf
rm -rf hcatalog-conf
rm -rf hadoop-man
rm -rf sqoop-conf
相关推荐
doop/sbin/hadoop-daemon.sh stop datanode /usr/local/hadoop/sbin/hadoop-daemon.sh stop namenode),然后在所有节点上配置主机名(hostname)和 hosts 文件,确保节点间能够互相识别。接着,配置 Hadoop 配置文件...
常用的Hadoop集群监控工具有Ambari、Ganglia、Nagios等,它们提供可视化界面,方便管理员实时查看和管理集群。 接下来,我们讨论Hive的高可用性。Hive是一个基于Hadoop的数据仓库工具,用于结构化和半结构化数据的...
【Hadoop集群部署详解】 Hadoop是一个开源的分布式计算框架,它允许在大规模集群中处理海量数据。在本文中,我们将深入探讨如何部署Hadoop集群,以及如何解决部署过程中可能遇到的问题。 1. **硬件与环境准备** -...
Ambari 是一个基于开源的 Hadoop 集群管理工具,提供了一个易于使用的图形用户界面来管理 Hadoop 集群。下面是 Ambari 安装文档的详细步骤和知识点总结: Linux 系统环境配置 1. 配置 IP 地址:在 Linux 系统中,...
Ambari 是一个开源工具,主要用于简化Hadoop集群的部署、管理和监控。在这个文档中,我们将探讨使用Ambari进行集群部署的关键步骤。 首先,为了准备集群环境,我们需要执行一些预安装任务。关闭防火墙和SELinux是...
3. **监控和日志聚合**:为了提高集群的可管理性和故障排查效率,还需要设置监控系统(如Ambari Metrics Collector)和日志聚合工具(如Flume或Logstash),以便集中查看和分析整个集群的状态和日志信息。...
Ambari是由Apache软件基金会开发的一款开源项目,主要用于简化Hadoop集群的安装、配置和管理。它通过提供直观的Web UI和RESTful API,使得管理员能够轻松地执行常见的集群操作,如添加或删除节点、查看日志和监控...
通过Web界面,Ambari简化了Hadoop集群的部署过程,使用户可以更方便地进行操作。Ambari 2.6.0版本是其更新中的一个重要里程碑,带来了多项改进和新特性。 #### 二、Ambari 2.6.0 主要功能 1. **统一的安装与配置**...
通过修改`/etc/rc.local`文件或者直接在命令行中使用`echo never > /sys/kernel/mm/transparent_hugepage/enabled`来关闭THP,以保证系统性能不受影响。 5. SSH免密登录配置 Ambari安装过程及大数据平台的管理依赖...
【Ambari与大数据集群部署】 Apache Ambari 是一个开源工具,专门设计用于简化Hadoop和其他大数据组件的管理和部署。在这个详细的Ambari安装文档中,我们将深入理解如何在公司环境中设置大数据集群,首先从操作系统...
在进行数据分析之前,需要搭建好Hadoop集群并进行相应的配置。 1. **安装Hadoop集群**: - **NameNode**:负责管理文件系统的命名空间,并维护文件系统元数据。 - **DataNode**:负责存储实际的数据块。 - **...
12. **Hadoop监控**:通过Ambari等工具可以对Hadoop集群进行实时监控,包括资源使用情况、作业状态、日志分析等。 在安装过程中,可能会遇到各种问题,如网络连接问题、权限问题等,解决这些问题需要对Linux系统和...
本文档详细介绍了如何在CentOS 6.5环境下搭建Ambari + HDP集群。虽然这里的步骤针对的是CentOS 6.5版本,但大部分步骤在其他版本的CentOS或类似的Linux发行版中也是适用的。 **集群节点信息:** - hadoop05 (192....
在IT领域,Hadoop是一个广泛使用的开源框架...通过以上步骤,你可以成功配置并运行一个Hadoop集群。但要注意,Hadoop的配置是一个动态的过程,需要根据实际需求和资源情况进行调整。不断学习和实践是掌握Hadoop的关键。
本压缩包“hadoop-2.7.5-with-centos7.6.tar.gz”提供了预编译的Hadoop 2.7.5版本,特别针对CentOS 7.6操作系统进行了优化,旨在为用户在该环境下搭建Hadoop集群提供便利。 一、Hadoop 2.7.5简介 Hadoop 2.7.5是...
另外,为了监控和管理Hadoop集群,可以安装Ambari工具,它提供了一个用户友好的Web界面。 一旦Hadoop安装成功,你可以通过编写MapReduce程序来处理数据。Hadoop支持多种编程语言,如Java、Python和Scala。MapReduce...
- **知识点说明**:Hadoop集群可以通过多种工具进行管理,包括但不限于Apache Ambari、Cloudera Manager、Apache Oozie等。这些工具提供了集中化的界面,便于用户监控和管理集群资源、部署应用程序和服务等。 2. *...
在实际的大数据平台搭建中,如Ambari,Kerberos常被集成以实现更高级别的安全控制。通过配置Kerberos,可以确保只有经过认证的用户和服务才能访问Hadoop集群的资源,从而保护数据的安全。 总的来说,Hadoop的安全...