hadoop (三) 安装Eclipse插件、机架感知、文件整理

安装EclipseX 插件

在eclipse中安装hadoop插件,方便查看dfs文件系统:
1. 下载hadoop2x-eclipse-plugin.zip文件
2. 解压hadoop2x-eclipse-plugin.zip/release/*.jar到${eclipse的安装路径}/plugins下
3. 重启eclipse
4. 验证hadoop插件是否安装成功:
    preferences-->Hadoop/MapReduce-->选择hadoop解压文件目录下
    New Hadoop Location --> location name : s100  --> Host : s100 --> MapReduce Port: 50020  --> DFS Port: 8020 

机架感知

网络拓扑:

节点距离:两个节点到达最近的公共路由跃点数。
同一节点上的两个进程                    :  0 
同一机架上的两个节点的两个进程           :  4 
不同机架上的两个不同节点的两个进程       :  6

自定义机架感知:

1. 创建MyDNSToSwitchMapping类实现DNSToSwitchMapping接口
2. 将该类文件生成jar文件,拷贝到{/soft/hadoop/share/hadoop/common/lib/}下(即hadoop的安装路径下),并且进行集群分发。
3. 配置[core-site.xml]文件,并且进行分发。
    <property>
      <name>net.topology.node.switch.mapping.impl</name>
      <value>com.li.dns.MyDNSToSwitchMapping</value>
      <description> The default implementation of the DNSToSwitchMapping. It
        invokes a script specified in net.topology.script.file.name to resolve
        node names. If the value for net.topology.script.file.name is not set, the
        default value of DEFAULT_RACK is returned for all node names.
      </description>
    </property>

克隆一个主机:

1. 克隆一个新节点 
2. 启动新节点
3. 修改新节点的ip和hostname
    [/etc/hostname]
        s107
    [/etc/network/interfaces]
        address 192.16.10.100

4. 修改主机s100的/etc/hosts文件,并进行分发
    [/etc/hosts]
        s107 192.16.10.100
5. 在主机s100上连接s107:
6. 修改xsync和xcall脚本文件
7. 修改s100的slaves文件并进行分发
    [/soft/hadoop/etc/hadoop/slaves]:
        s101
        s102
        s103
        s104
        s105
        s106
        s107
8. 删除hadoop文件系统文件夹,并且删除hadoop的日志文件,(不需要进行格式化,如进程有问题时再进行格式化)重启hadoop集群。

s100:$> cd ~/hadoop/dfs/name1/current/
    $> hdfs oiv -p XML -i  fsimage_0000000000000000069  -o ~/fimage.xml
[fimage.xml]:

s100:$> cd ~/hadoop/dfs/name1/current/
    $> hdfs oev -p XML -i edits_0000000000000000001-0000000000000000011 -o ~/fsedit.xml
[fsedit.xml]:

9. namenode:
    存放元素(名称,副本数,节点块信息,权限) ,不包含数据节点
    每当启动集群时,数据节点会向namenode节点发送本节点的副本数、块信息、等信息,保证通过namenode可以访问到数据

文件整理

hadoop集群启动时首先进入安全模式:

当集群是处于安全模式时,不能执行重要操作(读写操作)
集群启动完成后,自动退出安全模式。
1. 安全模式操作:
    $>hdfs dfsadmin -safemode get      // 查看安全模式状态
    $>hdfs dfsadmin -safemode enter    // 进入安全模式状态
    $>hdfs dfsadmin -safemode leave    // 离开安全模式状态 
    $>hdfs dfsadmin -safemode wait     // 等待安全模式状态
2. 以等待状态为例,
    当集群处于安全状态时,用户对集群进行操作,这时的用户操作会进入等待状态。当集群退出安全模式时,该操作会被自动执行。
    通过脚本实现:     
    [autoexe.sh]:
        #!/bin/bash
        hdfs dfsadmin -safemode wait  # 进入等待状态
        hdfs dfs -put ~/hello.txt /user/ubuntu/data/  # 执行用户操作

    更改该文件的执行权限:
    $> sudo chmod 777 autoexe.sh   # rwx权限
    $> ./autoexe.sh   # 执行该脚本

保存名字空间/镜像融合和编辑日志

1. 进入安全模式
    $> hdfs dfsadmin -safemode enter
2. 进行保存
    $> hdfs dfsadmin -saveNamespace

3. 退出安全模式
    $> hdfs dfsadmin -safemode leave
[实例]:
    ~/hadoop/dfs/name1/current$> ls  # 查看镜像文件
        fsimage_0000000000000000140
        fsimage_0000000000000000140.md5
        fsimage_0000000000000000143
        fsimage_0000000000000000143.md5
    $> hdfs dfs -put ~/hello.txt /user/ubuntu/data/  # 创建文件
    $> hdfs dfsadmin -safemode enter
    ~/hadoop/dfs/name1/current$> ls
        fsimage_0000000000000000143
        fsimage_0000000000000000143.md5
        fsimage_0000000000000000151
        fsimage_0000000000000000151.md5

归档文件

1. 启动yarn进程
    $> start-yarn.sh
2. 文件归档
    # 将文件归档成一个叫做xxx.har的文件夹,该文件夹下有相应的数据文件。xxx.har文件是一个整体,将该目录看成是一个目录。
    $> hadoop archive -archveName myhar.har -p /uuser/ubuntu/data  /user/ubuntu/my
    # 查看归档文件
    $> hdfs dfs -lsr har://user/ubuntu/my/myhar.har
    # 解归档t
    $> hadoop dfs -cp har://user/ubuntu/my/myhar.har   /user/ubuntu/data
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值