HDFS联盟



一、搭建HDFS联盟的环境
1、规划:
NameNode:  bigdata12   bigdata13
DataNode:  bigdata14   bigdata15

2、准备环境:
(*)清除之前的配置
(*)安装JDK、修改/etc/hosts文件、关闭防火墙、免密码登录

3、在bigdata12上安装
core-site.xml
<!--HDFS数据保存的目录,默认是Linux的tmp目录-->
<property>
  <name>hadoop.tmp.dir</name>
  <value>/root/training/hadoop-2.7.3/tmp/</value>
</property>

mapred-site.xml
<!--MR程序运行的容器是Yarn-->
<property>
  <name>mapreduce.framework.name</name>
  <value>yarn</value>
</property>

yarn-site.xml
<!--ResourceManager的地址-->
<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>192.168.157.12</value>
</property>

<!--NodeManager运行MR任务的方式-->
<property>
  <name>yarn.nodemanager.aux-services</name>
  <value>mapreduce_shuffle</value>
</property>

hdfs-site.xml
<!--数据块的冗余度,默认是3-->
<property>
  <name>dfs.replication</name>
  <value>2</value>
</property>

<!--是否开启HDFS的权限检查,默认:true-->
<property>
  <name>dfs.permissions</name>
  <value>false</value>
</property>

<property>
  <name>dfs.nameservices</name>
  <value>ns1,ns2</value>
</property>

<property>
  <name>dfs.namenode.rpc-address.ns1</name>
  <value>192.168.157.12:9000</value>
</property>

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

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

<property>
  <name>dfs.namenode.rpc-address.ns2</name>
  <value>192.168.157.13:9000</value>
</property>

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

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

在core-site.xml中,增加路由规则: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.157.12:9000/movie</value>
</property>

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

<property>
<name>fs.default.name</name>
<value>viewfs://xdl1</value>
</property>

注意:如果路由规则太多,造成core-site.xml不好维护
这时,单独创建一个路由规则的文件:mountTable.xml ---> 加入到 ---> core-site.xml
参考:http://hadoop.apache.org/docs/r2.7.3/hadoop-project-dist/hadoop-hdfs/ViewFs.html
4、修改slaves
     bigdata14
bigdata15

5、复制到其他的节点上
scp -r hadoop-2.7.3/ root@bigdata13:/root/training
scp -r hadoop-2.7.3/ root@bigdata14:/root/training
scp -r hadoop-2.7.3/ root@bigdata15:/root/training

6、在每个NameNode(bigdata12  bigdata13)上进行格式化:
hdfs namenode -format -clusterId xdl1



7、启动
8、根据路由规则在对应的NameNode上创建相应的目录
   hadoop fs -mkdir  hdfs://192.168.157.12:9000/movie
   hadoop fs -mkdir  hdfs://192.168.157.13:9000/mp3
  
  
   注意:
[root@bigdata12 hadoop]# hdfs dfs -ls /
Found 2 items
-r-xr-xr-x   - root root          0 2018-01-10 03:19 /movie
-r-xr-xr-x   - root root          0 2018-01-10 03:19 /mp3

二、第二阶段课程小结
1、HBase
(*)NoSQL数据库:HBase、Redis(前身:MemCached)、MongoDB、Cassandra
(*)HBase体系结构和表结构
(1)ZooKeeper、HMaster、RegionServer(s)
(2)行键、列族
(3)运行一个cell(单元格)存在多个值:versions
(*)操作:命令行、Java、Web Console
(*)保存数据的过程:region的分裂
(*)HBase的过滤器:Filter
(*)HBase上的MapReduce

2、Hive
(*)数据分析的引擎
(*)基于HDFS之上的数据仓库,类似MySQL
(*)支持SQL是SQL 99的一个子集
(*)从Hive 2.x后,推荐使用Spark作为Hive的引擎
     https://cwiki.apache.org/confluence/display/Hive/Hive+on+Spark%3A+Getting+Started

(*)数据模型:内部表、分区表(执行计划)、桶表、外部表、视图
(*)Hive的自定义函数:就是Java程序,继承UDF类

3、Pig
(*)数据分析的引擎: 支持PigLatin
(*)从0.17开始,支持Spark
(*)Pig数据模型:表(bag)、行(tuple)、列(field)
(*)PigLatin语句:load generate filter foreach ****
   注意:需要启动historyserver
(*)Pig的自定义函数:运算函数、过滤函数、加载函数

4、Sqoop
(*) 采集数据: RDMBS
(*) 基于JDBC
(*) 命令:import export query ****

5、Flume
(*) 采集数据: 日志
(*) 体系结构:source、 channel、sink  =  agnent

6、HUE: 基于Web的管理工具

7、ZooKeeper: 相当于是”数据库“
(*) 体系结构:leader、follower(s)
(*) 功能:选举功能
          数据同步的功能
  实现分布式锁:秒杀功能

8、Hadoop的HA
(*) 体系结构

9、HDFS的联盟
(*) 体系结构





















猜你喜欢

转载自jin8000608172.iteye.com/blog/2422651