2019独角兽企业重金招聘Python工程师标准>>>

http://www.hackbase.com/article-973-1.html

(WJW)Ambari在离线环境中安装Hadoop集群

如果手工安装Hadoop集群,在管理和后继部署中,越来越多的问题不断出现,主要如下:

  • 各集群节点的配置同步

  • 新应用的部署:比如为集群添加hbase应用,需要很细心复杂的配置才能完成,而且要是操作错误,还可能导致正常的集群崩溃

  • 新集群节点增加:同上

  • 集群架构调整:比如原来hdfs的namenode和ResourceManager等应用主节点都是放到一台服务器上的,当应用多后,需要调整独立,发现异常复杂

  • Hadoop集群监控 Apache有个项目Ambari能很好的解决上述所有问题!

Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目.目前最新的发布版本是 2.1.2.
就 Ambari 的作用来说,就是创建,管理,监视 Hadoop 的集群,但是这里的 Hadoop 是广义,指的是 Hadoop 整个生态圈(例如 Hive,Hbase,Sqoop,Zookeeper 等),而并不仅是特指 Hadoop.
用一句话来说,Ambari 就是为了让 Hadoop 以及相关的大数据软件更容易使用的一个工具.
     说到这里,大家就应该明白什么人最需要 Ambari 了.那些苦苦花费好几天去安装,调试 Hadoop 的初学者是最能体会到 Ambari 的方便之处的.
而且,Ambari 现在所支持的平台组件也越来越多,例如流行的 Spark,Storm 等计算框架,以及资源调度平台 YARN 等,我们都能轻松地通过 Ambari 来进行部署.
     Ambari 自身也是一个分布式架构的软件,主要由两部分组成:Ambari Server 和 Ambari Agent.简单来说,用户通过 Ambari Server 通知 Ambari Agent 安装对应的软件;
Agent 会定时地发送各个机器每个软件模块的状态给 Ambari Server,最终这些状态信息会呈现在 Ambari 的 GUI,方便用户了解到集群的各种状态,并进行相应的维护.

生产中的hadoop集群机器都很多,而且基本都不允许连接公网,为方便快速部署,非常有必要建立一个本地Repository,使Ambari在离线环境中安装Hadoop集群!


[X] 安装环境:

  • 系统版本:CentOS 6.3 x86_64

  • JAVA版本:JDK-1.7.x

  • 确保机器的 Python 版本大于或等于2.6

  • 服务器列表:

    192.168.68.17 T1.youyuan.cn #Ambari Server,namenode1,resourcemanager

    192.168.68.18 T2.youyuan.cn #Ambari Agent,namenode2,journalnode1,datanode1,nodemanager1

    192.168.68.20 T3.youyuan.cn #Ambari Agent,journalnode2,datanode2,nodemanager2

    192.168.68.21 T4.youyuan.cn #Ambari Agent,journalnode3,datanode3,nodemanager3

  • SSL

    需要openssl的1.0以上版本!

    yum install openssl
    或者
    yum upgrade openssl
  • JDK

    建议安装Sun的JDK1.7版本! 安装完毕并配置java环境变量,在/etc/profile末尾添加如下代码:
    export JAVA_HOME=/usr/java/default
    export PATH=$JAVA_HOME/bin:$PATH
    保存退出即可,然后执行source /etc/profile生效.在命令行执行java -version 如下代表JAVA安装成功.

  • ssh

    需要配置各个节点的免密码登录!
    首先在自己机器上使用ssh-keygen -t rsa
    会要求输入密码(必须为空),回车几次,然后会在HOME目录下生成.ssh文件夹,
    里面有私钥和公钥,公钥为~/.ssh/id_rsa.pub,私钥为~/.ssh/id_rsa.
    配置本地的免登录 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    现在你需要将你的公钥拷贝到服务器上,如果你的系统有ssh-copy-id命令,拷贝会很简单:ssh-copy-id 用户名@服务器名, 否则,你需要手动将你的私钥拷贝到服务器上的~/.ssh/authorized_keys文件中!scp ~/.ssh/authorized_keys T1.youyuan.cn:/root/.ssh/

  • NTP

    集群的时钟要保证基本的一致.稍有不一致是可以容忍的,但是很大的不一致会 造成奇怪的行为. 运行 NTP 或者其他什么东西来同步你的时间.
    如果你查询的时候或者是遇到奇怪的故障,可以检查一下系统时间是否正确!

    echo "server 192.168.0.2" >> /etc/ntp.conf
    chkconfig ntpd on
    service ntpd restart
    ntpq -p
  • ulimit和nproc

    Hdaoop会在同一时间使用很多的文件句柄.大多数linux系统使用的默认值1024是不能满足的,

  • 貌似应该修改 /etc/security/limits.d/90-nproc.conf

  • 修改/etc/security/limits.conf文件为:

        *               soft    nproc   16384    *               hard    nproc   16384  *               soft    nofile  65536  *               hard    nofile  65536

  • 修改 192.168.68.17,192.168.68.18,192.168.68.20,192.168.68.21 的etc/hosts文件 在文件最后添加:

    192.168.68.17  T1.youyuan.cn192.168.68.18  T2.youyuan.cn192.168.68.20  T3.youyuan.cn 192.168.68.21  T4.youyuan.cn

  • 禁止 PackageKit

    pkill -9 packagekitd
    vim /etc/yum/pluginconf.d/refresh-packagekit.conf

    将内容改为enabled=0


[X] 安装Ambari Server

在T1上操作

[1] 安装基本软件并配置:

yum install yum-utils createrepo yum-plugin-priorities
yum install httpd

编辑/etc/yum/pluginconf.d/priorities.conf,修改为如下:

[main]enabled=1gpgcheck=0

设置httpd:

chkconfig httpd on
service httpd start

[2] 下载主要资源并配置:

采用P2P下载工具(如迅雷等)下载上述主要资源的完整包,再上传到本地源服务器进行部署.

CenOS最新镜像下载点:http://isoredirect.centos.org/centos/6/isos/x86_64/
下载后挂载,并拷贝所有内容到/var/www/html/centos6:

mount -o loop /data/install/CentOS-6.7-x86_64-bin-DVD/CentOS-6.7-x86_64-bin-DVD1.iso  /media
cp -r /media /var/www/html/centos6
umount /media

下载拷贝HDP-2.3.2.0和HDP-UTILS-1.1.0.20并解压到/var/www/html/hdp:

cd /data/temp
wget -O HDP-2.3.2.0-centos6-rpm.tar.gz http://public-repo-1.hortonworks.com/HDP/centos6/2.x/updates/2.3.2.0/HDP-2.3.2.0-centos6-rpm.tar.gzwget -O HDP-UTILS-1.1.0.20-centos6.tar.gz http://public-repo-1.hortonworks.com/HDP-UTILS-1.1.0.20/repos/centos6/HDP-UTILS-1.1.0.20-centos6.tar.gzmkdir -p /var/www/html/hdp
tar xf HDP-2.3.2.0-centos6-rpm.tar.gz -C /var/www/html/hdp
tar xf HDP-UTILS-1.1.0.20-centos6.tar.gz -C /var/www/html/hdp

下载拷贝Ambari-2.1.2并解压到/var/www/html/ambari

wget -O ambari-2.1.2-centos6.tar.gz http://public-repo-1.hortonworks.com/ambari/centos6/2.x/updates/2.1.2/ambari-2.1.2-centos6.tar.gzmkdir -p /var/www/html/ambari
tar xf ambari-2.1.2-centos6.tar.gz -C /var/www/html/ambari

完成后结构如下:

[root@Ambari ~]#cd /var/www/html/
[root@yum html]#tree -L 2.
├── ambari
│   └── ambari-2.1.2├── centos6
│   ├── CentOS_BuildTag
│   ├── EFI
│   ├── EULA
│   ├── GPL
│   ├── images
│   ├── isolinux
│   ├── Packages
│   ├── RELEASE-NOTES-en-US.html│   ├── repodata
│   ├── RPM-GPG-KEY-CentOS-6│   ├── RPM-GPG-KEY-CentOS-Debug-6│   ├── RPM-GPG-KEY-CentOS-Security-6│   ├── RPM-GPG-KEY-CentOS-Testing-6│   └── TRANS.TBL└── hdp├── HDP└── HDP-UTILS-1.1.0.2011 directories, 9 files

创建完成后,就可以通过web路径访问测试了(路径可能不同):http://T1.youyuan.cn/ambari/ambari-2.1.2/centos6/,输出:

Index of /ambari/ambari-2.1.2/centos6[ICO]    Name    Last modified    Size    Description
[DIR]    Parent Directory         -
[DIR]    RPM-GPG-KEY/    03-Oct-2015 22:48    -
[DIR]    ambari/    03-Oct-2015 22:48    -
[   ]    build.id    03-Oct-2015 22:48    566     [TXT]    build_metadata.txt    03-Oct-2015 22:48    196     [TXT]    changelog.txt    03-Oct-2015 22:48    0     [DIR]    repodata/    03-Oct-2015 22:48    -     Apache/2.2.15 (CentOS) Server at t1.youyuan.cn Port 80

[3] 配置本地repo文件:

在各个节点上都要操作!把原来的repo文件屏蔽掉

cd /etc/yum.repos.d/
rename .repo .repoBAK *.repo#恢复指令#cd /etc/yum.repos.d/#rename .repoBAK .repo *.repoBAK

新建CentOS-Media.repo配置文件vi /etc/yum.repos.d/CentOS-Media.repo: 文件内容如下:

[CentOS6-Media]name=CentOS6-Mediabaseurl=http://T1.youyuan.cn/centos6gpgcheck=1enabled=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6[Ambari-2.1.2]name=Ambari-2.1.2baseurl=http://T1.youyuan.cn/ambari/ambari-2.1.2/centos6/gpgcheck=0enabled=1[HDP-2.3.2.0]name=HDP-2.3.2.0baseurl=http://T1.youyuan.cn/hdp/HDP/centos6/2.x/updates/2.3.2.0gpgcheck=0enabled=1[HDP-UTILS-1.1.0.20]name=HDP-UTILS-1.1.0.20baseurl=http://T1.youyuan.cn/hdp/HDP-UTILS-1.1.0.20/repos/centos6gpgcheck=0enabled=1

新建ambari.repo配置文件vi /etc/yum.repos.d/ambari.repo: 文件内容如下:

[Ambari-2.1.2]name=Ambari-2.1.2baseurl=http://T1.youyuan.cn/ambari/ambari-2.1.2/centos6/gpgcheck=0enabled=1

[4] 校验YUM仓库ambari:

执行yum repolist,

已加载插件:fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
仓库标识                                                                                                                             仓库名称                                                                                                                             状态
Ambari-2.1.2                                                                                                                         Ambari-2.1.2                                                                                                                             6CentOS6-Media                                                                                                                        CentOS6-Media                                                                                                                        6,575HDP-2.3.2.0                                                                                                                          HDP-2.3.2.0                                                                                                                            175HDP-UTILS-1.1.0.20                                                                                                                   HDP-UTILS-1.1.0.20                                                                                                                      42repolist: 6,798

如果有向上面输出的话,就可以开始安装了!

[5] YUM在线安装: ambari-server

yum install ambari-server

等待安装完成!

[6] 配置AMBARI-SERVER

##指定JAVA_HOMEambari-server setup -j /usr/java/default##不指定JAVA_HOME执行ambari-server setup

选择n会按默认配置
数据库类型:postgresql
数据库:ambari
用户名:ambari
密码:bigdata
等待安装完成

[7] 启动AMBARI-SERVER

##启动:ambari-server start##查看:ps -ef | grep Ambari##停止:ambari-server stop##帮助ambari-server help

然后访问:http://T1.youyuan.cn:8080
不出意外的话就安装完成了
用户名/密码:admin/admin
Select Stack页面,打开Advanced Repository Options,要只选择redhat6,并且把Repository改成

http://T1.youyuan.cn/hdp/HDP/centos6/2.x/updates/2.3.2.0http://T1.youyuan.cn/hdp/HDP-UTILS-1.1.0.20/repos/centos6

[8] 安装AMBARI-AGENT

在网络环境不好的地方或者sshd的端口不是标准的22时,可以在每个agent节点上先手工安装AMBARI-AGENT

yum install ambari-agent

备注:

  • Ambari安装的环境路径: 各台机器的安装目录:

    /usr/lib/hadoop/usr/lib/hbase/usr/lib/zookeeper/usr/lib/hcatalog/usr/lib/hive
  • Log路径, 这里需要看出错信息都可以在目录下找到相关的日志

    /var/log/hadoop
    /var/log/hbase
  • 配置文件的路径

    /etc/hadoop/etc/hbase/etc/hive
  • HDFS的存储路径

    /hadoop/hdfs

FAQ

  • 主机名格式必须是hoastname.domain,如T1.youyuan.cn

  • Zookeeper-Agent端修改Server指向的HOSTNAME, /etc/ambari-agent/conf/ambari-agent.ini,如修改过主机hostname

  • 安装失败后或重新安装先执行ambari-server reset 后 ambari-setup

转载于:https://my.oschina.net/qiangzigege/blog/534527

Ambari在离线环境中安装Hadoop集群相关推荐

  1. ubuntu中安装hadoop集群

    hadoop是由java 语言编写的主从结构分布式计算存储架构 准备工作: 操作系统: Ubuntu16.04 软件安装包:jdk-8u171-linux-x64.tar.gz : hadoop-2. ...

  2. 在离线环境中安装Visual Stuido 2017

    在离线环境中安装Visual Stuido 2017 0x00 写在前面的废话 因为工作上大多数都是在离线环境中进行的,进出离线环境很麻烦,所以之前很长一段时间都在使用VS2010.后来尝试换了VS2 ...

  3. 使用ambari安装hadoop集群

    之前一篇介绍了ambari的安装,这一篇介绍一下通过ambari安装Hadoop集群 登陆后,给自己的hadoop集群起个名字 选择HDP版本,并且选中use local repository 我们操 ...

  4. CentOS7 搭建Ambari-Server,安装Hadoop集群(一)

    2017-07-05:修正几处拼写错误,之前没发现,抱歉! 第一次在cnblogs上发表文章,效果肯定不会好,希望各位多包涵. 编写这个文档的背景是月中的时候,部门老大希望我们能够抽时间学习一下Had ...

  5. Eclipse中使用Hadoop集群模式开发配置及简单程序示例(Windows下)

    Hadoop入门配置系列博客目录一览 1. Eclipse中使用Hadoop伪分布模式开发配置及简单程序示例(Linux下) 2. 使用Hadoop命令行执行jar包详解(生成jar.将文件上传到df ...

  6. Ubuntu上安装Hadoop集群

    戳蓝字"CSDN云计算"关注我们哦! 前面我们介绍了在Ubuntu上安装Hadoop单机版.但是我们知道,Hadoop在实际工作中都是以集群的形式存在的,毕竟需要处理大量的数据,单 ...

  7. 在Linux中进行hadoop集群搭建

    在公网IP为x.x.x.x.y.y.y.y和z.z.z.z并装有Centos8的服务器上进行hadoop集群搭建,都安装hadoop-3.1.3和server-jre-8u202-linux-x64. ...

  8. K8S中安装ES集群

    背景 在K8S 安装ES集群,使用 Elasticsearch (ECK) Operator 实现 官网 ### https://operatorhub.io/operator/elastic-clo ...

  9. python pip下载本地依赖包,并在离线环境中安装,并解决报错ERROR: Could not find a version that satisfies the requirement报错

    文章目录 步骤1:导出依赖 步骤2:离线下载依赖包 步骤3:进入新环境使用python安装依赖 整体思路如下: 首先根据项目需要导出依赖包,由于本地的python环境中其实安装了很多乱七八糟的包,这些 ...

最新文章

  1. 从民工到CCNA-献给想考认证的朋友
  2. java 使用new新建一个对象时的操作过程
  3. TORCH MAXIMUM
  4. 【数据分析】离婚率逐年上升,数据分析告诉你背后的主因竟然是它!
  5. logging 日志输出乱码 info_接口自动化测试中logging实际用法
  6. linux安全软件 腾讯,腾讯安全团队发现一存在24年的Linux 0day高危漏洞
  7. figma下载_如何在Figma中创建逼真的3D对象
  8. javax.ws.rs.NotSupportedException: Cannot consume content type
  9. Oracle SQL Tips
  10. sql server 性能_SQL Server性能神话破灭
  11. 阿里巴巴泰山版java开发手册最新版.pdf 百度网盘分享
  12. 2018年7-8月学习有效反馈
  13. 乒乓球单循环赛_乒乓球淘汰赛制和单循环赛制的比赛方法是什么?
  14. Mysql错误:#1054 - Unknown column '字段名' in 'field list'
  15. 74HC573锁存器
  16. 针对芯片测试行业,常见stil,vcd,wgl,文件的转化,到93K,chroma,小总结
  17. 【FeatherNets】《FeatherNets:Convolutional Neural Networks as Light as Feather for Face Anti-spoofing》
  18. 什么是人工智能数据采集?
  19. 图解爬虫,用几个最简单的例子带你入门Python爬虫
  20. 便携设备:小终端激起大变局

热门文章

  1. 数据验证html,JavaScript 表单数据验证
  2. c++ include 路径_头文件中,#include使用引号“”和尖括号lt;gt;有什么区别?
  3. oracle里面子判断,在过程中添加子进程,在子过程中判断
  4. 哆啦a梦简单图画python编程_[python]画哆啦A梦,Python,绘制
  5. vc++64位系统下long的长度为4个字节_64位系统究竟牛逼在哪里?
  6. python分组聚合显示全部列_python – pandas:如何按多列分组并在多列上执行不同的聚合?...
  7. 计算机系统安装和维护实验,2计算机系统安装维护实验报告.doc
  8. oracle plsql开启并行,Oracle开启并行的几种方法
  9. Fastlane- app自动编译、打包多个版本、上传到app store
  10. 联想g510升级换什么cpu好_老兵不死,十年前的联想 Y450 笔记本复活记