Hadoop 发行版的选择
大数据应用, Hadoop 仅仅是一个基础, 要用起来还需要安装很多组件, 比如Hive, Mahout, Sqoop, ZooKeeper 等等, 不得不需要考虑各个软件间兼容性问题: 版本是否兼容,组件是否有冲突,编译能否通过等, 一大堆事情. 真正要在企业中要用Hadoop, 一般不推荐直接使用apache hadoop, 使用第三方发行包最稳定/最省事了.
第三方发行商, 有 Cloudera, Hortonworks, MapR, Cloudera 用户数最多, 另外 Hadoop之父目前也供职于Cloudera, 选它基本上没错.
我推荐: Cloudera 发行版
CDH 和 Cloudera Manager 是什么
CDH (Cloudera's Distribution, including Apache Hadoop), 是Cloudera发行的Hadoop发行版, 基于Hadoop稳定版, 并集成了许多补丁, 可以直接在生产环境中使用.
Cloudera Manager 是 Cloudera 推出的大数据解决方案, 已经在安装/配置/监控方面做了大量的工作.它不仅包含CDH, 而且集成了很多常用的组件, 比如 HBASE, Hue, Impala, Kudu, Oozie, Kafka, Sentry, Solr, Spark, YARN, ZooKeeper 等, 它分为两个版本Cloudera Express 和 Cloudera Enterprise .
Cloudera Express免费使用, Cloudera Enterprise 需要支付费用. Express版本最高支持50个节点, 而且不限制用到生产环境, Enterprise版包含一些非常高级的功能以及官方支持, 对于普通用户来讲, Express就足够了. http://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_feature_differences.html
我推荐: Cloudera Express版
Cloudera 产品下载和安装
考虑到网速和墙的因素, 建议离线的方式安装, 即 Manual Installation Using Cloudera Manager Tarballs安装方式.
几个参考文章:
离线安装Cloudera Manager 5和CDH5(最新版5.1.3) 完全教程
Cloudera Manager 5 和 CDH5 本地(离线)安装指南
CDH5 集群中 Spark 集群模式的安装过程配置过程
使用虚拟机搭建体验大数据环境
使用VM是最快的体验环境搭建方式了, Cloudera 提供 QuickStart VM, 我们还有另一个选择, 即 Oracle Big Data Lite VM.
VirtualBox 以及 extension pack下载
Cloudera quickstart VM 下载页面 或直接下载链接
Oracle Big data lite VM下载页面:
quickstart VM 配置教程
Cloudera quickstart VM 下载介质较小, 不到5GB, Oracle Big data lite VM大多了, 要30GB. 我推荐 Cloudera quickstart VM. Cloudera quickstart VM中的几个Accounts,
OS:
username: cloudera ,password: cloudera
username: root ,password: cloudera
MySQL:
username: root ,password: cloudera
username: other accounts ,password: cloudera
Hue and Cloudera Manager等服务:
username: cloudera ,password: cloudera
在Oracle VM中, 最重要的东西有:
- Oracle Enterprise Linux 6.7, 基本上可以等同于CentOS 6.7
- Oracle Database 12.1, 包括一些大数据方面的增强
- CDH 5.4.7, 挺新的
- Cloudera Manager 5.4.7
Oracle VM 推荐的最低配置:
- Host OS 必须是64 bit
- 分配 2 core
- 最少 4 GB 内存
- 初始分配50GB硬盘空间, 需打开自动扩展
VirtualBox 配置
在 GuestOS 中安装增强功能, 步骤:
- 点击 VirtualBox 软件的菜单 "设备"/"安装增强功能", VirtualBox将会自动为GuestOS Linux分配一个光驱, 并且将VirtualBox程序目录的VBoxGuestAdditions.iso挂接到该光驱上.
- 在GuestOS Linux 中, 执行如下命令, mount光驱并安装增强软件包.
mkdir /mnt/cdrom #
mount /dev/cdrom /mnt/cdrom
cd /mnt/cdrom
./VBoxLinuxAdditions.run #确定没有failed
VirtualBox虚拟机的网络设置的注意事项:
- VirtualBox虚拟机网络默认采用NAT(网络地址转换模式)模式, 在该模式下, 虚拟机可以通过主机来连接上internet网络, 非常简单, 我也一直使用这种模式.
- 虚拟机和主机关系:
只能单向访问, 虚拟机可以通过网络访问到主机, 主机无法通过网络访问到虚拟机. - 虚拟机和网络其他主机的关系:
只能单向访问, 虚拟机访问到网络上的其他主机, 但这些主机无法访问到虚拟机. - 虚拟机和虚拟机的关系:
互相不能访问 - NAT模式下, 主机有没有办法访问虚拟机?
办法是有的, 通过端口转发即可, 其实quickstart VM已经给我们将VM上常用的大数据服务端口作了映射.比如 VM hue 端口 8888, 映射到host的同一端口上了.
为了防止guest OS和host OS的ssh 22端口冲突, 我将VM的22端口映射到2022, 将VM的Oracle 1521端口映射成主机的2521端口.
安装python环境
hdfs client: 我推荐使用 snakebite 这个pure python 版hdfs client 目前还不支持python 3. https://github.com/spotify/snakebite
Anaconda, 因为snakebite 的缘故, 我还是使用 Anaconda Python2.7版本