搭建hdfs的一个全分布的一个特性federation联盟

hdfs中有几个高级特性:

(1)回收站

(2)快照

(3)配额:名称配额(N-1)和空间配额

(4)安全模式

(5)权限

(6)联盟

其中联盟是hdfs的一个很重要的一个高级特性,它的俩个重要的作用就是:

(一)扩展nameNode,增加元信息的缓冲

(二)实现负载均衡

但是还是存在单点故障的问题,因为不同的nameNode缓冲的是不同的元信息,所以它扩展了nameNode并不是为了高可用而是为了扩展内存用的

接下来就是搭建nameNode:

准备四台虚拟机bigdata112、bigdata113、bigdata114、bigdata115

配置四台虚拟机环境变量:同全分布环境变量一样

验证准备工作:安装JDK、同步时间、免密码登录、防火墙、主机名

防火墙只是在测试机上停用即可

我们只需在一个机器上安装部署好hadoop,其他的机器拷贝就可以了,所以我们只需在bigdata112上先配置好

在bigdata112上搭建
            hadoop-env.sh
                export JAVA_HOME=/root/training/jdk1.8.0_181
                
            core-site.xml
                <property>
                    <name>hadoop.tmp.dir</name>
                    <value>/root/training/hadoop-3.1.2/tmp</value>
                </property>
        
            hdfs-site.xml
                <property>
                    <name>dfs.replication</name>
                    <value>2</value>
                </property>

                <property>
                    <name>dfs.permissions</name>
                    <value>false</value>
                </property>        

                <!--有两个NameNode-->
                <property>
                    <name>dfs.nameservices</name>
                    <value>ns1,ns2</value>
                </property>    
            
                <!--第一个NameNode-->
                <property>
                    <name>dfs.namenode.rpc-address.ns1</name>
                    <value>192.168.112.112:9000</value>
                </property>    

                <property>
                    <name>dfs.namenode.http-address.ns1</name>
                    <value>192.168.112.112:50070</value>
                </property>    

                <property>
                    <name>dfs.namenode.secondaryhttp-address.ns1</name>
                    <value>192.168.112.112:50090</value>
                </property>        

                <!--第二个NameNode-->
                <property>
                    <name>dfs.namenode.rpc-address.ns2</name>
                    <value>192.168.112.113:9000</value>
                </property>    

                <property>
                    <name>dfs.namenode.http-address.ns2</name>
                    <value>192.168.112.113:50070</value>
                </property>    

                <property>
                    <name>dfs.namenode.secondaryhttp-address.ns2</name>
                    <value>192.168.112.113:50090</value>
                </property>    

            mapred-site.xml
                <property>
                    <name>mapreduce.framework.name</name>
                    <value>yarn</value>
                </property>    
                
            yarn-site.xml
                <property>
                    <name>yarn.resourcemanager.hostname</name>
                    <value>bigdata112</value>
                </property>    

                <property>
                    <name>yarn.nodemanager.aux-services</name>
                    <value>mapreduce_shuffle</value>
                </property>

            workers
                bigdata114
                bigdata115
            
            修改core-site.xml文件,直接加入以下内容:
                <property>
                    <name>fs.viewfs.mounttable.xdl1.homedir</name>
                    <value>/home</value>
                </property>

                <property>
                    <name>fs.viewfs.mounttable.xdl1.link./movie</name>
                    <value>hdfs://192.168.112.112:9000/movie</value>
                </property>

                <property>
                    <name>fs.viewfs.mounttable.xdl1.link./mp3</name>
                    <value>hdfs://192.168.112.113:9000/mp3</value>
                </property>

                <property>
                    <name>fs.default.name</name>
                    <value>viewfs://xdl1</value>
                </property>
            这里的注意一点就是xdl1可以任意指定,但是上边的配置和下面fs.default.name指定的值必须一样,下面的是用来格式化

            nameNode用的
            把112上的hadoop复制到其他节点
                scp -r hadoop-3.1.2/ root@bigdata113:/root/training
                scp -r hadoop-3.1.2/ root@bigdata114:/root/training
                scp -r hadoop-3.1.2/ root@bigdata115:/root/training
                
            在112和113上对NameNode分别进行格式化:注意ID号  还有记得一定要格式话操作,不然启动不了nameNode
                hdfs namenode -format -clusterId xdl1
            
            在112上启动,注意这里只能在112上启动不能再113上启动,因为我试过了在113上启动启动不了yarn平台
                start-all.sh
                
            根据路由规则在对应NameNode上创建目录,在112和113上都可执行,使用hadoop fs和hdfs dfs都可以
                hadoop fs -mkdir hdfs://192.168.157.112:9000/movie
                hadoop fs -mkdir hdfs://192.168.157.113:9000/mp3
            
            操作联盟:注意这里看到的是路由规则,不是目录。即我执行hdfs dfs -ls /  看到的是路由规则不是文件目录
                [root@bigdata112 training]# hdfs dfs -ls /
                Found 2 items
                -r-xr-xr-x   - root root          0 2020-03-25 00:36 /movie
                -r-xr-xr-x   - root root          0 2020-03-25 00:36 /mp3

        

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

枣泥馅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值