Hadoop搭建

Hadoop项目

  • zookeeper 集群管理, 配置
  • Flume 数据收集
  • HDFS 分布式文件系统
  • Hive SQL 引擎
  • MapReduce 分布式计算. MR2.0(YARN)=资源配置, 任务管理
  • HBase K-V存储

    部署的模块

    namenode: 整个HDFS的命名空间管理

    管理文件系统的命名和集群中的文件. 同时有一个secondary namenode, 它不仅是冗余进程, 还提供了周期检查点和清理任务. 每个Hadoop集群中可以找到一个namenode和一个secondary namenode
    在参考文档[1]进行安装的时候(failover通过nfs…这儿也是个单点), nfs会遇到卡死的情况, 这是因为nfs服务器还没有启动, 而nfs客户端对nfs进行了mount. 解决:只需要在客户端umount -lf */your/local/dir*, 然后确定nfs服务端启动之后客户端再重新mount. 需要注意的是, 文档1的脚本回自动把挂载添加到/etc/rc.local, 机器重启的可能也会遇到上边提到的这种情况. 另外一点, nfs遇到最多的情况就是目录的写权限, 否则namenode的安装/启动会失败.

    datanode: HDFS的数据节点

    管理节点的存储(一个集群中可以有多个节点), 每个存储数据的节点运行一个datanode守护进程

    jobtracker: 并行计算的job管理

    每个集群有一个 jobtracker负责调度datanode上的工作. 每个datanode有一个tasktracker(并行计算的job执行服务)执行实际工作. jobtracker和tasktracker采用主-从形式, jobtracker跨datanode分发工作, 而 tasktracker 执行任务. jobtracker还检查请求的工作, 如果一个datanode由于某种原因失败, jobtracker会重新调度以前的任务

    hbase-master

    Hbase的管理服务

    hbase-regionServer

    对Client端插入, 删除, 查询数据等提供服务

    zookeeper-server

    Zookeeper协作与配置管理服务
    初始化的脚本, sudo service zookeeper-server init --myid=1 --force
    可以用echo stat | nc dn2.hadoop 2181查看运行情况

    hive-server

    Hive的管理服务

    hive-metastore

    Hive的元存储, 用于对元数据进行类型检查与语法分析

参考文档

[1] Hadoop(CDH4发行版)集群部署
[2] Hadoop集群实践
[3] 用Hadoop进行分布式数据处理