### Ubuntu安装Hadoop实现MapReduce里的WordCount
#### 核心知识点概述
1. **Ubuntu环境下的基础配置**:包括VMware Tools的安装、JDK的安装与配置。
2. **Hadoop的安装与配置**:包括下载与解压、环境变量配置、SSH免密码登录配置、核心配置文件的调整。
3. **实现MapReduce WordCount示例**:编写Mapper与Reducer类、提交作业并查看结果。
#### 详细知识点解析
##### 一、基础配置
**1. VMware Tools的安装**
- **背景**: 在Ubuntu虚拟机环境中,为了提高性能和实现主机与虚拟机之间的文件共享等功能,需要安装VMware Tools。
- **步骤**:
- 虚拟机启动后,选择“VM”->“Install VMware Tools...”。
- 解压tar.gz文件到任意位置,例如桌面。
- 使用命令行进行安装:
```bash
cd /path/to/vmware-tools-distrib
sudo ./vmware-install.pl
```
- 按照提示完成安装,可能需要重启虚拟机使配置生效。
**2. JDK的安装与配置**
- **背景**: Hadoop依赖于Java运行环境,因此需事先安装JDK。
- **步骤**:
- 从Oracle官网下载JDK。
- 创建目录`/usr/local/java`。
- 将JDK压缩文件解压至该目录。
- 配置环境变量,通过编辑`/etc/profile`文件添加JDK路径。
- 更新默认Java版本配置。
- 验证JDK安装是否成功,使用`java -version`命令。
##### 二、Hadoop的安装与配置
**1. Hadoop的安装**
- **背景**: Hadoop是用于分布式存储和处理大数据集的一种开源框架。
- **步骤**:
- 下载Hadoop压缩文件。
- 将文件解压至`/usr/local`目录,并重命名为`hadoop`。
- 创建Hadoop用户组和用户。
- 修改Hadoop目录的所有权为Hadoop用户。
- 安装OpenSSH Server以支持免密码SSH登录。
**2. SSH免密码登录配置**
- **背景**: 为了使Hadoop能够顺利地在多台机器之间进行通信,需要配置SSH免密码登录。
- **步骤**:
- 安装`openssh-server`。
- 生成SSH密钥对:`ssh-keygen -t rsa`。
- 将公钥添加到`.ssh/authorized_keys`文件中。
- 验证SSH配置是否正确。
**3. Hadoop配置文件调整**
- **背景**: Hadoop的核心配置文件包括`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`和`yarn-site.xml`等。
- **步骤**:
- 编辑`core-site.xml`,配置HDFS的名称节点地址。
- 编辑`hdfs-site.xml`,定义HDFS的具体参数。
- 编辑`mapred-site.xml`,配置MapReduce框架。
- 编辑`yarn-site.xml`,配置YARN资源管理器。
##### 三、实现MapReduce WordCount示例
**1. 编写Mapper与Reducer类**
- **背景**: WordCount是最经典的MapReduce示例之一,用于统计文件中每个单词出现的次数。
- **步骤**:
- 使用Java编写Mapper类,处理输入的文本行,提取单词并计数。
- 使用Java编写Reducer类,汇总来自Mapper的中间结果。
**2. 提交作业并查看结果**
- **背景**: 在完成Mapper与Reducer的编写后,需要将作业提交给Hadoop集群进行处理。
- **步骤**:
- 打包Mapper和Reducer类为jar文件。
- 使用`hadoop jar`命令提交作业。
- 查看输出目录中的结果文件。
---
通过以上步骤,可以在Ubuntu环境下成功安装Hadoop,并实现MapReduce WordCount示例。这些步骤不仅适用于初学者的学习过程记录,也为Hadoop的部署提供了详细的指南。