本篇文章为大家展示了Linux系统中怎么搭建Hadoop,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
hadoop是大数据集群中一个开发分布式程序Hadoop实现了一个分布式文件系统( Distributed File System),其中一个组件是HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。
安装ssh服务
进入shell命令,输入如下命令,查看是否已经安装好ssh服务,若没有,则使用如下命令进行安装:
sudo apt-get install ssh openssh-server
安装过程还是比较轻松加愉快的。
使用ssh进行无密码验证登录**
创建ssh-key,这里我们采用rsa方式,使用如下命令:
ssh-keygen -t rsa -P “”
出现一个图形,出现的图形就是密码,不用管它
cat ~/.ssh/id_rsa.pub >> authorized_keys(好像是可以省略的)
然后即可无密码验证登录了,如下:
ssh localhost
成功截图如下:
下载Hadoop安装包**
下载Hadoop安装也有两种方式
直接上官网进行下载,http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gz
使用shell进行下载,命令如下:
wget http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-2.7.1.tar.gz
貌似第二种的方法要快点,经过漫长的等待,终于下载完成。
解压缩Hadoop安装包**
使用如下命令解压缩Hadoop安装包
tar -zxvf hadoop-2.7.1.tar.gz
解压缩完成后出现hadoop2.7.1的文件夹
配置Hadoop中相应的文件**
需要配置的文件如下,hadoop-env.sh,core-site.xml,mapred-site.xml.template,hdfs-site.xml,所有的文件均位于hadoop2.7.1/etc/hadoop下面,具体需要的配置如下:
core-site.xml 配置如下:
其中的hadoop.tmp.dir的路径可以根据自己的习惯进行设置。
mapred-site.xml.template配置如下:
hdfs-site.xml配置如下:
其中dfs.namenode.name.dir和dfs.datanode.data.dir的路径可以自由设置,最好在hadoop.tmp.dir的目录下面。
补充,如果运行Hadoop的时候发现找不到jdk,可以直接将jdk的路径放置在hadoop.env.sh里面,具体如下:
export JAVA_HOME=”/home/leesf/program/java/jdk1.8.0_60″
运行Hadoop**
在配置完成后,运行hadoop。
初始化HDFS系统
在hadop2.7.1目录下使用如下命令:
bin/hdfs namenode -format
截图如下:
过程需要进行ssh验证,之前已经登录了,所以初始化过程之间键入y即可。
成功的截图如下:
表示已经初始化完成。
开启NameNode和DataNode守护进程
使用如下命令开启:
sbin/start-dfs.sh,成功的截图如下:
查看进程信息
使用如下命令查看进程信息
jps,截图如下:
表示数据DataNode和NameNode都已经开启
查看Web UI
在浏览器中输入http://localhost:50070,即可查看相关信息,截图如下:
至此,hadoop的环境就已经搭建好了。下面开始使用hadoop来运行一个WordCount例子。
运行WordCount Demo**
在本地新建一个文件,笔者在home/leesf目录下新建了一个words文档,里面的内容可以随便填写。
在HDFS中新建一个文件夹,用于上传本地的words文档,在hadoop2.7.1目录下输入如下命令:
bin/hdfs dfs -mkdir /test,表示在hdfs的根目录下建立了一个test目录
使用如下命令可以查看HDFS根目录下的目录结构
bin/hdfs dfs -ls /
具体截图如下:
表示在HDFS的根目录下已经建立了一个test目录
将本地words文档上传到test目录中
使用如下命令进行上传操作:
bin/hdfs dfs -put /home/leesf/words /test/
使用如下命令进行查看
bin/hdfs dfs -ls /test/
结果截图如下:
表示已经将本地的words文档上传到了test目录下了。
运行wordcount
使用如下命令运行wordcount:
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /test/words /test/out
截图如下:
运行完成后,在/test目录下生成名为out的文件,使用如下命令查看/test目录下的文件
bin/hdfs dfs -ls /test
截图如下:
表示在test目录下已经有了一个名为Out的文件目录
输入如下命令查看out目录下的文件:
bin/hdfs dfs -ls /test/out,结果截图如下:
表示已经成功运行了,结果保存在part-r-00000中。
查看运行结果
使用如下命令查看运行结果:
bin/hadoop fs -cat /test/out/part-r-00000
结果截图如下:
至此,运行过程就已经完成了。
Hadoop是一个能够对大量数据进行分布式处理的软件框架。 Hadoop 以一种可靠、高效、可伸缩的方式进行数据处理
上述内容就是Linux系统中怎么搭建Hadoop,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。