hadoop(一)–安装和基本使用

hadoop(一)–安装和基本使用

一、简介

1.1 hadoop特点

hadoop是apache开发的分布式系统。在分布式环境中,用于大数据量的存储和处理。

1.2 hadoop组成

hadoop主要由两部分组成,hdfs(hadoop distributed file system)分布式文件系统和MapReduce编程模型。

  • hdfs:对以往的文件系统进行了抽象,文件存放在多台机器上,但共享同一个地址空间。
  • MapReduce:一种数据处理方式,可批量处理大量数据,当然是非实时的(响应时间要根据处理的数据量大小)。

二、hadoop关键配置文件

2.1 core-site.xml

用于配置Common组件的属性

2.2 hdfs-site.xml

用于配置hdfs属性

2.3 mapred-site.xml和yarn-site.xml

用于配置MapReduce属性

2.4 hadoop-env.sh

配置hadoop运行环境,如配置jdk路径等

三、hadoop安装前准备

3.1 jdk安装

首先确保jdk已经安装,这里安装的是jdk8。

3.2 设置免密登录

通过命令ssh localhost可免密登录,若不能以ssh方式登录安装机,则需安装,步骤如下:

  1. sudo apt-get install ssh
  2. 在登录用户主目录下,输入 ssh-keygen -t rsa -P ‘’ -f .ssh/id_rsa
  3. cp .ssh/id_rsa.pub .ssh/authorized_keys
  4. 最后使用ssh localhost看是否能免密登录。

四、hadoop安装

下面以伪分布式(安装在一台机器上,模拟小规模集群)安装为例进行介绍。

4.1 下载hadoop

下载地址:http://hadoop.apache.org/releases.html ,这里使用的版本是hadoop-2.7.1,即安装包为hadoop-2.7.1.tar.gz

4.2 解压到自定义的安装目录

tar -zxvf hadoop-2.7.1.tar.gz 

4.3 进入安装目录

cd hadoop-2.7.1
# 再进入配置文件目录
cd etc/hadoop

4.4 修改hadoop-env.sh文件

指定java_home目录,添加配置如下:

export JAVA_HOME=/usr/local/java

4.5 修改core-site.xml文件

修改配置如下:

<configuration>
<!-- hdfs文件地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.0.1:9000</value>
    </property>
</configuration>

4.6 修改hdfs-site.xml文件

修改配置如下:

<configuration>
<!-- hdfs的web访问地址 -->
<property>
    <name>dfs.namenode.http-address</name>
    <value>localhost:50070</value>
</property>
<!-- 副本数 -->
<property>
  <name>dfs.replication</name>
  <value>2</value>
 </property>

<!-- hdfs文件系统元数据存储目录 -->
<property>
  <name>dfs.name.dir</name>
  <value>/home/china/big_data_dir/hadoop/name</value>
 </property>

<!-- hdfs文件系统数据存储目录 -->
<property>
  <name>dfs.data.dir</name>
  <value>/home/china/big_data_dir/hadoop/data</value>
 </property>
</configuration>

4.7 配置mapred-site.xml和yarn-site.xml文件

若配置目录下没有该文件,可从模板中复制一份,即cp mapred-site.xml.template mapred-site.xml ,

mapred-site.xml配置如下:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

yarn-site.xml配置如下:

<configuration>
    <property>
      <name>yarn.resourcemanager.hostname</name>
        <value>work.cn</value>
     </property>
     <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
     </property>
    <property>
      <name>yarn.resourcemanager.webapp.address</name>
      <value>work.cn:8088</value>
    </property>
    <property>
      <name>mapred.job.tracker</name>
      <value>192.168.0.1:9001</value>
    </property>
</configuration>

4.8 格式化hdfs文件系统

bin/hdfs namenode -format

4.9 启动

sbin/start-dfs.sh
sbin/start-yarn.sh

这时通过jsp可以查看启动的进行,有三个,如下:

21392 NameNode
21712 SecondaryNameNode
21505 DataNode

至此,hadoop安装启动完成。

五、hadoop页面查看

5.1 namenode查看

在浏览器中输入http://localhost:50070即可查看。
在页面顶部Utilities下拉框下点Browse the file system,即可查看hdfs中的文件系统。

4.2 集群其它应用(jobtracker)查看

在浏览器中输入http://localhost:8088即可查看。

六、基本操作

6.1 常规命令

hdfs文件操作(除少数命令外)和在linux的文件操作命令类似,只是在前面添加bin/hadoop fs 即可。如:

#创建文件夹
bin/hadoop fs -mkdir /test 
#查看文件内容
bin/hadoop fs -cat /
#查看文件列表
bin/hadoop fs -ls /

这里重点说文件从本地上传到hdfs文件系统和从hdfs文件系统下载到本地。

6.2 文件从本地上传到hdfs文件系统

命令如:

bin/hadoop fs -copyFromLocal ~/hadoop_space/t.txt  /test/

6.3 文件从hdfs文件系统下载到本地

命令如:

bin/hadoop fs -copyToLocal /test/t.txt ~/hadoop_space/t1.txt
发布了274 篇原创文章 · 获赞 95 · 访问量 50万+

猜你喜欢

转载自blog.csdn.net/chinabestchina/article/details/105501086