《Spark与Hadoop大数据分析》一一2.4 安装 Hadoop 和 Spark 集群

简介:

本节书摘来自华章计算机《Spark与Hadoop大数据分析》一书中的第2章,第2.4节,作者:文卡特·安卡姆(Venkat Ankam) 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

2.4 安装 Hadoop 和 Spark 集群

在安装 Hadoop和Spark之前,让我们来了解一下 Hadoop和Spark的版本。在 Cloudera、Hortonworks和MapR这所有三种流行的Hadoop发行版中,Spark都是作为服务提供的。在本书编写的时候,最新的Hadoop和Spark版本分别是2.7.2和2.0。但是,Hadoop发行版里可能是一个较低版本的Spark,这是因为Hadoop和 Spark 的发行周期并不同步。
对于后续章节的实践练习,我们会使用来自 Cloudera、Hortonworks 和 MapR 的免费虚拟机(virtual machine,VM),或使用开源版本的 Apache Spark。这些 VM 让我们很容易开始使用 Spark 和 Hadoop。同样的练习也可以在较大的集群上运行。
在笔记本电脑上使用虚拟机的先决条件如下:
8 GB 或以上内存
至少 2 个虚拟 CPU
Windows 或 Linux 操作系统必须安装了最新的 VMWare Player 或 Oracle VirtualBox
Mac需要最新的 Oracle VirtualBox 或 VMWare Fusion
在 BIOS 中启用虚拟化
建议使用 Chrome 25+、IE 9+、Safari 6+ 或 Firefox 18+(HDP Sandbox 不会在 IE 10 上运行)
Putty
WinSCP
下载并运行 Cloudera Hadoop 发行版(Cloudera Distribution for Hadoop,CDH)的说明如下:
(1)从http://www.cloudera.com/content/www/en-us/downloads.html下载最新的 quickstart CDH VM。请根据笔记本电脑上安装的虚拟化软件(VirtualBox 或 VMWare)来下载相应的版本。
(2)将其解压缩到一个目录下(使用 7-Zip 或 WinZip)。
(3)在使用 VMWare Player 的情况下,单击Open a Virtual Machine,并指向你已经解压缩了虚拟机的目录。选择 cloudera-quickstart-vm-5.x.x-x-vmware.vmx 文件,然后单击 Open。
(4)单击Edit virtual machine settings,然后把内存增加到 7 GB(如果你的笔记本电脑有 8 GB 内存)或 8 GB(如果您的笔记本电脑有超过 8 GB 内存)。将处理器数量增加到 4 个。单击 OK。
(5)单击Play virtual machine。
(6)选择I copied it,然后单击 OK。
(7)这样,你的虚拟机就会启动并运行了。
(8)Cloudera Manager 安装在虚拟机上,但默认情况下处于关闭状态。如果要使用 Cloudera Manager,请双击并运行 Launch Cloudera Manager Express以设置 Cloudera Manager。它在启动/停止/重新启动集群上服务的过程中是有帮助的。
(9)虚拟机的登录凭据是用户名(cloudera)和密码(cloudera)。
如果你要使用 Cloudera Quickstart 的 Docker 镜像,可以参照 http://blog.cloudera.com/blog/2015/12/docker-is-the-new-quickstart-option-for-apache-hadoop-and-cloudera 上的说明。
下载和运行 Hortonworks 数据平台(Hortonworks Data Platform,HDP)Sandbox 的说明如下:
(1)从http://hortonworks.com/products/hortonworks-sandbox/#install下载最新版本的 HDP Sandbox。请根据笔记本电脑上安装的虚拟化软件(VirtualBox 或 VMWare)下载相应的版本。
(2)按照同一个下载页面上的安装指南中的说明进行操作。
(3)打开浏览器并输入 sandbox 中显示的地址,如 http://192.168.139.158/ 。单击View Advanced Options以查看所有链接。
(4)使用 putty 作为root用户,hadoop作为初始密码来访问 sandbox。你需要在首次登录时更改密码。此外,可以运行ambari-admin-password-reset命令重置Ambari的管理员密码。
(5)要开始使用 Ambari,请打开浏览器并输入 ipaddressofsandbox:8080,并使用上一步创建的管理凭据。启动 Ambari 所需的服务。
(6)要将主机名映射到 Windows 中的 IP 地址,请转到 C:WindowsSystem32driversetchosts,然后输入 IP 地址和主机名,中间用空格分隔符隔开。你需要管理员权限才能执行此操作。
下载和运行 MapR Sandbox 的说明如下:
(1)从https://www.mapr.com/products/mapr-sandbox-hadoop/download下载最新的 sandbox。请根据笔记本电脑上安装的虚拟化软件(VirtualBox 或 VMWare)下载相应的版本。
(2)按照 http://doc.mapr.com/display/MapR/MapR+Sandbox+for+Hadoop上的说明设置 sandbox。
(3)使用 Putty 登录到 sandbox。
(4)root 用户的密码是 mapr。
(5)要启动 HUE 或 MapR 控制系统(MapR Control System,MCS),请导航到 MapR Sandbox 提供的 URL。
(6)要将主机名映射到 Windows 中的 IP 地址,请转到 C:WindowsSystem32driversetchosts,然后输入 IP 地址和主机名,中间用空格分隔符隔开。
下面给出了下载和运行 Apache Spark 预制二进制文件的说明,以便在你预先安装了 Hadoop 集群的情况下使用。以下说明还可用于安装最新版本的 Spark,并在之前的虚拟机上使用它:
(1)从以下位置下载为 Hadoop 预制的 Spark:

(2)把 SPARK_HOME 和 PATH 变量添加到配置文件脚本,如以下命令所示,这样每次登录时这些环境变量就都设置好了:

(3)通过向 spark-env.sh 添加以下环境变量,让 Spark 了解 Hadoop 配置目录和 Java home。请复制 conf 目录中的模板文件:

(4)将 hive-site.xml 复制到 Spark 的 conf 目录:

(5)在复制模板文件后,将 spark-2.0.0-bin-hadoop2.7/conf/log4j.properties 文件中的日志级别(log level)更改为 ERROR。
运行 Spark 要求的编程语言版本:
Java: 7+
Python: 2.6+/3.1+
R: 3.1+
Scala: Spark 1.6 用 2.10 以下版本的 Scala,Spark 2.0 用 2.11 以上版本的 Scala
请注意,前面的虚拟机是单节点集群。如果你计划设置多节点集群,请按照各个发型版(例如 CDH、HDP 或 MapR)给出的指导原则。如果你计划使用 Standalone 集群管理器,下一章会介绍它的设置。

相关文章
|
8月前
|
人工智能 分布式计算 大数据
大数据≠大样本:基于Spark的特征降维实战(提升10倍训练效率)
本文探讨了大数据场景下降维的核心问题与解决方案,重点分析了“维度灾难”对模型性能的影响及特征冗余的陷阱。通过数学证明与实际案例,揭示高维空间中样本稀疏性问题,并提出基于Spark的分布式降维技术选型与优化策略。文章详细展示了PCA在亿级用户画像中的应用,包括数据准备、核心实现与效果评估,同时深入探讨了协方差矩阵计算与特征值分解的并行优化方法。此外,还介绍了动态维度调整、非线性特征处理及降维与其他AI技术的协同效应,为生产环境提供了最佳实践指南。最终总结出降维的本质与工程实践原则,展望未来发展方向。
415 0
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
1038 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
11月前
|
存储 分布式计算 Hadoop
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
从“笨重大象”到“敏捷火花”:Hadoop与Spark的大数据技术进化之路
564 79
|
9月前
|
分布式计算 Hadoop Java
CentOS中构建高可用Hadoop 3集群
这个过程像是在一个未知的森林中探索。但当你抵达终点,看到那个熟悉的Hadoop管理界面时,所有的艰辛都会化为乌有。仔细观察,尽全力,这就是构建高可用Hadoop 3集群的挑战之旅。
347 21
|
存储 分布式计算 大数据
Flume+Hadoop:打造你的大数据处理流水线
本文介绍了如何使用Apache Flume采集日志数据并上传至Hadoop分布式文件系统(HDFS)。Flume是一个高可用、可靠的分布式系统,适用于大规模日志数据的采集和传输。文章详细描述了Flume的安装、配置及启动过程,并通过具体示例展示了如何将本地日志数据实时传输到HDFS中。同时,还提供了验证步骤,确保数据成功上传。最后,补充说明了使用文件模式作为channel以避免数据丢失的方法。
753 4
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
614 2
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第26天】本文详细探讨了Hadoop与Spark在大数据处理中的协同作用,通过具体案例展示了两者的最佳实践。Hadoop的HDFS和MapReduce负责数据存储和预处理,确保高可靠性和容错性;Spark则凭借其高性能和丰富的API,进行深度分析和机器学习,实现高效的批处理和实时处理。
517 1
|
5月前
|
机器学习/深度学习 传感器 分布式计算
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
数据才是真救命的:聊聊如何用大数据提升灾难预警的精准度
377 14
|
7月前
|
数据采集 分布式计算 DataWorks
ODPS在某公共数据项目上的实践
本项目基于公共数据定义及ODPS与DataWorks技术,构建一体化智能化数据平台,涵盖数据目录、归集、治理、共享与开放六大目标。通过十大子系统实现全流程管理,强化数据安全与流通,提升业务效率与决策能力,助力数字化改革。
239 4
|
6月前
|
机器学习/深度学习 运维 监控
运维不怕事多,就怕没数据——用大数据喂饱你的运维策略
运维不怕事多,就怕没数据——用大数据喂饱你的运维策略
293 0