集群hadoop2.7.5运行wordcount实例

本文介绍如何使用Hadoop进行WordCount实例操作,包括文件创建、上传至集群、运行WordCount程序及结果验证等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

cd
mkdir input
vim input/test.txt

随便输入点内容

hello hadoop
how are you
fine thank you

这里写图片描述

hadoop fs -mkdir -p /user/hadoop/input      #fs方式创建文件夹
hadoop fs -put ./input/test.txt input/      #把本地test.txt传到集群
hadoop fs -ls input/                        #查看input目录结构
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount  input out    #运行wordcount

这里写图片描述

hadoop fs -ls /user/hadoop/out              #查看结果,跟本地结果一致
hadoop fs -cat /user/hadoop/out/part-r-00000

这里写图片描述

hadoop fs -get /user/hadoop/out/part-r-00000 ./  #通过get命令,把文件下载到本地
ll      #查看本地文件信息
### CentOS 7 上搭建 Hadoop 集群的教程 #### 准备工作 在开始部署前,需准备三台运行 CentOS 7 的服务器,并确保每台服务器能够通过 SSH 进行无密码登录。以下是具体的 IP 地址分配[^4]: - **hadoop1**: `192.168.223.200` (NameNode 和 Secondary NameNode) - **hadoop2**: `192.168.223.201` (DataNode) - **hadoop3**: `192.168.223.202` (DataNode) 修改网络配置文件 `/etc/sysconfig/network-scripts/ifcfg-ens33` 来设置静态 IP。 --- #### 安装 Java 环境 Hadoop 基于 Java 开发,因此需要先安装 JDK 并配置环境变量。 ```bash sudo yum install java-1.8.0-openjdk-devel -y export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk echo 'export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk' >> ~/.bashrc source ~/.bashrc ``` 验证 Java 是否成功安装并生效: ```bash java -version ``` --- #### 下载并解压 Hadoop 软件包 下载 Apache Hadoop 并将其解压缩至指定路径。假设版本为 `hadoop-2.7.5`[^2]。 ```bash wget https://archive.apache.org/dist/hadoop/common/hadoop-2.7.5/hadoop-2.7.5.tar.gz tar -zxvf hadoop-2.7.5.tar.gz -C /opt/ cd /opt/hadoop-2.7.5 ``` 将 Hadoop 添加到系统的 PATH 中以便全局调用: ```bash echo 'export PATH=$PATH:/opt/hadoop-2.7.5/bin:/opt/hadoop-2.7.5/sbin' >> ~/.bashrc source ~/.bashrc ``` --- #### 配置免密 SSH 登录 为了简化节点间的通信,在所有节点之间配置基于公钥的身份认证。 ```bash ssh-keygen -t rsa cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys ``` 测试是否可以无需输入密码即可访问其他节点: ```bash ssh hadoop2 ssh hadoop3 ``` 如果无法正常连接,请检查防火墙状态或关闭它: ```bash systemctl stop firewalld systemctl disable firewalld ``` --- #### 配置 Hadoop 文件 编辑核心配置文件以适配集群需求: ##### 1. `core-site.xml` 定义默认存储位置以及临时目录。 ```xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop1:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/data/hadoop/tmp</value> </property> </configuration> ``` ##### 2. `hdfs-site.xml` 设定副本数量和名称节点的数据存储路径。 ```xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:///data/hadoop/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:///data/hadoop/datanode</value> </property> </configuration> ``` ##### 3. `mapred-site.xml` 启用 YARN 支持 MapReduce 计算框架。 ```xml <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration> ``` ##### 4. `yarn-site.xml` 配置 ResourceManager 和 NodeManager 参数。 ```xml <configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>hadoop1</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> </configuration> ``` ##### 5. 更新主机名映射 编辑 `/etc/hosts` 文件来绑定各节点的域名与 IP 地址关系。 ```plaintext 192.168.223.200 hadoop1 192.168.223.201 hadoop2 192.168.223.202 hadoop3 ``` --- #### 初始化 HDFS 文件系统 在主节点(即 Namenode)上执行以下命令完成分布式文件系统的格式化操作[^1][^3]。 ```bash hdfs namenode -format ``` --- #### 同步配置文件到 DataNodes 利用 SCP 工具复制已调整完毕的 Hadoop 设置给其余成员节点。 ```bash scp -r /opt/hadoop-2.7.5/ hadoop2:/opt/ scp -r /opt/hadoop-2.7.5/ hadoop3:/opt/ ``` --- #### 启动 Hadoop 集群服务 返回到主控机(hadoop1),依次激活各个组件的服务进程。 ```bash start-dfs.sh start-yarn.sh mr-jobhistory-daemon.sh start historyserver ``` 确认所有守护线程均已上线可用: ```bash jps ``` 停止整个平台时可采用如下指令集合: ```bash stop-yarn.sh stop-dfs.sh ``` 强制终止残留实例的方法如下所示: ```bash ps -ef | grep hadoop | grep java | grep -v grep | awk '{print $2}' | xargs kill -9 sleep 2 ``` --- #### 测试集群功能 上传一份本地文档作为样本数据集存入远程仓库中加以检验其连通性和计算能力。 ```bash hdfs dfs -mkdir -p /input hdfs dfs -put /path/to/local/file.txt /input hadoop jar /opt/hadoop-2.7.5/share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar wordcount /input /output hdfs dfs -cat /output/part-r-* ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值