1、我这里用的是三个虚拟机 centos 6.4 64位操作系统,一台做Master,两台做Slave

2、三台机器都安装jdk,我这里的版本是7_79,同样是64位的

3、修改hostname(很关键,因为只有生成的ssh-keygen会用到)在/etc/sysconfig/network文件里面修改,同时添加hosts文件,在/etc/hosts文件中修改,我这里三个节点的这两个文件分别如下:

 

4、生成ssh无密钥远程访问文件,并且放到都要在三个节点里面统一:(提前将三台节点的防火墙都关闭,一定要注意)

这里统一都使用root用户来操作,分别在三个节点执行命令:ssh-keygen -t rsa,然后三下回车即可,就会在 /root/.ssh/目录下生成两个文件:

然后分别全部执行命令保存公共密钥:cp id_rsa.pub authorized_keys,然后 /root/.ssh/ 目录下就是这样:

然后分别在Slaver1和Slaver2的 /root/.ssh/ 目录下,将密钥文件远程拷贝到Master中,使用命令:scp authorized_keys root@Master.busymonkey:/root/.ssh/s1_keys和scp authorized_keys root@Master.busymonkey:/root/.ssh/s2_keys。

然后Master节点的/root/.ssh/ 目录下就会是这样:

然后分别将两个拷贝过来的密钥文件追加到Master的 authorized_keys文件之后,用命令:cat s1_keys >> authorized_keys 和 cat s2_keys >> authorized_keys

最后再将Master的 authorized_keys文件远程拷贝覆盖到两个Slaver去,命令是:scp authorized_keys root@Slaver1.busymonkey:/root/.ssh/authorized_keys 和 scp authorized_keys root@Slaver2.busymonkey:/root/.ssh/authorized_keys 。

这样就弄完了,自己可以测试一下三个节点之间能否相互登录:ssh Master.busymonkey,退出用:exit。

 

5、然后就可以在Master节点上安装ambari了,这里我装的是最小系统,所以可能要先安装wget,用:yum install wget来安装。

 

然后获取 Ambari 的公共库文件(public repository)。登录到 Linux 主机并执行下面的命令(也可以自己手工下载):

wget http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.0.1/ambari.repohttp://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

如图 1 所示:

图 1. 获取公共库源文件列表

如果可以看到 Ambari 的对应版本的安装包列表,说明公共库已配置成功。然后就可以安装 Ambari 的 package 了。执行下面的命令安装 Ambari Server 到该机器。

yum install ambari-server

待安装完成后,便需要对 Ambari Server 做一个简单的配置。执行下面的命令。

amari-server setup

在这个交互式的设置中,采用默认配置即可。Ambari 会使用 Postgres 数据库,默认会安装并使用 Oracle 的 JDK。默认设置了 Ambari GUI 的登录用户为 admin/admin。并且指定 Ambari Server 的运行用户为 root。

 

[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

 

只有大部分都是默认的,就可以了。

 

简单的 setup 配置完成后。就可以启动 Ambari 了。运行下面的命令。

 

ambari-server start

当成功启动 Ambari Server 之后,便可以从浏览器登录,默认的端口为 8080。以本文环境为例,在浏览器的地址栏输入 http://zwshen37.example.com:8080,登录密码为 admin/admin。登入 Ambari 之后的页面如下图。

图 2. Ambari 的 welcome 页面

 

 

ambari离线安装HDP:

以下是本地源文件的下载地址:

 

  1. ambari安装包

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

  2. HDP(Hortonworks Data Platform)

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

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

 

    注:可直接修改链接中的版本号获取所需要的版本

 

Master主机安装httpd服务,会有一个新文件夹生成:

 

 

将你自己下载好的两个文件本地源文件拷贝到这个文件夹的html目录下面,并且解压:

 

然后Master主机启动httpd服务:service httpd start

 

现在可以在主机浏览器访问虚拟机Master主机上开启的源文件地址:

 

 

现在正式开始配置:

 

等待。。。。。。。。。。。。。。。。

如果中途遇到失败了,就点一下retry,我自己是点了3次 retry才全部成功的。

 

 

 

 

这里有一些警告,点开,按以上流程走下来之后,一般会有两个问题,一个是THP的问题,一个是NTP的问题:

 

 

对于第一个问题,在四台linux下输入以下命令:

 

echo never >/sys/kernel/mm/redhat_transparent_hugepage/defrag
echo never >/sys/kernel/mm/redhat_transparent_hugepage/enabled
echo never >/sys/kernel/mm/transparent_hugepage/enabled
echo never >/sys/kernel/mm/transparent_hugepage/defrag

 

 

 

 

 

 

 

如果第一个警告还是存在,那就只有重新再来一次以上几个步骤了,在Master主机执行重启:ambari-server restart,这样又会重新开始配置HDP。

这样,第一个警告就没有了:

 

 

对于第二个警告是因为四个节点的机器没有时间同步服务,运行命令来安装,并且开启服务:yum -y install ntp和   service ntpd start

 

然后再return check。如果不行,就点击第三部,再来:

 

然后就可以了,没有警告:

 

选择要安装的服务,这里我配置不高,就选了最基本的,其实之后还可以添加。

 

 

之后默认即可:

 

 

 

 

 

等待。。。。。。。。。。。。。。。。。。。。。。。。。

中途可能会遇到很多次失败,没事,重来,因为hdp用的本地源安装,但是ambari用的是在线安装,有时候网络不行就会失败。

 

 

 

至此,平台基本平台搭建完,之后可以根据需要安装一些其他的服务。

 

 

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐