设为首页 收藏本站
查看: 747|回复: 0

[经验分享] 实战 IBM BigInsights,轻松实现 Hadoop 的部署与管理

[复制链接]

尚未签到

发表于 2016-12-11 06:51:56 | 显示全部楼层 |阅读模式
[size=0.76em]
转自:IBM官网http://www.ibm.com/developerworks/cn/data/library/techarticle/dm-1109wangxj/

[size=0.76em]
[size=1.5em]IBM BigInsights 简介

[size=0.76em]
IBM InfoSphere BigInsights 是用于分析和可视化管理海量数据的处理平台,它基于分布式开源技术 Apache Hadoop,在集成与扩展 Hadoop 主要组件的同时,还提供了 IBM 特有的数据处理与分析模块。利用 BigInsights,IT 专业人员能够快速地构建大数据分析处理平台,对企业内的海量数据进行定制化分析,并能够与企业现有的数据库、数据仓库和商业智能分析框架相结合,从而帮助企业获得巨大的商业价值。

[size=0.76em]
BigInsights 主要提供了以下功能特性:




  • Apache Hadoop 组件的轻松部署

[size=0.76em]
通过简单的图形界面,BigInsights 能够轻松实现 Hadoop 组件包括 Hadoop 核心包,Avro,Flume,Hbase,Hive,Lucene,Oozie,Orchestrator,Pig,Zookeeper 等组件的安装与部署。




  • Apacche Hadoop 组件、作业的管理与维护

[size=0.76em]
BigInsights 提供了命令行和 Web 界面两种方式对 Hadoop 组件进行管理,配置方式非常简单。




  • 提供了更全面的安全验证策略,比如文件验证、LDAP 验证,这是 Hadoop 本身所不具备的

  • 更多高级功能



[size=0.76em]

[size=0.76em]
[size=1.5em]如此麻烦的 Hadoop

[size=0.76em]
Hadoop 的安装、部署和维护都是比较繁杂的,需要用户在集群环境里进行繁琐的手工配置。从用户的体验反馈分析,以下几个方面都是用户感到头痛的地方:




  • Hadoop 要求所有节点上 Hadoop 的部署目录结构要相同,并且都有一个相同的用户名作为管理员帐户,因此需要手工在集群中各个节点上安装 Hadoop 和创建用户; 用户需要在集群中的机器上完成环境配置,设置一致的变量。


  • 集群中的主节点(Namenode)通过 SSH(Secure Shell)来启动和停止各个节点上的进程,这就需要在节点之间执行指令时使用无密码方式,因此需要对 SSH 使用无密码公钥认证进行配置;


  • Hadoop 及其组件的配置文件管理也是非常复杂,用户需要对多个配置文件进行维护管理,例如各个节点的角色配置、各组件的文件路径、端口设置等等;


  • Hadoop 的维护也是让管理员头疼的问题,比如为了扩展性能,新添加 100 台机器,那么就需要在 100 台机器上进行安装,还要在主节点上对 100 台机器进行配置,工作量非常的大。

[size=0.76em]
Hadoop 的安装配置不仅费时费力,而且容易出错。那有没有更好的解决方案呢?有,IBM InfoSphere BigInsights 在涵盖了 Hadoop 及其重要的组件的同时,非常好地解决了上述问题,具有很好的用户体验。




[size=0.76em]

[size=0.76em]
[size=1.5em]利用 BigInsights 轻松部署 Hadoop 及其组件

[size=0.76em]
[size=1.2em]利用 BigInsights 全面快速地部署 Hadoop 集群

[size=0.76em]
IBM BigInsights 提供了简洁方便的 UI 界面安装方式,它屏蔽了底层繁复的配置工作,用户只需在界面上进行简单的修改设置,BigInsights 即可根据用户的要求部署 Hadoop。这里以 30 个节点为例,演示如何利用 BigInsights 部署 Hadoop 集群。

[size=0.76em]
步骤 1. 运行安装脚本开始安装

[size=0.76em]
BigInsights 提供 .tar.gz 格式的压缩安装包,首先需要在主节点上(NameNode)将其解压,解压后运行start.sh脚本。脚本会自动检测主机名和 IP 并提供安装使用的 URL。使用该
URL 将打开安装主界面。

[size=0.76em]
步骤 2. 选择安装类型

[size=0.76em]
用户需要选择集群安装或者单节点安装,在 Hadoop 的应用场景中,集群安装是主要的方式。

  
图 1. 选择安装类型


[size=0.76em]
步骤 3. 设置相关用户密码

[size=0.76em]
Hadoop 集群中节点间需要通信,因此在安装过程中需要设置 root 用户密码、BigInsights 管理员用户名和管理员用户密码:

  
图 2. 设置用户密码


[size=0.76em]
如果 BigInsights admin user 和 group 在集群中的某个节点上不存在,BigInsights 会自动创建该用户。

[size=0.76em]
步骤 4. 添加节点

[size=0.76em]
单击 ‘ Add Node ’添加集群中的其他节点(节点以主机名和 IP 代表均可),重复此步骤可以添加多个节点。如果所需添加的节点过多,可以选择 ‘ Add Multiple Nodes ’来完成, 如图 3 所示:

  
图 3. 一次性添加多个节点


[size=0.76em]
步骤 5. 组件配置

[size=0.76em]
Hadoop 集群中的节点可以承担不同的角色,因此可以在安装时将组件分配到不同的节点上,组件的属性信息例如端口等也可以在安装界面上直接设置。单击’ Assign …’按钮可以分配组件到某个节点,也可以不做任何修改保持默认设置:

  
图 4. 组件配置


[size=0.76em]
步骤 6. 设置安全策略

[size=0.76em]
BigInsights 支持无用户验证、文件验证和 LDAP 验证三种方式,后两者为 Hadoop 提供了更高级别的安全策略。




  • 文件验证 (flat file authentication)

[size=0.76em]
文件验证指 BigInsights 从相关属性文件中加载安全设置,包括使用系统默认文件设置和用户自定义文件设置。

  
图 5. 默认文件验证设置


[size=0.76em]
如果选择默认设置,将会加载 $BigInsights 安装包根目录 /artifacts/security/flatfile/biginsights_user.properties, $BigInsights 安装包根目录 /artifacts/security/flatfile/biginsights_group.properties 文件。

[size=0.76em]
biginsights_user.properties 内容如下:

  


biadmin=passw0rd


  
[size=0.76em]
该文件设置了登陆 Web 界面的用户名和密码,用户可以修改用户名和密码,也可以增加新的用户,例如 tester=u7i8o9p0。

[size=0.76em]
biginsights_group.properties 内容如下:

  


BigInsightsSystemAdministrator=biadmin  BigInsightsDataAdministrator=biadmin  BigInsightsApplicationAdministrator=biadmin  BigInsightsUser=biadmin  


  
[size=0.76em]
该文件设置了与 BigInsights 中各种角色相关的用户:SystemAdministrator 角色用户拥有所有系统管理相关的权限,例如查看增加删除节点、启停服务等;DataAdministrator 角色用户拥有所有与数据管理相关的权限。例如上传文件、删除文件等;ApplicationAdministrator 角色用户拥有所有与作业管理相关的权限,例如创建作业、作业调度等;BigInsightsUser 角色用户拥有执行作业、查看作业结果、查看数据等权限。

[size=0.76em]
除了使用默认的文件设置外,用户也可以使用自定义的配置文件(配置文件需要与 biginsights_user.properties 和 biginsights_group.properties 具备相同的格式):

  
图 6. 自定义文件验证设置





  • LDAP 验证

[size=0.76em]
LDAP(轻量目录访问协议)是另外一种安全验证方式,需要用户单独搭建 LDAP 服务器,存储所有的用户、组信息,所有在安装时设置的用户和组必须是 LDAP 服务器上的有效值。

  
图 7.LDAP 验证


[size=0.76em]
最后,产品安装后,会返回安装结果,同时在日志文件里记录了详细信息以便分析。

[size=0.76em]
[size=1.2em]巧用 BigInsights 实现 Hadoop 维护管理

[size=0.76em]
BigInsights 提供了丰富易操作的 Hadoop 组件管理命令,包括启动 / 停止服务、添加 / 删除节点、查看组件状态、检测节点健康状况、同步节点数据等。本节介绍通过 BigInsights 命令实现 Hadoop 的维护管理。

[size=0.76em]
在 $BigInsights_Home/bin 目录下提供了许多管理命令,这些命令需要在 BigInsights 管理员用户下执行。




  • 启动 / 停止服务

[size=0.76em]
start.sh$ 组件名 1 $ 组件名 2 … /stop.sh$
组件名 1 $ 组件名 2 …

[size=0.76em]
启动 / 停止指定组件服务,如果指定为’ all ’,意为所有组件。

  


start-all.sh/start-all.sh


  
[size=0.76em]
启动 / 停止所有组件服务




  • 添加 / 删除节点

[size=0.76em]
有时为了扩展性能或者重新分配资源,需要添加或者删除某个指定组件的节点。

[size=0.76em]
addnode.sh$ 组件名 $ 节点 1 $ 节点 2 … /removenode.sh$
组件名 $ 节点 1 $ 节点 2 …

[size=0.76em]
在指定节点上安装指定组件 / 在指定节点上删除指定组件,如:

  


addnode.sh zookeeper $host1 $host2


  



  • 查看组件状态

[size=0.76em]
status.sh$ 组件名 1 $ 组件名 2 …

[size=0.76em]
查看指定组件在各个节点上的运行状态(运行或停止),如果指定为’ all ’,意为所有组件。




  • 检查节点健康状况

[size=0.76em]
可以通过运行作业检查指定组件在各个节点上的健康状况:

[size=0.76em]
healthcheck.sh$ 组件名 1 $ 组件名 2 …

[size=0.76em]
如果指定为’ all ’,意为所有组件。如果组件在某个节点上已停止,将会先将其启动。




  • 同步节点数据

[size=0.76em]
当用户修改了相关配置信息后,可以通过以下命令同步节点间数据:

[size=0.76em]
syncconf.sh$ 组件名 1 $ 组件名 2 …

[size=0.76em]
如果指定为’ all ’,意为所有组件。




  • 节点列表信息

[size=0.76em]
listnode.sh$ 组件名 1 $ 组件名 2 …

[size=0.76em]
列出指定组件被安装的节点,如果指定为’ all ’,意为所有组件。




  • 卸载 BigInsights

[size=0.76em]
如果不再需要 BigInsights,可以通过uninstall.sh卸载 BigInsights,并删除所有相关目录。

[size=0.76em]
除此之外,在各个组件目录下,也提供了许多对该组件的管理命令,例如配置组件、运行组件相关的命令行等。




[size=0.76em]

[size=0.76em]
[size=1.5em]BigInsights Web 图形界面控制台

[size=0.76em]
除了使用命令管理 Hadoop,BigInsights 还提供了一个 Web 图形界面,更为方便地管理 Hadoop 组件、运行 Hadoop 作业、管理 HDFS 文件系统等。通过 http://$ 主节点主机名或 IP:8080/BigInsights 进入 BigInsights Web 管理控制台,默认显示组件管理页面。

[size=0.76em]
[size=1.2em]轻松管理 Hadoop 组件

[size=0.76em]
组件管理页面显示集群中组件状态,同时也可以通过该界面启动 / 停止组件服务、同步节点信息、添加节点等。

  
图 8.BigInsights Web 主界面


[size=0.76em]
组件管理页面包括 Dashboard Summary,Start Stop Summary,Server Administration 三个面板:Dashboard Summary 显示集群的健康状况;Start Stop Summary 显示集群内总的节点数和正在运行的节点数;Server Administration 显示各个组件的安装情况和运行状态,同时也可以通过该面板来添加、删除节点;启动、停止服务;或者同步集群,实现与命令行相类似的功能。

  
图 9.Server Administration


[size=0.76em]
[size=1.2em]使用控制台运行 Hadoop 作业

[size=0.76em]
BigInsights Web 界面还提供了作业(job)的管理,用户通过它不但可以监控系统中所有作业的执行状态和细节,还可以创建、运行新作业。




  • 浏览作业状态

[size=0.76em]
作业管理页面列出了所有作业的状态,包括作业的创建时间、完成时间、完成百分比、当前状态等:

  
图 10. 作业管理主页面


[size=0.76em]
如果要了解作业的细节例如该作业包含的总任务数、成功任务数、失败任务数、任务的开始时间和结束时间等,可以单击作业名,进入’ Tasks ’ 页:

  
图 11. 任务统计


[size=0.76em]
‘ Job Info ’页面显示了作业配置信息,用户只能浏览配置信息而不能对其进行修改:

  
图 12. 作业配置信息





  • 创建 Jar 作业

[size=0.76em]
用户可以将自己开发的 Map Reduce 作业打包成 jar 文件并导入系统运行。单击’ Create Jar Job …’,输入 jar 文件的路径,要执行的 Main Class,以及执行该作业所需的必要参数,例如输出文件夹,然后单击’ Submit ’,该作业将会被创建并执行。

  
图 13. 创建 Jar 作业


[size=0.76em]
创建作业后,系统自动返回作业主页,此时刚刚创建的新作业信息将会显示在列表中。

  
图 14. 创建新作业后的作业列表





  • 创建示例作业

[size=0.76em]
Hadoop 自带了一些示例作业以便用户学习,例如统计文本中文字数的作业。单击’ Create Sample Word Count Job ’,输入该作业需要的必要参数,包括 Input Directory(存放被统计文件的文件夹)、Output Directory(存放输出结果的文件夹)来创建作业:

  
图 15. 创建示例作业


[size=0.76em]
[size=1.2em]一目了然的 HDFS 管理

[size=0.76em]
相对于 HDFS 系统管理命令,BigInsights Web 界面提供了更为简便的文件管理方式。它提供了类似于 Windows 资源管理器的树状模式,文件结构一目了然。通过它,用户可以创建目录,上传文件,查看文件内容等。

[size=0.76em]
在 Web 主界面单击’ Files ’进入 HDFS 管理。

  
图 16.HDFS 目录


[size=0.76em]
如果要创建子文件夹,可以选中 HDFS 目录中的某个文件夹,然后单击’ Create Directory ’;

[size=0.76em]
如果要上传文件至 Hadoop,可以选中 HDFS 目录中的某个文件夹,然后单击’ Upload …’;

[size=0.76em]
在 HDFS 树状目录中单击某个文件,或者在’ Path ’文本框中输入文件的完整路径,可以查看文件内容:

  
图 17. 查看文件





[size=0.76em]
[size=1.5em]IBM BigInsights 可以做得更多更强

[size=0.76em]
除了以上介绍的功能外,BigInsights 还提供了更多的高级功能,例如:

[size=0.76em]
JAQL 查询语言

[size=0.76em]
JAQL 是为 JSON 而设计的查询语言(但不局限于 JSON),主要用于海量半结构化数据的查询,以 Hadoop MapReduce 的方式运行查询,并且具备扩展性,用户可以开发自己的函数库部署到系统中。




  • 与传统关系型数据库如 DB2 提供了接口,提供 DB2 与 Hadoop 文件系统之间数据的导入导出以及从 DB2 调用 Hadoop 作业的能力,对于习惯了传统的关系型数据库的用户非常方便。


  • 提供了基于 web 的数据挖掘工具 -Bigsheets,能够从大量无规则数据中抽取出用户所需数据并以图表形式展现,分析结果一目了然。


  • 提供了与 IBM SystemT 的集成,实现智能语义分析。

[size=0.76em]
总之,如果企业正面临着海量数据信息管理的挑战并有意使用 Hadoop 解决此问题,IBM BigInsights 将是一个非常不错的选择。

  

[size=0.76em]
[size=1.5em]参考资料

[size=0.76em]
学习




  • 访问BigInsights Information Center了解关于
    IBM BigInsights 产品的知识。



  • 通过Hadoop 官网,了解 Hadoop 基本知识和最新信息。



  • 在 Information Management 专区InfoSphere 产品专题,了解关于信息管理的更多信息。查找技术文档、操作文章、培训、下载、产品信息等信息。



  • 通过用 Big Data 挖掘新的业务洞察,了解
    Hadoop 带给数据分析的动力、新局面和机遇。



  • 随时关注 developerWorks技术活动网络广播,了解最新动向。



  • 观看developerWorks 演示中心,包括面向初学者的产品安装和设置演示,以及为经验丰富的开发人员提供的高级功能。



[size=0.76em]
获得产品和技术




  • 下载BigInsights Basic 版本,试用
    BigInsights。



  • 使用IBM 产品评估试用版软件构建您的下一个开发项目,试用软件可通过
    developerWorks 直接下载。



[size=0.76em]
讨论




  • 访问developerWorks 博客,加入developerWorks
    中文社区
    ,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。



[size=0.76em]
[size=1.5em]作者简介


[size=0.76em]
王小静,来自 IBM 中国软件开发中心,2008 年加入 IBM,目前在 IBM IM 部门从事 InfoSphere BigInsights 产品的测试工作。




[size=0.76em]
林洪祥,来自 IBM 中国软件开发中心,目前在 IBM Big Data,专注于 InfoSphere BigInsights 大数据分析处理平台。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-312426-1-1.html 上篇帖子: hadoop中设置同一组中所有用户都有权限操作 下篇帖子: walter的hadoop学习笔记三 集群搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表