Apache Ambari是一种基于Web的工具,支持Apache Hadoop集群的供应、管理和监控。Ambari目前已支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeper、Sqoop和Hcatalog等。
Apache Ambari 支持HDFS、MapReduce、Hive、Pig、Hbase、Zookeper、Sqoop和Hcatalog等的集中管理。也是5个顶级hadoop管理工具之一。
Ambari主要取得了以下成绩:
通过一步一步的安装向导简化了集群供应。
预先配置好关键的运维指标(metrics),可以直接查看Hadoop Core(HDFS和MapReduce)及相关项目(如HBase、Hive和HCatalog)是否健康。
支持作业与任务执行的可视化与分析,能够更好地查看依赖和性能。
通过一个完整的RESTful API把监控信息暴露出来,集成了现有的运维工具。
用户界面非常直观,用户可以轻松有效地查看信息并控制集群。
Ambari使用Ganglia收集度量指标,用Nagios支持系统报警,当需要引起管理员的关注时(比如,节点停机或磁盘剩余空间不足等问题),系统将向其发送邮件。
此外,Ambari能够安装安全的(基于Kerberos)Hadoop集群,以此实现了对Hadoop 安全的支持,提供了基于角色的用户认证、授权和审计功能,并为用户管理集成了LDAP和Active Directory。
![hadoop集群ambari搭建(1)之ambari-server安装_第1张图片](http://img.e-com-net.com/image/info8/121fbe3e181047a09e1cd3b2626c72ea.jpg)
1.安装centos 6.5操作系统
每一个操作系统都配置了三块网卡,一块net,一块host only,一块桥接。除了net转发动态获取IP,其他的网卡IP都是静态配置的。
系统版本:
CentOS release 6.5 (Final)
CPU:
model name : Intel(R) Core(TM) i5-4460 CPU @ 3.20GHz
stepping : 3
cpu MHz : 3192.620
cache size : 6144 KB
clflush size : 64
cache_alignment : 64
address sizes : 42 bits physical, 48 bits virtual
内存
硬盘
总容量 20G
节点名称
|
IP1
|
IP2 |
备注
|
hadoop1
|
192.168.253.188
|
动态联网
|
root/123456/192.168.1.122 桥接
|
hadoop2
|
192.168.253.189
|
动态联网
|
|
hadoop3
|
192.168.253.190
|
动态联网
|
|
2.ssh免秘钥登录
创建用户hadoop
[root@hadoop3 ~]# useradd hadoop
[root@hadoop3 ~]# passwd hadoop
修改密码
所有机器都使用同样的密码最好。
使用hadoop用户,命令如下
ssh-keygen -t rsa 生成rsa加密的密钥
cp id_rsa.pub authorized_keys copy文件
cat id_rsa.pub>>authorized_keys 将其他的秘钥追加到这一个文件中,然后分发给所有机器
[hadoop@hadoop1 .ssh]$ cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAqxuCo78OdD/GIgphhLdKFA+vop4AnyiBaNDYlUE6PPwzqoBZVmmGPjrBV+rM/GQkZ1xrDCabKywvcgz+YW5vmo511bZ9ZBXQXck/zSkHcf84YXZo56dcFd00qpbFA1y/5KhtRn4J1REhHRJFYx99ZlBr9miNnGQfZeEYJsNANzTwJGU9Vc5r5Qvkhi9bJ70THkP0rMm2fuSYKTo3QxlixGzVCrZsG6D3Rv4KdXgKtkxAAvTi/7jVEu0WovjbpFlz2VoQT86zhQUmU6S8QWkMlk8kMvEzr+QUrS08ks+8BaSi7Kw+4NmfDNNd/EmI9j8NTWQEWajebOcJYl2n7HaXNw== [email protected]
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA5O2ru0IFgXmEdRvr/7cV9cJjZ2/MrYI7ip3UttVu1y6NskQBtqWPE08pxeX3VHoxtqFoqoJCdSlpr9KByngD4Z9U6d5j2UtLbZ9ZCs59YjSO+pinZaXpeKlXH4revdfoRJtmpG4FfyBDi11maDzoJEKObyz3Pi4QxvmI12NQtttFcCRPfv7MqT9l0tuwY5aRbCZVeybWwyZjhtI15p2NAB/042OsQ/FXLvtqVRl4+IOol0yjgi8KTKaBlvWDeKVrLzl4h0tuFUcfNv0yUW+KzrTD7Zj8Q7SpFg73uLn0Ufeq5UtCo0+poMpl+yVcZt0SD1Yic8Er5/i61Pg1ehCFKQ== [email protected]
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA8wZr0bFUb0KeD8RfnX0KmujcpRw2r5hb/Opfp1ZXGU36BMmZDRwWHB8E1WaezRUubGVa/HTFm6zV7jetEJAsx9jUIPjEfRd25vW/Xej6gaYlUSg7yTf3H3KTb3wNmqiDziSD8yg9G0bPGcNXVfYAz7CEBPAxk9QFSJNtXxFeqSb9yKdBOzsA4hx1oLwV7G/xOUlCzuwSaS5YMG5eKrn1TDCK+FxcBxk6QpNAWO665XeKN/JTZi1bIQEAqC1tJJo1VFgW9/+gE2skI9RpJapVDm+TiZU/wOVqQek/hFLEfhL5f56wsJlz9lOBhxBPBGAbOBlzCJJCiOhmyx7sW73+Tw== [email protected]
scp :复制给其他的主机
3.接下来配置所有的hosts文件
[root@hadoop1 .ssh]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.253.188 hadoop1.com
192.168.253.189 hadoop2.com
192.168.253.190 hadoop3.com
~
wq保存。
分发:
4.配置完成检查是否可以免秘钥登录
[hadoop@hadoop2 ~]$ ssh hadoop3.com
The authenticity of host 'hadoop3.com (192.168.253.190)' can't be established.
RSA key fingerprint is 16:c3:fc:d7:fc:db:98:ba:ef:aa:54:e4:d9:f5:51:be.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'hadoop3.com' (RSA) to the list of known hosts.
[hadoop@hadoop3 ~]$
服务器之间可以互相ssh登录,成功
5.安装ambari
[root@hadoop1 ~]# yum install wget
安装wget工具
首先需要获取 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
Cleaning up list of fastest mirrors
[root@hadoop1 yum.repos.d]# yum list|grep ambari
ambari-agent.x86_64 2.0.1-45 Updates-ambari-2.0.1
ambari-log4j.noarch 2.0.1.45-1 Updates-ambari-2.0.1
ambari-metrics-collector.x86_64 2.0.1-45 Updates-ambari-2.0.1
ambari-metrics-common.noarch 2.0.1-45 Updates-ambari-2.0.1
ambari-metrics-hadoop-sink.x86_64 2.0.1-45 Updates-ambari-2.0.1
ambari-metrics-monitor.x86_64 2.0.1-45 Updates-ambari-2.0.1
ambari-server.noarch 2.0.1-45 Updates-ambari-2.0.1
hdp_mon_ganglia_addons.noarch 2.0.1.45-1.el6 Updates-ambari-2.0.1
hdp_mon_nagios_addons.noarch 2.0.1.45-1.el6 Updates-ambari-2.0.1
6.ambari配置
待安装完成后,便需要对 Ambari Server 做一个简单的配置。执行下面的命令。
[root@hadoop1 ~]# ambari-server setup
Using python /usr/bin/python2.6
Setup ambari-server
Checking SELinux...
SELinux status is 'enabled'
SELinux mode is 'enforcing'
Temporarily disabling SELinux
WARNING: SELinux is set to 'permissive' mode and temporarily disabled.
OK to continue [y/n] (y)? y
Customize user account for ambari-server daemon [y/n] (n)?
Adjusting ambari-server permissions and ownership...
Checking iptables...
WARNING: iptables is running. Confirm the necessary Ambari ports are accessible. Refer to the Ambari documentation for more details on ports.
OK to continue [y/n] (y)?
Checking JDK...
[1] Oracle JDK 1.7
[2] Oracle JDK 1.6
[3] - Custom JDK
==============================================================================
Enter choice (1): 1
To download the Oracle JDK and the Java Cryptography Extension (JCE) Policy Files you must accept the license terms found at http://www.oracle.com/technetwork/java/javase/terms/license/index.html and not accepting will cancel the Ambari Server setup and you must install the JDK and JCE files manually.
Do you accept the Oracle Binary Code License Agreement [y/n] (y)?
Downloading JDK from http://public-repo-1.hortonworks.com/ARTIFACTS/jdk-7u67-linux-x64.tar.gz to /var/lib/ambari-server/resources/jdk-7u67-linux-x64.tar.gz
7.ambari启动
简单的 setup 配置完成后。就可以启动 Ambari 了。运行下面的命令。
[root@hadoop1 ~]# ambari-server start
Using python /usr/bin/python2.6
Starting ambari-server
Ambari Server running with administrator privileges.
Organizing resource files at /var/lib/ambari-server/resources...
Server PID at: /var/run/ambari-server/ambari-server.pid
Server out at: /var/log/ambari-server/ambari-server.out
Server log at: /var/log/ambari-server/ambari-server.log
Waiting for server start....................
Ambari Server 'start' completed successfully.
通过命令tail -f /var/log/ambari-server/ambari-server.log 查看服务器日志
[root@hadoop1 ~]# tail -f /var/log/ambari-server/ambari-server.log
29 Dec 2015 13:25:44,472 INFO [main] Configuration:514 - Generation of file with password
29 Dec 2015 13:25:46,115 INFO [main] Configuration:527 - Reading password from existing file
29 Dec 2015 13:25:47,753 INFO [main] Configuration:527 - Reading password from existing file
29 Dec 2015 13:25:48,195 INFO [main] ViewExtractor:82 - Creating archive folder /var/lib/ambari-server/resources/views/work/ADMIN_VIEW{2.0.0}.
29 Dec 2015 13:25:48,196 INFO [main] ViewExtractor:89 - Extracting files from ambari-admin-2.0.1.45.jar.
29 Dec 2015 13:25:49,386 INFO [main] Configuration:527 - Reading password from existing file
29 Dec 2015 16:32:07,171 INFO [main] Configuration:527 - Reading password from existing file
29 Dec 2015 16:32:07,213 INFO [main] Configuration:747 - Hosts Mapping File null
29 Dec 2015 16:32:07,213 INFO [main] HostsMap:60 - Using hostsmap file null
29 Dec 2015 16:32:08,470 INFO [main] ControllerModule:173 - Detected POSTGRES as the database type from the JDBC URL
29 Dec 2015 16:32:18,870 INFO [main] AmbariServer:655 - Getting the controller
29 Dec 2015 16:32:22,555 INFO [main] StackDirectory:408 - Stack '/var/lib/ambari-server/resources/stacks/HDP/2.0.6.GlusterFS' doesn't contain an upgrade directory
29 Dec 2015 16:32:22,613 INFO [main] StackDirectory:429 - Role command order info was loaded from file: /var/lib/ambari-server/resources/stacks/HDP/2.0.6.GlusterFS/role_command_order.json
29 Dec 2015 16:32:22,703 INFO [main] StackDirectory:408 - Stack '/var/lib/ambari-server/resources/stacks/HDP/2.1.GlusterFS' doesn't contain an upgrade directory
8.完成
打开地址
http://192.168.1.122:8080/ 完成
Charles 2015-12-29于Phnom Phen
版权说明:
本文由Charles Dong原创,本人支持开源以及免费有益的传播,反对商业化谋利。
CSDN博客:http://blog.csdn.net/mrcharles
个人站:http://blog.xingbod.cn