Linux 搭建Hadoop集群 ----workcount案例
在
Linux搭建集群---JDK配置
Linux搭建集群---SSH免密登陆
Linux搭建集群---集群搭建成功
的基础上实现workcount案例
注意
虚拟机三台启动集群(自己亲自搭建)
1. wordcount程序
1.1Hadoop集群测试WordCount程序
1.1.1 在hadoop目录下创建一个wordcount文件夹

1.1.2切换到wordcount文件夹,新增两个文件,并且编辑内容

文件内容如下:


文件内容如下:

1.1.3在HDFS中创建input文件夹

1.1.4查看HDFS中的文件夹

1.1.5 将创建的两个文件复制到/input目录中

1.1.6查看input文件夹下内容

1.1.7 运行wordcount程序
切换到hadoop安装目录下share/hadoop/mapreduce目录下,hadoop自带运行wordcount程序的jar包


使用jar命令运行wordcount程序,input代表计算文件位置,output代表计算结果指定位置

1.1.8查看运行结果
hadoop fs -cat /output/*

1.2 eclipse集成hadoop插件
1.2.1 如果eclipse安装到windows当中,那么就需要在真机安装Hadoop
配置hadoop环境变量(将hadoop-2.8.0用管理员用户解压)



查看JDK 和Hadoop的版本号(不用管理员的身份)

1.2.2 下载hadoop-eclipse-plugin-2.6.0.jar赋值到eclipse安装目录下的plugins目录下

1.2.3配置hadoop安装目录


1.2.4配置插件





注意:主机名称亦可以换成ip地址,但是真机hosts文件要配置对应关系


1.3 eclipse运行wordcount程序
1.3.1新建一个mapreduce程序


1.3.2创建WordCount运行程序
在真机安装的hadoop下找到hadoop-mapreduce-examples-2.8.0-sources.jar,目录为..../hadoop-2.8.0\share\hadoop\mapreduce\sources

以解压包方式打开,找到WordCount.java,目录为:
hadoop-mapreduce-examples-2.8.0-sources.jar\org\apache\hadoop\examples
右键打开方式---360压缩


1.3.3运行WordCount程序
点击WordCount.java文件,配置启动参数

报错:

其中配置参数中master可以改为ip地址,如果配置成master那么需要在真机hosts文件当中配置master和ip的对应关系!
参考网址:
https://blog.csdn.net/Biexiansheng/article/details/78019642?tdsourcetag=s_pcqq_aiomsg
如下操作:

添加以下信息:

第一种错误信息:

此错误可能在hadoop安装目录下缺少文件,将次压缩包的所有文件复制到hadoop安装目录下的bin

第二个错误
hadoop-2.8.0\share\hadoop\common\sources文件夹中找到hadoop-common-2.8.0-sources.jar,然后以压缩包的方式打开,找到hadoop-common-2.8.0-sources\org\apache\hadoop\io\nativeio\NativeIO.java,复制到项目中,注意,包名和报错的包名保持一致,org.apache.hadoop.io.nativeio


打开代码:
将

改为:

错误2:
org.apache.hadoop.security.AccessControlException: Permissiondenied: user=zhengcy, access=WRITE,inode="/user/root/output":root:supergroup:drwxr-xr-x
在集群中运行hadoop fs -chmod 777 /
运行结果如下所示:

1.4将WordCount程序打成jar包放在集群中运行
1.4.1将程序打包
点击项目-->右键-->选择Export-->找到Runnable JAR File


点击Finish,将打包好的Jar包通过XFTP传入到Linux指定位置(/usr/bigdata/hadoop)

在XShell中切换到Jar文件存放位置路径,通过命令运行查看 切入到wordcount.jar 架包所存放的位置 执行以下命令


Linux 搭建Hadoop集群 ----workcount案例的更多相关文章
- Linux 搭建Hadoop集群 成功
内容基于(自己的真是操作步骤编写) Linux 搭建Hadoop集群---Jdk配置 Linux 搭建Hadoop集群 ---SSH免密登陆 一:下载安装 Hadoop 1.1:下载指定的Hadoop ...
- Linux 搭建Hadoop集群错误锦集
一.Hadoop集群配置好后,执行start-dfs.sh后报错,一堆permission denied zf sbin $ ./start-dfs.sh Starting namenodes on ...
- Linux搭建Hadoop集群---Jdk配置
三台虚拟机:master slave1 slave2 192.168.77.99 master 192.168.77.88 slave1 192.168.77.77 slave2 1.修改主机名: ...
- Linux下搭建Hadoop集群
本文地址: 1.前言 本文描述的是如何使用3台Hadoop节点搭建一个集群.本文中,使用的是三个Ubuntu虚拟机,并没有使用三台物理机.在使用物理机搭建Hadoop集群的时候,也可以参考本文.首先这 ...
- 使用Windows Azure的VM安装和配置CDH搭建Hadoop集群
本文主要内容是使用Windows Azure的VIRTUAL MACHINES和NETWORKS服务安装CDH (Cloudera Distribution Including Apache Hado ...
- 搭建Hadoop集群 (三)
通过 搭建Hadoop集群 (二), 我们已经可以顺利运行自带的wordcount程序. 下面学习如何创建自己的Java应用, 放到Hadoop集群上运行, 并且可以通过debug来调试. 有多少种D ...
- 搭建Hadoop集群 (一)
上面讲了如何搭建Hadoop的Standalone和Pseudo-Distributed Mode(搭建单节点Hadoop应用环境), 现在我们来搭建一个Fully-Distributed Mode的 ...
- 在搭建Hadoop集群环境时遇到的一些问题
最近在学习搭建hadoop集群环境,在搭建的过程中遇到很多问题,在这里做一些记录.1. SSH相关的问题 问题一: ssh: connect to host localhost port 22: Co ...
- virtualbox 虚拟3台虚拟机搭建hadoop集群
用了这么久的hadoop,只会使用streaming接口跑任务,各种调优还不熟练,自定义inputformat , outputformat, partitioner 还不会写,于是干脆从头开始,自己 ...
随机推荐
- SpringMVC 图片上传,检查图片大小
使用SpringMVC+Spring 前端提交图片文件到Controller,检查上传图片大小是否符合要求 直接上代码了 1.校验图片大小 这里提供出验证的方法,用于在需要校验的地方调用 /** * ...
- Spring Boot IoC 容器初始化过程
1. 加载 ApplicationContextInializer & ApplicationListener 2. 初始化环境 ConfigurableEnvironment & 加 ...
- VKD224B触摸芯片调试笔记
1.通过阅读datasheet了解芯片怎么使用,一般datasheet会提供参考电路.和相应的电气参数. 通过上面的表格可以知道芯片的供电,所需电流. 这个芯片可以通过引脚选择模式.通过上面的选项设置 ...
- 基于Docker的GoldenGate部署
前言 Docker最近几年异常火爆,主要是因为其方便.快捷.轻量,相对于VM,它不需要占用太多资源,随时可以创建.删除,或在已有image上添加一些软件,再制作成另一个模板image供日后使用.Doc ...
- 剑指offer(30)连续子数组和的最大值
题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学.今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决.但是,如果向量 ...
- 剑指offer(51)构建乘积数组
题目描述 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1].不 ...
- JS求任意字符串中出现最多的字符以及出现的次数
我爱撸码,撸码使我感到快乐!大家好,我是Counter本节讲讲如何利用JS来查找任意给定的字符串,求字符串中出现次数最多的字符,出现的次数.直接上代码了,该注释的都注释啦.非常轻松加愉快.效果如下: ...
- Java正则中为什么反斜线"\"需要用“\\\\”表示,原因详解。
首先,我们需要知道在java字符串和正则表达式中,“\”都具有特殊的含义. 一.在Java的字符串中"\"有两个功能 (一)代表特殊字符:\t代表制表符,\n代表换行....等. ...
- Code Pages
https://docs.microsoft.com/en-us/windows/desktop/intl/code-pages Most applications written today han ...
- 【2.0】使用默认日志slf4j配置
一.SpringBoot日志简介 SpringBoot使用Commons Logging进行所有内部日志记录,但底层日志实现保持开放状态.为Java Util Logging,Log4j2和Logba ...