通过ambari安装hadoop集群

转载:http://www.cnblogs.com/cenyuhai/p/3295635.html

整个过程走完,问题不大,不过有一个事情要注意的是就算创建数据库的,使用localhost会报错,要使用集群所在的域名,局部DNS所指定的域名,比如master.example.com

这个问题要注意一下,不过遇到问题了,看日志文件就可以,从日志文件中可以看出大概问题出在什么地方。

之前一直用的开源社区的版本,最近突然想到找一个好的商业版本用着,然后一直使用,然后就定上了hdp和cdh,都装上去了,但是cdh使用难度太大了,和开源版本的差距比较大,api不会使用,需要学它的cdk。hdp和开源版差不多,也是经过了优化了的,也是开源的,有一个管理界面,比社区版要好,这个安装过程废了很大的劲儿才搞成功的,发出来跟大家分享一下。

    hdp的安装折腾了好久,它的下载地址网址不像CDH那么难找,不过它的设置相对CDH简单很多,一键式安装,而且都是免费的软件。

1.首先要下载它们的安装包,别尝试着在yum来下,特别慢,最好的方式是通过建立本地资源的方式来安装。

http://public-repo-1.hortonworks.com/HDP/centos6/HDP-1.3.0.0-centos6-rpm.tar.gz

http://s3.amazonaws.com/public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.16/repos/centos6/HDP-UTILS-1.1.0.16-centos6.tar.gz

http://public-repo-1.hortonworks.com/ambari/centos6/ambari-1.2.5.17-centos6.tar.gz

2.立本地资源库 在var/www/html下建立一个hdp目录,如果没有的请先安装httpd yum install httpd 把下到的三个资源安装解压完毕之后,传到hdp目录下,然后重启httpd服务,用下面三个地址来测试一下是否可以通过网址访问了,然后准备三个文件,hdp.repo,ambari.repo,hdp-util.repo 不要按照官方说的那个做,那个是会报错的,我把我的放出来,大家自己照着弄,修改一下地址就行,然后把这三个文件复制集群中的所有机器的/etc/yum.repos.d/目录下

下面我发一下他们的内容

hdp.repo

View Code

ambari.repo

View Code

hdp-util.repo

View Code

3.安装之前的准备工作

(1)设置ssh自动登陆,这个参照我写的另外一篇ssh自动登陆的那个去做就行,网址是http://www.cnblogs.com/cenyuhai/p/3280668.html

(2)设置ntpd自动启动,所有机器

chkconfig --level 5 ntpd on      
service ntpd start 

(3)禁用selinux,所有机器 

vi /etc/sysconfig/selinux 设置selinux=disabled 

(4)设置时间同步,所有机器

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  #设置时区为北京时间,这里为上海,因为centos里面只有上海。。。    
ntpdate us.pool.ntp.org  #时间同步

没有安装ntpdate的可以yum一下    yum install -y ntpdate  

加入定时计划任务,每隔10分钟同步一下时钟  

crontab -e   

把下面的内容粘贴进去保存即可

0-59/10 * * * * /usr/sbin/ntpdate us.pool.ntp.org | logger -t NTP

(5)修改/etc/hosts文件,所有机器,设置如下:

192.168.1.133 hadoop.Master
192.168.1.134 hadoop.SlaveT1
192.168.1.135 hadoop.SlaveT2

4.修改配置文件,所有机器

yum install yum-plugin-priorities 
vi /etc/yum/pluginconf.d/priorities.conf 
#设置为以下内容
[main] 
enabled=1 
gpgcheck=0 

5.安装自定义的mysql服务

yum install -y mysql-server

安装完成之后用root账户登陆,执行下列命令

create database hive ; 
grant all on hive.* TO 'hive'@'%' IDENTIFIED BY 'hive'; 
create database oozie DEFAULT CHARACTER SET utf8; 
grant all on oozie.* TO 'oozie'@'%' IDENTIFIED BY 'oozie';

如果mysql也装在集群中的某个机器上面,而且该服务也装在这个台机器上面。。比如我的hadoop.SlaveT1上面挂了hive服务,mysql也在它上面就会连接不上 还需要运行以下命令

grant all on hive.* TO 'hive'@'hadoop.SlaveT1' IDENTIFIED BY 'hive';

5.安装ambari服务

yum install -y epel-release 
yum install ambari-server

//自己下载jdk-6u31-linux-x64.bin,放在/var/lib/ambari-server/resources下面 ,就免得它自己下了,速度老慢了。。

ambari-server setup

我的ambari数据库账号密码全是ambari

安装完毕之后启动ambari服务 ambari-server start

登陆ambari,账号密码都是admin http://localhost:8080 然后开始安装,安装过程当中一定要注意jdk的目录是/usr/jdk64/1.6.0_31,安装的时候它默认给出来的jdk的不对,装到最后集群也用不了。。

posted @ 2014-06-09 15:30 越影&逐日而行 阅读(...) 评论(...) 编辑 收藏