zoukankan      html  css  js  c++  java
  • Hadoop伪分布模式操作

    http://blog.csdn.net/wangloveall/article/details/20195813

    摘要:本文介绍Hadoop伪分布模式操作,适合于Hadoop学习、开发和调试。

    关键词:Hadoop    伪分布式   文件配置

    启动Hadoop支持三种模式操作,分别是单机模式操作、伪分布模式操作和全分布模式操作

    单机模式操作是Hadoop的默认操作模式,当首次解压Hadoop的源码包时,Hadoop无法了解硬件安装环境,会保守地选择最小配置,即单机模式。该模式主要用于开发调试MapReduce程序的应用逻辑,而不会和守护进程交互,避免增加额外的复杂性。

    伪分布模式操作是指在“单节点集群”上运行Hadoop,其中所有的守护进程都运行在同一台机器上。该模式在单机模式操作之上多了代码调试功能,可以查阅内存的使用情况、HDFS的输入输出以及守护进程之间的交互。

    全分布模式操作是指一种实际意义上的Hadoop集群,其规模可从几个节点的小集群到成百上千个节点的大集群,甚至是成千上万的超大集群。

    单机模式操作和伪分布模式操作均用于开发与调试的目的。真实的Hadoop 集群是全分布模式操作。

    伪分布模式操作Hadoop集群,具体步骤如下。

    第一步:前期工作

    1 设置静态IP,完毕后,重启网卡,执行命令:service network restart。验证是否成功,执行命令:ifconfig。

    2 查阅并修改主机名。

    1)查阅当前会话的主机名,执行命令:hostname。

    2)修改当前会话的主机名,执行命令:hostname   hadoop。

       该修改只能在本次操作生效。

    3)通过配置文件修改主机名,执行命令:vi  /etc/sysconfig/network

       该修改长期有效。

    验证:重启机器

    3  把主机名和ip进行绑定,执行命令: vi   /etc/hosts

    增加一行内容  ip   主机名

    保存退出

    验证: ping  主机名

    4  关闭防火墙

    执行命令  service  iptables stop

    验证:service iptables status

    6  关闭防火墙的自动运行

    执行命令  chkconfig   iptables  off

    验证:chkconfig  - - list  | grep  iptables

    第二步:SSH 免密码登录

    对Linux进行操作 通过Shell。

    a)执行命令  ssh-keygen   -t  rsa  产生密钥,位于~/.ssh文件夹中

    b)执行命令 cp  ~/.ssh/id_rsa.pub   ~/.ssh/authorized_keys

    验证:ssh  localhost

    第三步:安装JDK软件

    a)执行命令rm  -rf  /usr/local/*  删除所有内容

    b)使用小工具Winscp把jdk文件从Windows环境下复制到Linux下的/usr/local目录下

    c)执行命令  chmod   u+x  jdk-6u24-linux-i586.bin 授予执行权限

    d)执行命令  ./jdk-6u24-linux-i586.bin  解压缩到当前目录下

    e)执行命令 mv jdk1.6.0_24   jdk

    f)执行命令 vi /etc/profile  设置环境变量,增加了两行内容

    export   JAVA_HOME=/usr/local/jdk

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

    保存退出

    执行命令 source    /etc/profile   让该设置立即生效。

    验证:java –version

    第四步:伪分布模式操作Hadoop

    1 执行命令  tar  -zxvf  hadoop-1.1.2.tar.gz进行解压缩

    2 执行命令  mv  hadoop-1.1.2  hadoop  重命名hadoop

    3 执行命令 vi /etc/profile  设置环境变量,增加了一行内容

    export   HADOOP_HOME=/usr/local/hadoop

    修改了一行内容

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

    保存退出,执行命令:wq

    执行命令 source    /etc/profile   让该设置立即生效。

    4  修改hadoop配置文件,位于$HADOOP_HOME/conf目录下的4个文件,分别是hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-site.xml

    a)配置hadoop-env.sh文件,把JAVA_HOME设置为Java安装根路径。

    b)配置core-site.xml文件

    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

    <!-- Put site-specific property overrides in this file. -->

    <configuration>
    <property>
    <name>fs.default.name</name>
    <value>hdfs://hadoop:9000</value>
    <description>change your own hostname</description>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/tmp</value>
    </property>

    </configuration>

    c)配置hdfs-site.xml文件

    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

    <!-- Put site-specific property overrides in this file. -->

    <configuration>
    <property>
    <name>dfs.replication</name>
    <value>1</value>
    </property>
    <property>
    <name>dfs.permissions</name>
    <value>false</value>
    </property>

    </configuration>

    d)配置mapred-site.xml文件

    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

    <!-- Put site-specific property overrides in this file. -->

    <configuration>
    <property>
    <name>mapred.job.tracker</name>
    <value>hadoop:9001</value>
    <description>change your own hostname</description>
    </property>

    </configuration>

    d)执行命令hadoop  namenode  -format   对hadoop进行格式化

    f)执行命令 start-all.sh启动

    验证:

    (1)执行命令jps会有5个进程,分别是NameNode、

    DataNode、SecondaryNameNode、JobTracker,

    TaskTracker。

    (2)通过Linux下的浏览器查看,输入网址

    http://hadoop:50070

    http:// hadoop:50030

    (3)通过Windows下的浏览器查看,可以修改windows的hosts文件

    Source:

    http://www.wangluqing.com/2014/02/hadoop-weifenbu-operation/

    http://hadoop.apache.org/docs/r1.2.1/single_node_setup.html

    http://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html

  • 相关阅读:
    谷歌浏览器无法携带cookie问题
    如何言简意赅表达你需要寻求开发协助?
    vue传参params参数不能混用?
    浅谈JS变量声明和函数声明提升
    如何提高你的CSS水平
    闭包,看这一篇就够了——带你看透闭包的本质,百发百中
    Vue-给对象新增属性(使用Vue.$set())
    PHP const问题
    Linux/U-boot version with "-dirty"
    360度评估互评如何避免恶意打分
  • 原文地址:https://www.cnblogs.com/ExMan/p/3716727.html
Copyright © 2011-2022 走看看