Hadoop

Hadoop学习笔记

Posted by owl city on December 1, 2015
  • Create Date: 2019-12-03
  • Update Date: 2019-12-03

上层URL: 大数据学习笔记

Hadoop安装与部署

这里先介绍本地模式的安装与使用

本地模式安装

  1. 配置Java
  2. 官网下载hadoop的压缩包,然后在相应目录下解压缩: tar -xzvf ...
  3. 修改配置文件
    • hadoop-env.sh里加上JAVA_HOME

    • core-site.xml

    ```html

    fs.defaultFS hdfs://127.0.0.1:50070 io.file.buffer.size 131072 hadoop.tmp.dir file:/Users/cody/temp hadoop.proxyuser.root.hosts * hadoop.proxyuser.root.groups *

</configuration> ```

- `hdfs-site.xml`
```html
<configuration>
<!--    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>localhost:9001</value>
    </property> -->
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/Users/cody/mydata/hadoop/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/Users/cody/mydata/hadoop/dfs/data</value>
    </property>
    <property>
         <name>dfs.replication</name>
         <value>1</value>
    </property>
    <property>
         <name>dfs.webhdfs.enabled</name>
         <value>true</value>
    </property>
    <property>
         <name>dfs.permissions</name>
         <value>false</value>
     </property>
     <property>
         <name>dfs.web.ugi</name>
         <value>supergroup</value>
     </property>

</configuration> - `mapred-site.xml` xml mapreduce.framework.name yarn mapreduce.jobhistory.address localhost:10020 mapreduce.jobhistory.webapp.address localhost:19888 ```

- `yarn-site.xml`
```xml
<configuration>
    <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
    </property>
    <property>
            <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
            <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>
    <property>
            <name>yarn.resourcemanager.address</name>
            <value>localhost:8032</value>
    </property>
    <property>
            <name>yarn.resourcemanager.scheduler.address</name>
            <value>localhost:8030</value>
    </property>
    <property>
            <name>yarn.resourcemanager.resource-tracker.address</name>
            <value>localhost:8031</value>
    </property>
    <property>
            <name>yarn.resourcemanager.admin.address</name>
            <value>localhost:8033</value>
    </property>
    <property>
            <name>yarn.resourcemanager.webapp.address</name>
            <value>localhost:8088</value>
    </property>

</configuration>

``` > 添加这几个配置就可以初步使用hadoop了
  1. 配置完成后,格式化主节点的namenode,载入hadoop目录 hadoop namenode -format 或者hdfs namenode -format,出现successful说明成功,失败的话说明配置文件存在问题.

  2. 执行start-all.sh,启动完成后使用jps查看任务是否正常启动,包含:namenode,datanode,secondarynamenode,nodemanager,resourcemanager

  3. 如不全的话大部分原因都是配置文件的问题,检查一下或者google一下

  4. 接下来可以使用webserver查看hadoop的应用和hdfs的情况

    注意,在登录hdfs的web UI时,使用50070不行的话,可以使用9870,在3.0版本的hdfs访问端口发生了改变

Hadoop操作

HDFS操作

  • 查看文件列表 hadoop fs -ls /
  • 创建文件目录 hadoop fs -mkdir /tmp
  • 删除文件 hadoop fs -rm /tmp/data , 删除目录 hadoop fs -rmr /tmp
  • 上传文件 hadoop fs -put ... /tmp/...
  • 下载文件 hadoop fs -get /tmp/... ...