shi260114607

大数据概念:指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

按照数据存储单位:bit、byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB

Hadoop是一个apache基金会所开发的分布式系统基础架构,主要解决海量数据的存储和海量数据的分析计算问题

广义上来书,hadoop通常是指一个更广泛的概念--hadoop生态圈

 

hadoop2.x组成:MapReduce(计算)+Yarm(资源调度)+HDFS(数据存储)+Common(辅助工具)

HDFS架构概述:

1、NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间,副本数,文件权限),以及每个文件的块列表和块所在的DataNode等(数据索引)

2、DataNode(dn):在本地文件系统存储文件块数据,以及块数据的校验和(数据本身)

3、Secondary NameNode(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照。

 

YARN

1、resourceManager(调度集群资源)

    (1)处理客户请求

    (2)监控NodeManager

    (3)启动或监控ApplicationMaster

    (4)资源的分配与调度

2、NodeManager(NM)主要作用

   (1)管理单个节点上的资源

    (2)处理来自resourceManager的命令

    (3)处理来自ApplicationMaster的命令

3、ApplicationMaster(AM)作用如下

    (1)负责数据的切分

    (2)为应用程序申请资源并分配给内部的任务

    (3)任务的监控与容错

4、Container

    Container是YARN中的资源抽象,它封装了某个节点上的对维度资源,如内存、CPU、磁盘、网络等

 

MapReduce将计算过程分为两个阶段:map和reduce

1、map阶段并行处理输入数据

2、reduce阶段对map结果进行汇总

 

虚拟机准备:

硬盘50G   内存4G    cpu 6*2  2*2

/boot  200m

/swap 2G

/全部

虚拟机准备

1、防火墙关闭

           service iptables  stop    //服务关闭

          chkconfig iptables off     //关闭开机自启

2、创建一个一般用户atguigu

         useradd atguigu

         passwd atguigu

3、在/opt目录下创建software module 文件夹

     mkdir  /opt/software/      /opt/module

    chown  atguigu:atguigu  /opt/software     /opt/module

4、把这个用户加到sudoers

     vim /etc/sudoers

     atguigu ALL=(ALL)   NOPASSWD:ALL

    :wq! 强制保存

5、改hosts

    vim /etc/hosts

    在文件后追加

192.168.1.100  hadoop100

192.168.1.101  hadoop101

192.168.1.102  hadoop102

192.168.1.103  hadoop103

192.168.1.104  hadoop104

192.168.1.105  hadoop105

 

6、改静态ip

   vim   /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

BOOTPROTO=static

IPADDR=192.168.1.100

PREFIX=24

GATEWAY=192.168.1.2

DNS1=192.168.1.2

NAME=eth0

7、改主机名

    vim   /etc/sysconfig /network

    改HOSTNAME字段

   改成HOSTNAME=hadoop100

拍快照

8、改网卡脚本文件

   vim /etc/udev/rules.d/70-persistent-net.rules

    第一行删掉

    第二行

    最后 NAME="eth1" 改成 NAME="eth0"

 

9、scp(secure copy)安全拷贝

     a、scp定义:scp可以实现服务器与服务器之间的数据拷贝

     b、基本语法:scp    -r      $pdir/$fname                   $user@hadoop$host:$pdir/$fname

                          命令   递归    要拷贝的文件路径/名称   目的用户@主机:目的路径/名称

     c、案例实操:在hadoop001上,将hadoop101中的 /opt/module目录下的软件拷贝到hadoop002上:

      命令:scp    -r     /opt/module  root@hadoop102:/opt/module

 

10、rsync远程同步工具:主要用于备份和镜像,具有速度快、避免复制相同内容和支持符号链接的有点。

rsync和scp区别:用rsync做文件的复制要比scp的速度快,rsync只对差异文件做更新。scp是把所有文件都复制过去。

   a、基本语法

  rsync        -rvl           $pdir/$fname                     $user@hadoop$host:$pdir/$fname

 命令          选项参数  要拷贝的文件路径/名称     目的用户@主机:目的路径/名称

选项参数:-r    递归

                  -v    显示复制过程

                  -l     拷贝符合链接

  b、案例:把hadoop001机器上的/opt/software 目录同步到hadoop002服务器的root用户下的/opt/目录

rsync -rvl /opt/software/  root@hadoop002;/opt/software

 

 11、xsync集群分发脚本

    a、需求:循环复制文件到所有节点的相同目录下

    b、

安装java和hadoop环境,配置环境变量

 /etc文件配置文件

/sbin存放hadoop启动停止命令

 

Hadoop运行模式包括:本地模式、伪分布式模式以及完全分布式模式

官网:http://hadoop.apache.org/

官方Grep案例:1、在hadoop-2.7.2文件下面创建一个input文件夹:mkdir input

                          2、将hadoop的xml配置文件复制到input下:cp  etc/hadoop/*.xml input

                          3、执行share目录下的MapReduce程序:bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.2.jar grep input output  \'dfs[a-z.]+\'

                          4、查看输出结果:cat output/*

官方wordcount案例:1、在hadoop-2.7.2文件下面创建一个wcinput文件夹:mkdir wcinput

                                   2、在winput文件下创建一个wc.input文件:cd wcinput

                                                                                                        touch wc.input

                                   3、编辑wc.input文件:vi wc.input

                                         在文件中输入如下内容:hadoop yarm

                                                                                 hadoop mapreduce

                                                                                 atguigu

                                                                                 atguig              

                                            保存退出::wq

 

配置集群:

1、集群部署规划:

                              hadoop001             hadoop002               hadoop003

           HDFS         NameNode               DataNode                SecondaryNameNode

                              DataNode                                                 DataNode

            YARN        NodeManager        ResourceManager      NodeManager

                                                            NodeManager

 

2、配置集群

    a、核心配置文件

        配置core-site.xml

       

 

 

注意:格式化NameNode,会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到以往数据。所以,格式NameNode时,一定要先删除data数据和log日志,然后再格式化NameNode

 

 

 

分类:

技术点:

相关文章: