• Hadoop学习记录(1)|伪分布安装


    本文转载自向着梦想奋斗博客

    Hadoop是什么?

    适合大数据的分布式存储于计算平台

    不适用小规模数据

    作者:Doug Cutting

    受Google三篇论文的启发

    Hadoop核心项目

    HDFS(Hadoop Distrubuted File System) 分布式文件系统

    MapReduce 并行计算框架

    版本

    Apache

    官方版本

    Cloudera

    使用下载最多的版本,稳定,有商业支持,在Apache的基础上打上了一些补丁(Patch)。推荐使用。

    Yahoo

    Yahoo内部使用的版本,发不过两次,已有的版本放到Apache上,后续不在继承发布,而是继承在Apache的版本上。

    Intel、IBM、微软等等。。。

    HDFS架构

    主从结构

    主节点,只有一个namenode

    从节点,有很多歌datanode

    namenode负责:

    接收用户操作的请求

    维护文件系统的目录结构

    管理文件与block之间关系,block与datanode的关系

    datanode负责:

    存储文件

    文件被分成block存储在磁盘上

    为了保证数据安全,文件会有多个副本

    MapReduce架构

    主从结构

    主节点:只有一个JobTracker

    从节点:有很多歌TaskTrackers

    JobTracker负责

    接收客户提交的计算任务

    把计算任务分给TaskTrackers执行

    监控TaskTrackers的执行情况

    TaskTrackers负责

    执行JobTracker分配的计算任务

    Hadoop的特点

    扩容能力,可以存储PB级别数据

    成本低,可以用普通组装服务器做集群

    高效率,可以分发数据并行处理

    可靠性,自动维护多个副本,任务使用可以自动部署计算任务

    Hadoop集群的物理分布

    image_thumb

    单点结构图

    image_thumb1

    Hadoop部署方式

    本地模式(不使用)

    伪分布模式(实验学习使用,模拟集群模式)

    集群模式(生产环境使用)

    安装前软件准备

    虚拟机(VitualBox/Vmware/Xen)

    操作系统(Centos/RedHat..)

    Jdk

    Hadoop安装包

    Hadoop伪分布安装步骤

    1、关闭防火墙

    chkconfig iptables off 关闭开机启动

    service iptables stop 关闭运行的防火墙

    2、修改ip

    vi /etc/sysconfig/network-script/ifcfg-eth0

    3、修改hostname

    vi /etc/sysconfig/network

    修改hostname

    4、设置ssh密钥登陆

    ssh-keygen -t rsa

    cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

    5、安装jdk

    chmod 755 jdk* 设置执行权限

    ./ jdk-6u24-linux-i586.bin 解压

    cp -rf jdk1.6.0_24/ /usr/local/jdk 拷贝目录指定目录,可以自己指定

    vi /etc/profile 设置环境变量

    添加export JAVA_HOME=/usr/local/jdk

    export PATH=.:$JAVA_HOME/bin:$PATH

    source /etc/profile 立即生效

    验证

    java –version

    出现以下内容表示成功

    java version "1.6.0_24"

    Java(TM) SE Runtime Environment (build 1.6.0_24-b07)

    Java HotSpot(TM) Client VM (build 19.1-b02, mixed mode)

    6、安装hadoop
    解压

    tar -zxvf hadoop-1.1.2.tar.gz -C /usr/src/

    [root@h1 soft]# cd /usr/src/

    [root@h1 src]# cp -rf hadoop-1.1.2/ /usr/local/hadoop

    修改环境变量

    vi /etc/profile

    添加

    export JAVA_HOME=/usr/local/jdk

    export HADOOP_HOME=/usr/local/hadoop

    export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH

    source /etc/profile 立即生效

    修改配置文件

    修改hadoop-env.sh

    添加jdk环境变量配置

    export JAVA_HOME=/usr/local/jdk

    修改core-site.xml

    <configuration>

    设置默认名称和端口号

    <property>

    <name>fs.default.name</name>

    <value>hdfs://h1:9000</value>

    </property>

    设置临时目录存储位置,一般放在单独磁盘目录

    <property>

    <name>hadoop.tmp.dir</name>

    <value>/usr/local/hadoop/tmp</value>

    </property>

    </configuration>

    修改hdfs-site.xml

    <configuration>

    副本数量

    <property>

    <name>dfs.replication</name>

    <value>1</value>

    </property>

    关闭权限验证

    <property>

    <name>dfs.permissions</name>

    <value>false</value>

    </property>

    </configuration>

    修改mapred-site.xml

    <configuration>

    <!-- setting mapreduce name and port -->

    <property>

    <name>mapred.job.track</name>

    <value>h1:9001</value>

    </property>

    </configuration>

    格式化文件系统

    hadoop namenode -format

    启动

    start-all.sh

    验证

    [root@h1 conf]# jps

    6366 TaskTracker

    5844 NameNode

    6466 Jps

    6135 SecondaryNameNode

    6223 JobTracker

    5989 DataNode

    http://h1:55070/访问namenode监控首页

    http://h1:50030/访问mapreduce监控首页

    本文转载自向着梦想奋斗博客

  • 相关阅读:
    Java字符串(String类)
    Java异常处理
    Scanner使用方法
    OOP之重载
    构造函数和析构函数
    类、对象、方法
    函数
    数组
    ahk之路:利用ahk在window7下实现窗口置顶
    指针的问题
  • 原文地址:https://www.cnblogs.com/luguoyuanf/p/3593622.html
Copyright © 2020-2023  润新知