IBM SoftLayer OpenPOWER with Ubuntu 14.04 上的 Apache Bigtop v1.1 快速入门指南

本文概述了 IBM® SoftLayer® POWER8® with Ubuntu 14.04 裸机服务器上安装 Apache Hadoop 和 Spark Bigtop v1.1.0 软件包的过程。捆绑的安装脚本中包含 Apache Zeppelin 笔记本,用于运行一个初始基准测试套件。

Amir Sanjar, 大数据解决方案开发人员, IBM

Amir 的照片Amir Sanjar 在 IBM 和 Canonical 等公司中工作过,拥有多年的大数据软件和解决方案开发经验。他在企业解决方案自动化、无线和电池技术领域拥有多项专利。目前在 IBM,他领导着大数据生态系统和 ISV 的 IBM Power 支持工作。



Donna Ball, ISST 开源产品测试主管, IBM

Donna 的照片Donna 已在 IBM 工作了 15 年以上,作为测试主管,她的大部分时间都花在各种 IBM System 计划上,比如 FAStT、RSSM 和 FLEX iLAB。两年前,她转而领导 IBM PowerKVM 客户测试环境项目,使用 Linux on Power 架构研究和实现各种分析和云解决方案。目前她是集成软件系统测试部门的开源产品测试主管。



Bill Phu, 软件性能分析师, IBM

Bill 的照片Bill 最初是一位 IBM DB2® 内核开发人员,在 8 年后加入系统和软件性能小组。他在那里测试众多产品的性能,包括 Hadoop 和 Spark on SoftLayer,撰写了各种价格和性能报告。



Maria Ward, ISST Power 软件解决方案测试架构师, IBM

Maria 的照片Maria Ward 是 IBM Systems Client Advocacy and System Assurance 组织的 Power 软件和解决方案测试架构师。他目前重点研究 IBM Power 解决方案,将 OpenPOWER 和开源技术(比如 Hadoop 和 Spark)集成到 IBM Power Systems 测试战略中,为客户在 IBM Power 服务器上部署客户解决方案提供一条绿色通道。



2016 年 8 月 09 日

1. 简介

IBM POWER8 架构是最新的 IBM SoftLayer 产品,是试验 Apache Bigtop 解决方案的完美工具。从收到欢迎包到建立新的基于 IBM POWER8 处理器的裸机服务器,只需不到 45 分钟,您就完成了 Hadoop、Spark 及其他许多软件包的安装和配置工作,并为在 Zeppelin 笔记本上运行预先打包的教程做好准备,所有这些都是用 install_bigtop.sh 脚本自动完成。SoftLayer 裸机服务器不需要使用 install_bigtop.sh 脚本,因为它适用于 Ubuntu 14.04。

在 POWER8 with Ubuntu 14.04 上安装 Apache Bigtop v1.1 的步骤概述

  1. 请参阅以下 URL 了解更多细节。

立即开始!在每月的第一天使用优惠码 FREEPOWER8,获得高达 2,238 美元的存款用于在 SoftLayer 中使用 POWER8 系统。

  1. 客户端收到一个欢迎包,其中包含用于访问 Web 门户的用户 ID 和密码。
  2. 客户端访问 SoftLayer POWER8 服务器并准备进行安装。
  3. 客户端下载 install_bigtop.sh 脚本,该脚本将下载、配置和安装 Apache Hadoop、Spark、Zeppelin 和其他用于 Linux on Power 的必要软件包。
  4. 客户端登录 Apache Zeppelin 并运行预先配置的基准测试。
  5. 客户端上传示例 Stock Workload 并运行它,执行快速性能测试。

当前 IBM SoftLayer OpenPOWER 优化的 POWER8 产品捆绑到 4 个方便的产品包中。请参见下图。

图 1. SoftLayer POWER8 裸机服务器选项(截至 2016 年 5 月)

有关 SoftLayer POWER8 裸机服务器配置的更多信息和当前定价,请访问:SoftLayer POWER8 裸机服务器

Bigtop 的最低系统要求

  • 4 个核心
  • 32 GB 内存
  • 50 GB 虚拟小型计算机系统接口 (SCSI) 磁盘
  • Linux Ubuntu 14.04.03 Little Endian

2. 开始使用 SoftLayer

本节介绍如何访问 SoftLayer POWER8 裸机服务器。

访问 SoftLayer POWER8 裸机服务器

您将收到 SoftLayer 的一封欢迎电子邮件,其中包含 SoftLayer Control Portal 的链接和登录信息。

查阅 注册教程,了解第一次访问以及全面配置 SoftLayer 系统的详细信息。

按照 SoftLayer 教程视频中列出的步骤完成以下任务:

  • 登录(第一次访问)。
  • 通过菜单进行快速导航,配置 IBM SoftLayer POWER8 服务器。
  • 了解在何处访问在线工具,包括如何重建系统映像。
  • 打开一个远程虚拟专用网 (VPN) 连接并使用安全 Shell (SSH) 访问虚拟系统。

有关 SoftLayer 安装和配置的更多信息,请参阅:knowledgelayer.softlayer.com


3. 准备系统以安装 Bigtop

install_bigtop.sh 脚本可快速(在 45 分钟内)、自动、完整地安装和配置 Hadoop、Spark 和 Zeppelin(一个运行基准测试的工具)。

为了运行 install_bigtop.sh 脚本,您必须拥有 超级用户特权。

强烈建议您将 install_bigtop.sh 脚本安装在新安装的 Ubuntu 内核上。如果系统已在使用,则运行 cleanup.sh 脚本,该脚本和其他的包位于:https://github.com/ibmsoe/bigtop/

备注:如果 ~/bigtop/source目录存在,install_bigtop.sh脚本将安装失败。

  1. 以非根用户身份(例如 bigtop_user)安装 Bigtop 并执行以下步骤。
    1. 添加新用户。
    2. 设置新用户密码。
    3. 以新用户身份登录
    4. 进入用户主目录。
    5. 安装 git以准备从 github.com 下载脚本。
     $ useradd bigtop_user – U – G sudo – m 
     $ passwd bigtop_user (enter passwords) 
     $ su bigtop_user 
     $ cd ~ 
     $ sudo apt-get install git
  2. 从 github.com 下载 install_bigtop.sh 脚本。

    对于第一次下载,使用 git clone命令。

    git clone https://github.com/ibmsoe/bigtop

    对于后续更新,使用 git pull 命令。

    这会将以下脚本下载至一个名为 bigtop的目录中:

    • cleanup.sh
    • install_bigtop.sh
    • restart-bigtop.sh
    • hadoopTest.sh
    • status.sh
    • sparkTest.sh

    或者,您可以使用 wget命令来下载单个文件。例如,要下载 install_bigtop.sh文件,可运行以下命令:

    wget https://raw.githubusercontent.com/ibmsoe/bigtop/master/install_bigtop.sh
  3. 将目录更改为 bigtop。
     $ git clone https://github.com/ibmsoe/bigtop
     $ cd bigtop/ 
     ~/bigtop$ ls 
     install_bigtop.sh  restart-bigtop.sh  status.sh              Stock_workload.json 
     cleanup.sh          LICENSE.md         source             stockprices.csv.gz-aa 
     hadoopTest.sh       README.md          sparkTest.sh       stockprices.csv.gz-ab
  4. 如果同时使用私有 IP 和公共 IP,确认 /etc/hosts 的主机名已经与私有 IP 关联。
  5. 必须使用 SoftLayer 服务器的私有 IP 地址打开 Zeppelin。这需要打开一个 VPN 门户。私有 IP 与公共 IP 都会在 SoftLayer 裸机服务器的 Device Details 页面上列出。
    图 2. SoftLayer POWER8 裸机服务器的 Device Details 页面
  6. 增加默认的打开文件的最大数量。

    例如:将文件限制设置为 1000000。

    Sudo vi /etc/security/limits.conf

    添加以下代码行(这会在下次登录时影响所有用户):

     *     soft    nofile          1000000 
     *     hard    nofile          1000000

    注销后再次登录,让新的 ulimit 值生效。


4. 安装 Bigtop Hadoop

执行以下步骤,使用 install_bigtop.sh 脚本下载和安装 Apache Hadoop、Spark 和 Zeppelin 包。

  1. 运行 install_bigtop.sh脚本。

    例如: ./install_bigtop.sh

    备注:忽略安装过程中与 Hadoop、YARN 或其他进程未启动有关的错误消息。虽然正在安装这些软件包,但并未配置系统允许这些软件包立即开始运行。

    install_bigtop.sh脚本执行以下任务:

    • 安装所有依赖项 (Java Open JDK1.8)
    • 下载并安装最新的 Apache Bigtop Hadoop 2.7.1 Debian 包,包括:
      • Hadoop v 2.7.1
      • Bigtop-groovey v2.4.4
      • Jsvc v1.0.15
      • Tomcat v6.0.36
      • ZooKeeper v3.4.6
      • Scala v2.10.4
    • 配置 Hadoop 环境
    • 格式化 Hadoop Distributed File System (HDFS)
    • 下载并安装 Apache Bigtop Spark 1.5.1
    • 下载并安装 Zeppelin v0.5.6
    • 在单个节点上启动所有已配置的服务
  2. install_bigtop.sh脚本完成安装后,使用 status.sh 脚本确认所有功能都按预期正常启动并正在运行。

    示例:$ ./status.sh

    图 3. Bigtop 进程的状态

    备注:本基准测试不需要 Spark Thrift 服务器和 Hadoop ZKFC。


5. 安装并运行 Hadoop 测试脚本

运行 hadoopTest.sh 脚本,确认 Hadoop 工作正常。

示例:$ ./hadoopTest.sh


6. 安装并运行 Spark 测试脚本

运行 sparkTest.sh 脚本。

示例: $ ./sparkTest.sh

检查结果。

$ sudo ./sparkTest.sh 
 Pi is roughly 3.1427

7.Zeppelin Tutorial

Apache Zeppelin 是一个多功能的基于 Web 的 UI 笔记本,随附会安装一个使用 Scala 编写的默认教程,帮助您开始创建自己的笔记本脚本。执行以下步骤,运行 Zeppelin Tutorial。

  1. 从浏览器登录 Zeppelin。

    (例如:http://<私有 IP 地址>:8080)

    图 4. Zeppelin 欢迎页面
  2. 单击 Zeppelin Tutorial,运行教程基准测试。

    备注:如果 Interpreter binding节打开并用蓝色突出显示了解释器(参见图 5),则单击 Save

    图 5. 解释器加载为默认解释器组的一部分
  3. 然后单击 Run all paragraphs图标,运行该教程。出现提示后单击 OK
    图 6. Zeppelin UI 显示了 “Run all paragraphs” 图标
  4. 向下滚动页面,查看结果。
    图 7. Zeppelin Tutorial 图形显示结果

    点击查看大图

    图 7. Zeppelin Tutorial 图形显示结果


8.Zeppelin 示例盘中股票工作负载

如果需要,下载新的 Zeppelin JSON 文件:
wget https://github.com/ibmsoe/bigtop/raw/master/Stock_workload.json

备注:该 JSON 文件必须在查看 Zeppelin 笔记本的系统上。

  1. 转到 Zeppelin 欢迎页面。
  2. 选择 Import note
  3. 单击 Choose a JSON here面板。
  4. 浏览并选择 Stock_workload.json文件。
  5. 在欢迎页面上选择新添加的 Stock_workload.json笔记本以运行它。
图 8. Zeppelin 上的盘中股票工作负载教程

启动示例的股票工作负载 JSON 文件之前,可以使用 Interpreter选项卡并依据您的系统配置来优化 Spark 属性。

要优化 Spark 解释器设置:

  1. 单击 Interpreter选项卡。
  2. 单击 edit(参见图 9)。
  3. 更改各个值,在您的系统中最大限度利用 Spark 属性,具体来讲考虑:
    • spark.cores.max:将该值保留为空,以使用所有可用的处理器。
    • Spark.executor.memory:最低 16 GB。
    • Zeppelin.spark.maxResults:(默认为 1000)最低为 40,000,以获得不错的结果。
  4. 保存更改。
  5. 从 Notebook 下拉列表选择 Stock_workload 笔记本,返回到该笔记本。

备注:建议遵守以下 经验规则

示例:配备了 8 个核心、64 GB 内存且 SMT 设置为 4,基于 IBM POWER8 处理器的 C812L-S 型 SoftLayer 裸机服务器,满足以下条件时获得了最佳的结果:

  • spark.cores.max设置为 24。
    (8 – 2) * 4 = 24
  • Spark.executormemory设置为 100 GB。
  • Zeppelin.spark.maxResults设置为 16000000。

例如,配备有 10 个核心、512 GB 内存,基于 IBM POWER8 处理器的 C812L-L 型 SoftLayer 裸机服务器,在满足以下条件时获得了最佳结果:

  • spark.cores.max设置为 64
  • Spark.executor.memory设置为 100 GB
  • Zeppelin.spark.maxResults设置为 16000000
图 9. 最大限度利用 POWER8 C812L-S 配置的 Spark 解释器设置示例

备注:启动示例 Stock_workload JSON 文件并单击 Run all paragraphs(参见图 6),第一次将报告 Data Ingestion 下的所有工作负载都失败了。该脚本似乎加载数据和启动实际工作负载的时机太早了。后续运行将报告 数据获取失败。这是一个已知的问题:造成失败的原因是 stockprices.csv 数据已复制到 /user/zeppelin/ 目录中。您可以删除 stockprices.csv 或忽略该错误。

您可以在类似的 x86 环境上尝试相同的 Zeppelin 工作负载,亲自看看基于 POWER8 处理器的 Linux on Power 服务器在运行 Spark 方面带来的优势。

参考资料

  • IBM developerWorks 中国 linux 专区:为使用 linux 的开发人员准备的技术信息和资料。这里提供产品下载、how-to 信息、支持资源以及免费技术库,包含 2000 多份技术文章、教程、最佳实践、IBM Redbook 和在线产品手册。
  • 加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Linux
ArticleID=1035772
ArticleTitle=IBM SoftLayer OpenPOWER with Ubuntu 14.04 上的 Apache Bigtop v1.1 快速入门指南
publish-date=08092016