CentOS7使用本地库(Local Repository)安装Ambari-2.4.1和HDP-2.5.0

前言

大多数情况下,我们在linux环境中安装软件都是使用在线安装的方式,比如centOS的 yum,ubuntu的apt-get,但是,有些时候,我们需要安装软件,但并没有网络,或网速并不快,比如公司的集群,很可能是没有外网的,有些库是国外的库,下载速度非常慢,这个时候,如果有个本地库,这个问题就能比较好的解决了 。当然,并不是说所有的软件都做成本地库,这里只是把安装Ambari和HDP的库本地化。

1、下载压缩包

首先下载包含必要软件的压缩包(tarball)到本地,以centOS7,Ambari 2.4.1和HDP2.5.0.0为例:
Ambari-2.4.1.0 压缩包地址:
http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.4.1.0/ambari-2.4.1.0-centos7.tar.gz
HDP-2.5.0.0压缩包地址:
http://public-repo-1.hortonworks.com/HDP/centos7/2.x/updates/2.5.0.0/HDP-2.5.0.0-centos7-rpm.tar.gz
HDP UTILS压缩包下载地址:
http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.21/repos/centos7/HDP-UTILS-1.1.0.21-centos7.tar.gz
其他版本,下载地址请参考:
Ambari:
http://docs.hortonworks.com/HDPDocuments/Ambari-2.4.1.0/bk_ambari-installation/content/ambari_repositories.html
HDP和HDP UTILS:
http://docs.hortonworks.com/HDPDocuments/Ambari-2.4.1.0/bk_ambari-installation/content/hdp_stack_repositories.html

2、设置本地库

在设置本地库之前,我们先需要完成一些准备工作,如下:

  1. 选择一台机器作为本地库的镜像服务器,这个机器能够被集群中的机器所访问,且有一个被支持的操作系统。
  2. 此台镜像服务器有软件包管理,例如centOS的yum,ubuntu的apt-get,SLES的zypper。

2.1 创建一个HTTP服务

step 1 在镜像服务器上安装一个HTTP服务(例如Apache httpd)。

这里可以使用以下方式安装http:

[root@master ~]# yum install httpd

也可以下载二进制包安装,下载地址为:
http://httpd.apache.org/download.cgi

安装完成之后,可以看到有/var/www/目录了。

step 2 启动web 服务
step 3 确保防火墙允许来自集群中的节点的访问请求。

2.2 拷贝并解压tarball

把之前下载好的压缩包拷贝并解压到镜像服务机器的相应目录下。
对于Ambari Repo,解压到目录/var/www/html
对于HDP,解压到目录/var/www/html/hdp/

2.3 确认解压目录正常

解压结束后,在浏览器中确认是否可以访问,访问地址如下:

Ambari Base URL:

http://<web.server>/Ambari-2.4.1.0/<OS>

HDP Base URL:

http://<web.server>/hdp/HDP/<OS>

HDP-UTILS Base URL:

http://<web.server>/hdp/HDP-UTILS-<version>/repos/<OS>

其中<web.server>为镜像服务的主机名,<OS>为centos6, centos7, sles11, sles12, ubuntu12, ubuntu14, 或 debian7.

因此,我的这三个地址为以下:

http://master/AMBARI-2.4.1.0/centos7/

http://master/hdp/HDP/centos7/

http://master/hdp/HDP-UTILS-1.1.0.21/repos/centos7/

这里写图片描述

输入以下命令可以解决此问题:

[root@master centos7]# setenforce 0

3、安装Ambari Server

安装Ambari的步骤如下:

  1. 下载Ambari repository
  2. 设置Ambari server
  3. 启动Ambari server

3.1 配置Ambari repository

step 1 以root用户登录到host,这个host指的是我们需要安装ambari server的机器。

step 2 准备Ambari repository 配置文件
ambari.repo的内容如下:

#VERSION_NUMBER=2.4.1.0-22

[Updates-ambari-2.4.1.0]
name=ambari-2.4.1.0 - Updates
baseurl=INSERT-BASE-URL
gpgcheck=1
gpgkey=http://public-repo-1.hortonworks.com/ambari/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

以我为例,我的ambari.repo编辑为以下内容:

#VERSION_NUMBER=2.4.1.0-22

[Updates-ambari-2.4.1.0]
name=ambari-2.4.1.0 - Updates
baseurl=http://master/AMBARI-2.4.1.0/centos7/2.4.1.0-22/
gpgcheck=1
gpgkey=http://master/AMBARI-2.4.1.0/centos7/2.4.1.0-22/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

可以通过设置gpgcheck=0来禁用GPG检查,如果不禁用,我们也可以修改gpgkey成本地的库源。其中,INSERT-BASE-URL为之前设置好的本地镜像Ambari的URL地址。以我为例,我是安装在机器系统为centOS7的master上,所以,我的INSERT-BASE-URLhttp://master/Ambari-2.4.1.0/centos7,gpgkey为http://master/Ambari-2.4.1.0/centos7/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins

ambari.repo文件编辑好后,放置到目录/etc/yum.repos.d/下。

如果有网络连接的话,可以直接下载Ambari repository,然后修改内容,如下:

wget -nv http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.4.1.0/ambari.repo -O /etc/yum.repos.d/ambari.repo

vi /etc/yum.repos.d/ambari.repo

修改的内容如前面一样。

3.2 安装Ambari server

yum install ambari-server

3.3 设置Ambari server

在启动Ambari server 之前,我们必须进行设置Ambari server,命令如下:

ambari-server setup

以后如果想改变jdk的目录,也可以使用这个命令进行修改设置,在接下来的设置中,会有选择jdk的目录,选择custom jdk,然后再输入新的jdk目录。

3.4 启动Ambari server

启动命令:

ambari-server start

检查服务开启状态:

ambari-server status

停止服务:

ambari-server stop

在启动Ambari server的时候,Ambari会运行一个数据库一致性检查来发现问题,如果发现问题,则server会中断,控制台会输出:

DB configs consistency check failed.

更多的详细信息会记录到以下日志文件中:

/var/log/ambari-server/ambari-server-check-database.log

这个时候,我们可以强制启动服务,跳过这个检查:

ambari-server start --skip-database-check

4、安装Ambari Agent

安装Ambari Agent分为两步:

  1. 下载Ambari Repo
  2. 安装Ambari Agent

4.1 下载Ambari Repo

step 1 以root用户登录到host,这个host指的是我们需要安装ambari agent的机器。(这一步与安装Ambari server的第一步类似)

step 2 下载Ambari repository到host.(这一步与安装Ambari server的第二步类似,命令是一样的,Ambari Repo也是一样的)

wget -nv http://public-repo-1.hortonworks.com/ambari/centos7/2.x/updates/2.4.1.0/ambari.repo -O /etc/yum.repos.d/ambari.repo

注意:如果没有网络连接的话,上面这条命令是无法执行的,本文讲述的是使用本地库进行安装Ambari,因此,我们可以直接编辑/etc/yum.repos.d/ambari.repo文件,修改内容与前面讲的一样,请参考配置Ambari Repository那节。

4.2 安装Ambari agent(与安装ambari server命令类似,一个是server,一个是agent)

yum install ambari-agent

4.3 设置Ambari Server Host Name

编辑ambari-agent配置文件,设置之前安装过Ambari-server 的主机名:

vi /etc/ambari-agent/conf/ambari-agent.ini

[server]

hostname=<your.ambari.server.hostname>

url_port=8440

secured_url_port=8441

4.4 启动ambari agent

ambari-agent start

相关的命令有以下:

ambari-agent status # 检查agent服务运行状态
ambari-agent stop   # 停止agent服务

5、安装HDP

打开浏览器,使用Ambari安装向导进行安装,配置,和部署你的集群,步骤如下:

  1. 登录到Apache Ambari
  2. 给集群命名
  3. 选择版本
  4. 安装选项
  5. 确认主机
  6. 选择服务
  7. 分配Masters
  8. 分配Slaves和Clients
  9. 定制服务
  10. Review
  11. 安装,启动和测试
  12. 完成

5.1 登录到Apache Ambari

在浏览器中输入

 http://<your.ambari.server>:8080

其中,<your.ambari.server>是之前我们安装过ambari server的主机名称。登录的时候,用户名和密码都为:admin

在启动Ambari 服务之后,使用web浏览器,打开Ambari Web。在浏览器的地址栏输入:

http://{your.ambari.server}:8080

其中,{your.ambari.server}是你的ambari server所在的主机名,例如,我的ambari server的主机名为master,则我输入:

http://master:8080

进入网页之后,使用默认用户名/密码:admin,稍后可以修改密码。

对于一个新的集群,Ambari 安装向导会显示一个欢迎页面。

5.2 开启Ambari安装向导

如下:
这里写图片描述
点击“Launch Install Wizard”

5.3 为集群命名

在文本框中输入集群的名字

5.4 选择版本

这里写图片描述

这里写图片描述
这里选中“Use Local Repository”,使用本地源安装,然后找到自己的系统,我的是centos7,其实就是选这个redhat7,然后把其他的都删除掉,如果不知道自己的系统对应的哪个OS,请参考以下:
http://docs.hortonworks.com/HDPDocuments/Ambari-2.4.1.0/bk_ambari-installation/content/select_version.html

然后,填上自己相应的URL,URL就是前面本地源的地址。

5.5 安装选项

这里写图片描述
在“Target Hosts”里填上主机名,主机名一定要是全限定名。一行一个主机名。
在“Host Registration information”,我使用的是下面那个,即不使用ssh,使用这种方式需要注意:需要提前在host上安装好ambari-agent,并启动服务。
这里写图片描述

5.6 确认Hosts

这里写图片描述
等待验证,这一步主要是检查一下hosts的环境,如果提示哪些环境有问题,照着修改就好了。主要是一些jdk,目录啊,防火墙啊什么的。可参考以下官网:
http://docs.hortonworks.com/HDPDocuments/Ambari-2.4.1.0/bk_ambari-installation/content/prepare_the_environment.html

5.7 选择服务

这里写图片描述
选择自己需要的服务,这里的服务(Services)指的是各个组件,比如hbase, hive , spark等等。
现在没有选择的服务,在以后也可以添加,所以,看着选就好了。

5.8 分配Master

这里写图片描述

这里主要是对hosts上安装的服务进行master选择,比如我安装hdfs的话,那么hdfs的master,即namenode需要安装到哪个节点,类似云云的。

5.8 分配slave和clients

这里写图片描述
这步是选择slave和clients。

5.9 定制服务

这里写图片描述
这里主要是对安装的服务进行配置,很多配置我们可以使用默认的,但有些必须让我们手动输入,比如hive的数据库的密码,因为hive的元数据是存储在关系型数据库中的,因此,这里在给我们安装hive的时候,会自动帮我们安装一个关系型数据库,这里需要输入的就是这个数据库的密码。当然,看着红色的数字,那就是需要我们手动输入的配置。然后下一步。

这里写图片描述
不管它,直接Proceed anyway。

5.10 Review

这里写图片描述

5.11 安装,启动和测试

这一步主要是在各个hosts上安装服务并启动。可能会出现很多问题,通常是对报错进行修复,然后retry。我也把我所遇到的问题贴在了文章的后面。可以参考一下,大多是源的一些问题。

成功之后可以看到dashboard:
这里写图片描述
如果发现哪个service有问题,可以删除这个service,然后重新安装这个service。

异常

异常1

Traceback (most recent call last):
  File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/hooks/before-INSTALL/scripts/hook.py", line 37, in <module>
    BeforeInstallHook().execute()
  File 
  • 5
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值