首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

化繁为简,快速完成 Spark 大数据平台机群配置(1)

化繁为简,快速完成 Spark 大数据平台机群配置(1)

Ambari 是 Apache Software Foundation 中的一个基于 web 的顶级开源项目,其自身也是一个分布式架构的软件,主要由两部分组成: Ambari Server 和 Ambari Agent 。 它是集创建、管理、监视                Hadoop 生态圈中众多软件为一体的一个工具。 它为大数据平台的搭建 ,可视化分析及运维提供了巨大的便利。 目前, Ambari 的最新发布版本为 2.4.2。
IBM 的杰作之                IOPIOP 是指 IBM Open Platform for Apache Hadoop,IOP 中集成并优化了大量的 Apache Hadoop                项目,包括 HDFS, YARN, MapReduce, Ambari, Hbase, Hive, Oozie, Parquet, Parquet                Format, Pig, Snappy, Solr, Spark, Sqoop, Zookeeper, Open JDK, Knox, Slider                等,目前 IOP 已经发布了最新的 4.2 版本,相比之前的 4.1 版本增加了更多的项目。表 1 为 IOP4.2 与 IOP4.1 的比对                。
表 1                    IOP 4.2 Version VS IOP 4.1 VersionComponent IOP 4.1 Version IOP 4.2 Version Ambari 2.1.0  2.2.0 Avro 1.7.7  1.7.7 Flume 1.5.2  1.6.0 Hadoop 2.7.1  2.7.2 Hbase 1.1.1  1.2.0 Hive 1.2.1  1.2.1 Kafka 0.8.2.1  0.9.0.1 Knox 0.6.0  0.7.0 Oozie 4.2.0  4.2.0 Sqoop 1.4.6  1.4.6 Ranger  -  0.5.2 Phoenix  -  4.6.1 Titan  -  1.0.0 Parquet 2.2.0  2.2.0 Parquet -mr 1.6.0  1.6.0 Pig 0.15.0  0.15.0 Slider 0.80.0  0.90.2 Solr 5.1.0  5.5 Spark 1.5.1  1.6.1 Zookeeper 3.4.6  3.4.6
困惑,安装前数据平台繁杂的配置准备相信很多同仁都有过搭建大数据平台时由于机群机器之间的设置或配置不一致等诸多问题最后造成安装过程中出错,不得不排错后回滚到前几步重新开始,而且出现的错误还不容易排除,造成大量的时间都浪费在排错上。特别是机群有几十个甚至上百台机器时更不容易。比如要在所有机器上同步时钟,要给机群所有机器配置                SSH 无密码登录,关闭防火墙等等。
化繁为简,利用脚本快速完成安装前配置文中结合作者工作中的实际,给出了一个简单的脚本,方便用户来统一进行安装过程前的配置工作,有兴趣的伙伴们也可以修改并完善这个脚本。同时也期望这个脚本能给大家的工作带来实实在在的便利。当然实际生产中更多为离线安装部署,但道理是一样的。
文中假设用户已经安装并配置了 yum 源并选择在线安装,操作系统为 Centos6.5。具体安装本地 yum 源的方法请参考 IBM                developerWorks 技术文章 ""
准备机器文中假设我们要部署一个含 3 台机器的机群,这三台机器的 FQDN 名分别为                c6501.ambari.apache.org,c6502.ambari.apache.org 和                c6503.ambari.apache.org,需要特别强调的是主机名要符合完全限定域名。
同步时钟假设我们以 c6501 这台机器作为 Ambari server 机器,安装部署前首先要同步时钟设置,文中假设机群机器均安装了 ntp 软件包。                如果没有安装可通过运行: yum -y install ntp ntpdate 来安装 ntp 服务。
一切准备就绪,在终端执行命令:
# vi /etc/ntp.conf
在 ntp.conf 文件中加入:
1
2
3
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
server 127.127.1.0 #local clock
fudge 127.127.1.0 stratum 10




注释掉下图区域后保存退出。
1
2
3
4
5
6
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst




编辑脚本由于客户机群内机器的 IP                地址、机器名等存在不同,为了简单起见,文中给出的脚本在开头预先定义了机群内所有机器的相关信息,这些内容会被写入到机群内所有机器中。当然,读者也可以把机群的相关信息定义到一个单独的配置文件中,通过读取配置文件来获取机群的配置信息。
脚本的预定义内容说明:
prefix:是指机群里所有机器名的前缀,比如本文中所有机器都是以"c650"开头的
master:是指 Ambari server 所在机器,文中安装在 c6501 这台机器上
machineName: 是指机群所有机器的名称、地址等信息,文中三台机器的信息如下,这些信息将会被加入到机群所有机器的 hosts 文件中。
1
2
3
4
5
machineName="
192.168.65.101 c6501.ambari.apache.org c6501
192.168.65.102 c6502.ambari.apache.org c6502
192.168.65.103 c6503.ambari.apache.org c6503
"




以下为脚本的具体内容,为便于用户理解,对脚本做了部分注释,读者可以先将其拷贝下来,新建一个 shell 脚本文件,比如                installsetup.sh(vi installsetup.sh),将拷贝下来的内容粘贴到 shell 文件中保存退出,执行 chmod 775                installsetup.sh 赋予文件可执行权限。用户也可以根据自己的喜好及方便来改写脚本中的内容。
返回列表