通过Ambari快速搭建大数据平台

 

目录

HDP部署安装手册... I

1、环境配置... 3

1.1、关闭防火墙服务(所有节点)... 3

1.2、配置SSH免密码登录... 3

1.3、搭建本地http服务(主节点)... 4

1.4、配置hosts域名映射(所有节点)... 5

1.5、配置本地yum源仓库(所有节点)... 5

2、HDP部署安装... 7

2.1、安装JDK(所有节点)... 7

2.2、安装ambari-agent(所有节点)... 7

2.3、安装ambari-server(主节点)... 7

2.4、使用ambari部署HDP. 8

3、安装完成... 14

 

 

1、环境配置

1.1、关闭防火墙服务(所有节点)

l   ip6tables

l   iptables

l   查看当前防火墙状态:  service iptables status

开启:service iptables start

关闭:service iptables stop

service --status-all

1.2、配置SSH免密码登录

在三个节点(此次为49、50、51)的ambari-server节点配置SSH免密码登录,可以不需要互通,但ambari-server节点(此次为49节点)必须能免密码登录其他节点主机。

.配置ssh无密码访问

1.master运行

  ssh-keygen -t rsa,一路回车,这里会生成秘钥对

  cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

2.slave运行(两个子节点)

  chmod 700 –R ~/.ssh

3.master上运行

  scp ~/.ssh/authorized_keys  root@172.19.189.50:~/.ssh/authorized_keys

  scp ~/.ssh/authorized_keys  root@172.19.189.51:~/.ssh/authorized_keys

4.测试:ssh 172.19.189.50 不用输入密码则成功

PS:很多人按照教程照做会失败,总结一下主要以下两个原因:

1) 缺少了第2步,导致master没有权限写slave的.ssh目录

2) 集群中所有机器必须使用相同的用户名(此处为root)

1.3、搭建本地http服务(主节点)

     一开始各节点目录/var/www/html/下文件如图1-3所示

       

图1-3

选择任意一台节点主机(此处为49),将HDP安装包和系统源复制到/var/www/html/目录下(local_dvd为系统源),复制过去后目录如图1-4所示(HDP安装包和系统源是从别的已经安装好的节点上取过来的):

 

图1-4

     启动HTTPD服务(service httpd start),在浏览器输入IP访问该站点,页面正常显示目录文件则说明搭建成功,如图1-5所示:

 

图1-5

1.4、配置hosts域名映射(所有节点)

编辑 /etc/hosts 文件,增加IP地址的域名映射并分发到各个节点。如图1-6,第1、2行不变,如第3、4、5、6行一样,一个IP地址对应多个域名,空格区分,其中public-repo-1.hortonworks.com 域名映射的IP地址就是上一步中搭建的HTTPD服务所在的节点IP地址,该域名用于HDP的安装下载地址。保存之后,可以尝试用ping命令检查映射是否指向到了正确的节点IP地址。

1.5、配置本地yum源仓库(所有节点)

yum源仓库的配置存在 /etc/yum.repos.d/ 目录,yum会读取所有以repo结尾的源仓库信息来下载安装程序。这里我们需要将后面使用到的HDP程序的源仓库、Linux的源仓库添加进来。

ambari.repo, HDP.repo, HDP-UTILS.repo 三个文件分别存在HDP的三个程序包里,复制出来即可!

hdp.repo  /var/www/html/HDP/centos6/2.x/GA/2.2.0.0/

ambari.repo  /var/www/html/ambari/centos6/1.x/updates/1.7.0/

HDP-UTILS.repo /var/www/html/HDP-UTILS-1.1.0.20/repos/centos6/

  1. 复制过来后,需要注意文件内的链接地址可能需要本机的实际情况修改一下

一开始hdp-util.repo文件内容如图1-10下:

 

但链接并不能访问到,此时执行加后面2、3操作,会报错,如图1-11所示,提示hdp-util中路径有问题:

 

修改后的hdp-util.repo文件内容如图1-12下:

 

也可以把172.19.189.49改为public-repo-1.hortonworks.com(即为在1.4中所配置的映射),如图1-13所示:

 

其他的两个文件也需根据实际情况进行修改。

  1. 增加之后,分别分发到其他节点,并在各个节点执行 yum clean all, yum clean packages 两个命令来清理yum的缓存;
  2. 执行yum search ambari-agent 命令来检查yum源仓库是否配置正确;

 

2、HDP部署安装

2.1、安装JDK(所有节点)

安装的路径统一为 /usr/java下,需要增加default软链接指向JDK目录

 

2.2、安装ambari-agent(所有节点)

yum install ambari-agent

2.3、安装ambari-server(主节点)

yum install ambari-server

按提示回车或输入yes即可,默认情况下会安装pgsql数据库,用户名和密码都是ambari。

执行service --status-all,会提示:

Ambari-server status

Ambari Server not running. Stale PID File at: /var/run/ambari-server/ambari-server.pid

需进行设置,执行ambari-server setup,进行相关设置,选择java时选择之前配置的路径(选3,手动配置路径),数据库选择1(即默认的,也可不选直接回车),如图1-14所示:

 

启动server和agent服务:service ambari-server start   service ambari-agent start(三个节点)

2.4、使用ambari部署HDP

登录ambari,默认admin,admin

 

给集群取个名字

 

 

选择HDP版本,根据实际情况选择。

 

 

在目标主机里,输入需要安装的节点域名,并且输入免密码登录的密钥,其中SSH Private Key可以从主节点(49)上复制id_rsa文件中的内容也可以从主节点上下载到本地。

 

 

Ambari会主动检查节点的状态,如果出现错误,可以根据日志排查问题

根据实际情况选择需要安装的服务。安装时会显示需要配置的节点参数,都不需要改动,直接默认安装。

 

以下均是根据自己需要进行选择

 

3、安装完成

安装完成后,再次登录ambari控制台检查服务。

 

默认用户名和密码均为:admin

4、错误

出现下面错误的原因是openssl问题

 

5、卸载

删除HDP(可能执行后并没有删除干净,关注一下最后一步):

python /usr/lib/python2.6/site-packages/ambari_agent/HostCleanup.py --silent --skip=users

删除ambari:

yum remove ambari-server(主节点)

yum remove ambari-agent(所有节点)

删除数据:(所有节点)

rm -rf /storage/disk1/*

rm -rf /storage/disk2/*

rm -rf /storage/disk3/*

rm -rf /storage/disk4/*

rm -rf /usr/hdp

rm -rf /tmp/*

rm -rf /usr/lib/ambari-server

rm -rf /etc/ambari-agent

rm -rf /etc/ambari-server

rm -rf /var/log/ambari-server

rm -rf /var/lib/ambari-server

rm -rf /usr/lib/ambari-agent

rm -rf /var/log/ambari-agent

rm -rf /var/lib/ambari-agent

删除数据库信息(主节点):

rm -rf /var/lib/pgsql/data

删除ssh远程时的配置文件(可选):

rm -rf /root/.ssh/known_hosts

rm -rf /root/.ssh/authorized_keys

清理缓存:(所有节点)

yum clean all

yum clean packages

重启:(所以节点)

Reboot

 

在卸载完后重新安装时,到下面这一步时,注意点击一下” Click here to see the warnings.”:

 

 

 

此处可以在各个 节点上再执行一下

python /usr/lib/python2.6/site-packages/ambari_agent/HostCleanup.py --silent --skip=users

 

posted @ 2016-06-14 17:09 日月玉朱猪 阅读(...) 评论(...) 编辑 收藏