Hadoop伪分布式安装

一、Hadoop简介

  1. Hadoop:一个分布式系统基础架构,适合大数据的分布式存储与计算平台。两个核心项目:HDFS、MapReduce
  2. HDFS:分布式文件系统,主要解决分布式的存储问题。
  3. MapReduce:并行计算框架,主要解决分布式的计算问题。
  4. Hadoop的特点:高可靠、高扩展、高性能、高容错、低成本
  5. Hadoop架构:

    在MapReduce中一个准备提交的应用程序成为作业(job),从一个作业划分出的、运行于各计算节点的工作单位成为任务(task);

    Hadoop提供的分布式文件系统(HDFS)主要负责各个节点上的数据存储,实现高吞吐率的数据读写。

    Hadoop使用Master/Slave架构。

    1. 以HDFS角度看(一个文件会被分割成若干个默认64M的block):

      主节点(只有一个): namenode。接受用户数据、维护文件系统的目录结构、管理文件与block和block与       datanode之间的关系。

      从节点(若干个): datanode。存储block,为保证数据安全会有备份。

    2. 以MapReduce角度看:主节点(只有一个): JobTracker。接受客户提交的服务任务、将任务分配给TaskTracker执行、监控TaskTracker执行情况。

从节点(有很多个); TaskTracker。执行JobTracker分配的计算任务。

  二、伪分布式部署Hadoop

  1. 安装虚拟机(网络设置为host-only)
  2. 设置静态IP(使宿主机与虚拟机位于同一网段)
  3. 修改主机名、绑定主机名与IP
    1. 修改主机名:配置文件位于/etc/sysconfig/network
    2. 绑定主机与IP:配置文件位于/etc/hosts
    3. 重启
  4. 关闭防火墙及自动启动
    1. 查看防火墙状态:service iptables status
    2. 关闭防火墙:service iptables stop
    3. 查看防火墙运行级别:chkconfig | grep iptables
    4. 关闭防火墙自动启动:chkconfig iptables off
  5. 配置SSH免密码登陆
    1. 以rsa加密算法产生密钥:ssh-keygen -t rsa(产生的密码位于~/.shh)
    2. 拷贝id_rsa.pub:cp id_rsa.pub authorized_keys
    3. 验证(免密码登陆本机):ssh locahost
  6. 安装JDK
    1. 复制JDK到安装目录(我选择安装到/usr/local/jdk。注意与JDK环境变量,Hadoop配置中的设置保持一致)
    2. 对JDK安装文件添加执行权限:chmod u+x jdk…..bin
    3. 解压缩:./jdk…..bin
    4. 重命名安装目录:mv jdk…… jdk
    5. 添加环境变量:配置文件位于/etc/profile
      1. export JAVA_HOME=/usr/local/jdk
      2. export PATH=.:$JAVA_HOME/bin:$PATH
    6. 更改立即生效:source /etc/profile
    7. 验证:java -version
  7. 安装Hadoop
    1. 复制hadoop安装包到安装目录
    2. 解压hadoop安装包:tar -zxvf hadoop…..tar.gz
    3. 重命名安装目录:mv hadoop….. hadoop
    4. 添加环境变量:配置文件位于/etc/profile
      1. export HADOOP_HOME=/usr/local/hadoop
      2. export PATH=.:$HADOOP_HOME/bin:$……..(JDK环境变量)
  8. 修改Hadoop配置文件
    1. 配置文件位于:$HADOOP_HOME/config目录下
    2. hadoop-env.sh(第九行去掉注释,改为):export JAVA_HOME=/usr/local/jdk/
    3. core-site.xml(配置内容见文末)
    4. hdfs-site.xml(配置内容见文末)
    5. mapred-site.xml(配置内容见文末)
  9. 格式化namenode、启动Hadoop
    1. 格式化:hadoop namenode -format
    2. 启动hadoop:start-all.sh
    3. 验证查看JAVA进程:jps(应显示6个进程)
    4. 访问:http://hadoop:50070
    5. 访问:http://hadoop:50030

安装几点说明:

  1. 关闭windows下防火墙,避免网络访问的错误
  2. 登陆linux时以root身份登陆,避免权限问题
  3. 每一步设置完成后应及时验证,避免问题
  4. JDK,HADOOP环境变量的配置中与自己安装路径保持一致
  5. 配置文件内的主机名与自己的主机名保持一致
  6. 禁止多次格式化namenode。若已经重复格式化,清空$HADOOP_HOME/tmp文件夹

HADOOP的配置文件内容如下:

core-site.xml(注意与自己的主机名保持一致)

hdfs-site.xml

mapred-site.xml(注意与自己的主机名保持一致)

文章摘自:http://my.oschina.net/u/1470003/blog/208651