zoukankan      html  css  js  c++  java
  • hdfs基本使用

    基本命令

    /usr/local/hadoop/bin/hadoop fs -ls /
    
    /usr/local/hadoop/bin/hadoop fs -mkdir /test           # 创建目录
    /usr/local/hadoop/bin/hadoop fs -touchz  /test.txt           # 创建文本
    
    /usr/local/hadoop/bin/hadoop fs -put localfile  /test           # 上传文件
    /usr/local/hadoop/bin/hadoop fs -get /test           # 下载文件

    统计词频

    # 创建文件夹
    /usr/local/hadoop/bin/hadoop fs -mkdir /input
    
    
    # 上传要分析的文件
    /usr/local/hadoop/bin/hadoop fs -put *.txt /input 
    
    # 提交分析作业
    /usr/local/hadoop/bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount /input /output
    
    # 查看结果
    /usr/local/hadoop/bin/hadoop fs -cat /output/*

    增加节点

    --启动新系统,禁用selinux  firewall

    --设置SSH免密登陆

    --在所有节点修改/etc/hosts,增加新节点的主机信息

    ansible all -m shell -a 'echo "192.168.1.15 new" >> /etc/hosts'

    --安装java运行环境

     yum -y install java-1.8.0-openjdk-devel

    --拷贝NameNode的/usr/local/hadoop

    [root@nn01 hadoop]# rsync -aSH --delete /usr/local/hadoop new:/usr/local/

    --修改NameNode的slaves文件增加该节点

    --在该节点启动DataNode

    /usr/local/hadoop/sbin/hadoop-daemon.sh start datanode

    --设置同步带宽并同步数据

    /usr/local/hadoop/bin/hdfs dfsadmin -setBalancerBandwidth 60000000
    /usr/local/hadoop/sbin/start-balancer.sh

    --查看集群状态

    /usr/local/hadoop/bin/hdfs dfsadmin -report

    修复节点,与增加节点基本一致,新节点的ip和主机名要与损坏节点的一致

      启动服务/usr/local/hadoop/sbin/hadoop-daemon.sh start datanode

      数据恢复是自动的

    删除节点

    配置NameNode的/usr/local/hadoop/etc/hadoop/hdfs-site.xml,增加以下配置

            <property>
                    <name>dfs.hosts.exclude</name>
                    <value>/usr/local/hadoop/etc/hadoop/exclude</value>
            </property>

    增加exclude配置文件NameNode的/usr/local/hadoop/etc/hadoop/exclude,写入要删除的节点主机名

    修改配置文件/usr/local/hadoop/etc/hadoop/slaves, 去掉要删除的节点主机名

    导出数据

    /usr/local/hadoop/bin/hdfs dfsadmin -refreshNodes
    
    /usr/local/hadoop/bin/hdfs dfsadmin -report   # 删除的节点处于Decommissioned状态

    停止datanode

    /usr/local/hadoop/sbin/hadoop-daemon.sh stop datanode      

    yarn节点管理  

    # 增加节点
    /usr/local/hadoop/sbin/yarn-daemon.sh start nodemanager
    # 删除节点
    /usr/local/hadoop/sbin/yarn-daemon.sh stop nodemanager
    # 查看节点
    /usr/local/hadoop/bin/yarn node -list

    NFS网关

    停止集群

    /usr/local/hadoop/sbin/stop-all.sh

    在nameNode和nfsgw上添加用户

    [root@nn01 hadoop]# groupadd -g 800 nfsuser 
    [root@nn01 hadoop]# useradd -g 800 -u 800 nfsuser

    hdfs授权,配置/usr/local/hadoop/etc/hadoop/core-site.xml,并同步配置至所有node节点

            <property>
                    <name>hadoop.proxyuser.nfsuser.groups</name>
                    <value>*</value>                
            </property>
            <property>
                    <name>hadoop.proxyuser.nfsuser.hosts</name>
                    <value>*</value>                
            </property>



    # 同步

     rsync -aSH --delete /usr/local/hadoop/etc node1:/usr/local/hadoop/

    启动服务

    /usr/local/hadoop/sbin/start-dfs.sh

    配置NFSGW

    --启动新系统,禁用selinux、firewall

    --卸载rpcbind、nfs-utils

    --配置/etc/hosts,添加所有的NameNode和DataNode的主机名与ip对应关系

    --安装java运行环境

     yum -y install java-1.8.0-openjdk-devel

    --同步NameNode的/usr/local/hadoop到本机

    [root@nfsgw ~]# rsync -aSH --delete nn01:/usr/local/hadoop /usr/local/

    --配置/usr/local/hadoop/etc/hadoop/hdfs-site.xml

            <property>
                    <name>nfs.exports.allowed.hosts</name>
                    <value>* rw</value>
            </property>
            <property>
                    <name>nfs.dump.dir</name>
                    <value>/var/nfstmp</value>
            </property>

    --启动与挂载

      ***先rpcbind,再启动nfs3

       ***启动rpcbind服务必须使用root用户

      ***启动nfs3服务必须使用nfsuser用户

      ***nfsuser对/var/nfstmp、/usr/local/hadoop/logs有读写权

    [root@nfsgw hadoop]# chown nfsuser.nfsuser /var/nfstmp
    [root@nfsgw hadoop]# setfacl -m nfsuser:rwx logs/
    /usr/local/hadoop/sbin/hadoop-daemon.sh --script ./bin/hdfs start portmap
    
    
    [root@nfsgw hadoop]# su - nfsuser
    /usr/local/hadoop/sbin/hadoop-daemon.sh --script ./bin/hdfs start nfs3

    --客户端挂载

    # 安装nfs
     yum -y install nfs-utils
    
    # 挂载
    mount -t nfs -o proto=tcp,nolock,noatime,sync 192.168.1.25:/ /mnt/
  • 相关阅读:
    HZNU 2019 Summer training 6
    HZNU 2019 Summer training 5
    HZNU 2019 Summer training 4
    Garlands CodeForces
    HZNU 2019 Summer training 3
    UVA
    HZNU 2019 Summer training 2
    Serge and Dining Room(线段树)
    HZNU 2019 Summer training 1
    【7-10 PAT】树的遍历
  • 原文地址:https://www.cnblogs.com/ray-mmss/p/10457648.html
Copyright © 2011-2022 走看看