原创:2014年06月16日 13:44:01 来源:http://www./hadoop/hadoop-hadoop/2429.html 标签:ambari / hadoop / 安装 / 配置 |
|
安装前文方法建立好ambari本地源后,就可以开始安装并配置ambari服务器了,只有配置好ambari服务器后,才可以通过Amabri的Web页面实现对hadoop集群的自动化部署。服务器规划列表如下:
序号 |
主机FQDN |
主机IP |
用途规划 |
1 |
hd00. |
172.18.8.200 |
yum源、nagios服务器、备份NameNode等 |
2 |
hd01. |
172.18.8.201 |
NameNode、ResourceManager等主节点 |
3 |
hd02. |
172.18.8.202 |
DataNode等从节点 |
4 |
hd03. |
172.18.8.203 |
DataNode等从节点 |
5 |
hd04. |
172.18.8.204 |
DataNode等从节点 |
Ambari安装配置过程如下:
一、配置repo文件:
可以将其他repo先mv到其他地方,以防止影响ambari安装。
#vim /etc/yum.repos.d/ambari.repo
[CentOS6-Media] name=CentOS6-Media baseurl=http://172.18.8.200/centos65 gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
[Ambari-1.5.1] name=Ambari-1.5.1 baseurl=http://172.18.8.200/ambari/centos6/1.x/updates/1.5.1 gpgcheck=0 enabled=1
[HDP-2.1.2.0] name=HDP-2.1.2.0 baseurl=http://172.18.8.200/hdp/HDP/centos6/2.x/updates/2.1.2.0 gpgcheck=0 enabled=1
[HDP-UTILS-1.1.0.17] name=HDP-UTILS-1.1.0.17 baseurl=http://172.18.8.200/hdp/HDP-UTILS-1.1.0.17/repos/centos6 gpgcheck=0 enabled=1
如果服务器能上网,CentOS系统盘的源可以使用系统默认的源。
二、安装MySQL和Ambari-server:
Amabri服务器需要使用数据库存放基本信息,而数据库默认为PostgreSQL,同时也支持MySQL和Oracle,我这里使用MySQL实现。要安装MySQL和ambari-server,直接yum即可:
# yum install mysql-server ambari-server
三、配置MySQL和Ambari:
MySQL的基本配置不多讲,修改root密码后登陆后,建立一个数据库ambari,再建立一个用户,授权具有ambari数据库所有权限即可,如我的测试环境中就直接用root为例:
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | ambari | | test | +--------------------+ 5 rows in set (0.34 sec)
mysql> GRANT all ON ambari.* TO root@'localhost' IDENTIFIED BY 'yourPassWord';
mysql> GRANT all ON ambari.* TO root@'%' IDENTIFIED BY 'yourPassWord';
配置好数据库,即可开始配置ambari-server了,如果服务器没有安装jdk,可以直接拷贝jdk的二进制安装文件到/var/lib/ambari-server/resources路径下,拷贝好后效果如下:
[root@hd00 ~]# ll /var/lib/ambari-server/resources/jdk-6u31-linux-x64.bin -rwxr-xr-x 1 root root 85581913 6月 7 19:28 /var/lib/ambari-server/resources/jdk-6u31-linux-x64.bin
使用下列命令启动ambari-server配置向导:
#ambari-server setup
在选择数据库这里,输入y,即可选择MySQL或Oracle作为ambari的数据库:
按要求填好数据库信息,注意,输错了需要按住Shift再按退格键才能删除。
配置好数据库后,再开一个窗口,下载mysql-connector-java-5.1.17.jar并拷贝到目录/usr/share/java下。然后再按回车键,否则会报错。
完后上述全部过程后,就可以启动了。命令如下:
#ambari-server start
也可以用service命令启动。不过别忘了用chkconfig加入开机启动。
查看启动情况:
[root@yum 1.5.1]# netstat -tnlp |grep java tcp 0 0 :::8080 :::* LISTEN 2538/java tcp 0 0 :::8440 :::* LISTEN 2538/java tcp 0 0 :::8441 :::* LISTEN 2538/java
如果8080端口监听了,表示启动正常。
如果没有正常监听,就查看日志/var/log/ambari-server/ambari-server.log,看看是否有错误,根据提示解决即可。
如我就遇到下面的错误提示:
Caused by: Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.4.0.v20120608-r11652): org.eclipse.persistence.exceptions.DatabaseException Internal Exception: java.sql.SQLException: null, message from server: "Host '172.18.8.200' is not allowed to connect to this MySQL server"
根据提示,应该是无法连接到数据库的原因,根据以往的经验,估计使用了用户root@172.8.8.200来进行连接数据库,而这个用户并没有定义,于是执行如下命令为MySQL添加该用户:
mysql> GRANT all ON ambari.* TO root@'172.18.8.200' IDENTIFIED BY 'yourPassWord';
再次启动,发现一切正常,表示真是这个问题。
启动好后,即可通过网页访问ambari了,http://hd00.toxingwangcom:8080/ 默认用户名密码都为:admin
下文我将介绍如何使用Ambari的Web进行hadoop集群的自动化部署了。
|