[hadoop] 搭建自己的hadoop集群

标签: hadoop hadoop 集群 | 发表时间:2013-02-22 12:57 | 作者:kakane
出处:http://blog.csdn.net
1>  准备工作
       a>  五台centos6.2虚拟机,配置主机名、IP地址、yum源、
              192.168.68.201  master01
              192.168.68.202  master02
              192.168.68.203  slave01
              192.168.68.204  slvae02
              192.168.68.205  slave03   
       b>  准备所需要的软件包
              jdk-6u26-linux-x64-rpm.bin 
              hadoop-0.20.2.tar.gz
2> 配置我自己的hadoop 集群
      a>  修改5台机器的hosts文件

            #vim /etc/hosts           

        192.168.68.201  master01
        192.168.68.202  master02
        192.168.68.203  slave01
        192.168.68.204  slvae02
        192.168.68.205  slave03

      b>  配置master无密码登录slave,在master01和master02上执行以下命令:   

             #ssh-keygen
             #ssh-copy-id -i .ssh/id_rsa.pub root@master01
             #ssh-copy-id -i .ssh/id_rsa.pub root@master02
             #ssh-copy-id -i .ssh/id_rsa.pub root@slave01
             #ssh-copy-id -i .ssh/id_rsa.pub root@slave02
             #ssh-copy-id -i .ssh/id_rsa.pub root@slave03

      c>  5台机器分别安装java虚拟机,设置java环境变量

            #./jdk-6u26-linux-x64-rpm.bin      
            #cat >>/etc/profile <<EOF
              export JAVA_HOME=/usr/java/jdk1.6.0_26
              export PATH=\$JAVA_HOME/bin:\$PATH
              EOF 
      d>  在master01上解压hadoop-0.20.2.tar.gz 配置hadoop集群
             #tar -zxvf hadoop-0.20.2.tar.gz     
            #vim hadoop-0.20.2/conf/hadoop-env.sh 
       export JAVA_HOME=/usr/java/jdk1.6.0_26
       export HADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS"
       export HADOOP_SECONDARYNAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_SECONDARYNAMENODE_OPTS"
       export HADOOP_DATANODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_DATANODE_OPTS"
       export HADOOP_BALANCER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_BALANCER_OPTS"
       export HADOOP_JOBTRACKER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_JOBTRACKER_OPTS"

           #vim hadoop-0.20.2/conf/hdfs-site.xml

<configuration>
    <property>
        <name>dfs.http.address</name>
        <value>192.168.68.201:50070</value>
    </property>
    <property>
        <name>dfs.name.dir</name>
        <value>${hadoop.tmp.dir}/dfs/name,/data/name</value>
    </property>
    <property>
        <name>dfs.data.dir</name>
        <value>/data/data</value>
    </property>
    <property> 
        <name>dfs.replication</name> 
        <value>2</value> 
    </property>
</configuration>

         #vim hadoop-0.20.2/conf/mapred-site.xml 

<configuration>
    <property> 
        <name>mapred.job.tracker</name> 
        <value>master02:8021</value> 
    </property>
    <property> 
        <name>mapred.local.dir</name> 
        <value>/data/mapred/local</value> 
    </property> 
    <property> 
        <name>mapred.system.dir</name> 
        <value>/data/mapred/system</value> 
    </property>
    <property> 
        <name>mapred.job.tracker.http.address</name> 
        <value>192.168.68.202:50030</value> 
    </property>
</configuration>

           #vim hadoop-0.20.2/conf/core-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
    <property> 
        <name>fs.default.name</name> 
        <value>hdfs://master01:8020</value> 
    </property>
    <property> 
        <name>hadoop.tmp.dir</name> 
        <value>/data/hadoop/tmp</value> 
    </property>
</configuration>
           #vim hadoop-0.20.2/conf/masters

     master02

          #vim hadoop-0.20.2/conf/slaves           

     slave01
     slave02
     slave03

      e>  将master01上的hadoop-0.20.2 复制到其他机器    
      #scp -r hadoop-0.20.2 root@master02:/root/
      #scp -r hadoop-0.20.2 root@slave01:/root/
      #scp -r hadoop-0.20.2 root@slave02:/root/
      #scp -r hadoop-0.20.2 root@slave03:/root/
     
3>  启动hadoop集群
       a>  在master01上格式化hdfs系统
              #./hadoop-0.20.2/bin/hadoop namenode -format  
       b>  在master01上启动hdfs系统  ,执行jps查看启动的进程 
              #./hadoop-0.20.2/bin/start-dfs.sh

              #jps

                1872 Jps

                1654 NameNode

      c>  在master02上启动MapReduce,执行jps查看启动的进程
             #./hadoop-0.20.2/bin/start-mapred.sh

             #jps   

               1956 Jps
               1737 SecondaryNameNode
               1895 JobTracker

      d>  查看slave01上启动的进程

             #jps

               2418 Jps
               1758 TaskTracker
               1827 DataNode

作者:kakane 发表于2013-2-22 12:57:44 原文链接
阅读:98 评论:0 查看评论

相关 [hadoop hadoop 集群] 推荐:

Hadoop集群与Hadoop性能优化

- - 学着站在巨人的肩膀上
本文讲解一下Hadoop集群、Hadoop性能优化、Hadoop机架感知实现、Hadoop配置等,下面是有关这些命令的具体介绍. Hadoop性能优化:Hadoop机架感知实现及配置:分布式的集群通常包含非常多的机器,由于受到机架槽位和交换机网口的限制,通常大型的分布式集群都会跨好几个机架,由多个机架上的机器共同组成一个分布式集群.

[hadoop] 搭建自己的hadoop集群

- - CSDN博客系统运维推荐文章
       a>  五台centos6.2虚拟机,配置主机名、IP地址、yum源、.        b>  准备所需要的软件包. 2> 配置我自己的hadoop 集群.       a>  修改5台机器的hosts文件.       b>  配置master无密码登录slave,在master01和master02上执行以下命令:   .

Hadoop 集群基准测试

- - IT瘾-dev
生产环境中,如何对 Hadoop 集群进行 Benchmark Test. 本文将通过 Hadoop 自带的 Benchmark 测试程序:TestDFSIO 和 TeraSort,简单介绍如何进行 Hadoop 的读写 & 计算性能的压测. 回顾上篇文章: 认识多队列网卡中断绑定. (本文使用 2.6.0 的 hadoop 版本进行测试,基准测试被打包在测试程序 JAR 文件中,通过无参调用 bin/hadoop jar ./share/hadoop/mapreduce/xxx.jar 可以得到其列表 ).

[hadoop] 基于Hadoop集群的HBase集群的配置

- - CSDN博客系统运维推荐文章
       a> 已经配置完成的Hadoop集群.        b> 所需要的软件包. 2>  单独安装的ZooKeeper集群,不基于HBase集群管理.        a> 在master01上解压zookeeper-3.4.4.tar.gz.        b> 修改Zookeeper的配置文件.

hadoop集群环境的配置

- - ITeye博客
  之前说过,我们的hadoop集群已经搭建起来了,只是具体的步骤还没来得及整理,幸好今天又把流程走了一遍,真的是不做不晓得,一做才发现自己原来什么都忘记得差不多了,在此记录一下搭建hadoop集群的步骤,便于需要的时候看看.   这个配环境的过程真的是比较困难的,我今天搞了一天终于把自己的机器作为datanode连接上了master机器,我还是年前搞过一遍的呢,所以这个还是需要耐心+细心的.

腾讯TDW:大型Hadoop集群应用

- - 服务器运维与网站架构|Linux运维|X研究
PS:TDW是腾讯最大的离线数据处理平台. 本文主要从需求、挑战、方案和未来计划等方面,介绍了TDW在建设单个大规模集群中采取的JobTracker分散化和NameNode高可用两个优化方案. TDW(Tencent distributed Data Warehouse,腾讯分布式数据仓库)基于开源软件Hadoop和Hive进行构建,打破了传统数据仓库不能线性扩展、可控性差的局限,并且根据腾讯数据量大、计算复杂等特定情况进行了大量优化和改造.

Hadoop Streaming 编程

- - 学着站在巨人的肩膀上
Hadoop Streaming是Hadoop提供的一个编程工具,它允许用户使用任何可执行文件或者脚本文件作为Mapper和Reducer,例如:. 采用shell脚本语言中的一些命令作为mapper和reducer(cat作为mapper,wc作为reducer). 本文安排如下,第二节介绍Hadoop Streaming的原理,第三节介绍Hadoop Streaming的使用方法,第四节介绍Hadoop Streaming的程序编写方法,在这一节中,用C++、C、shell脚本 和python实现了WordCount作业,第五节总结了常见的问题.

Hadoop使用(一)

- Pei - 博客园-首页原创精华区
Hadoop使用主/从(Master/Slave)架构,主要角色有NameNode,DataNode,secondary NameNode,JobTracker,TaskTracker组成. 其中NameNode,secondary NameNode,JobTracker运行在Master节点上,DataNode和TaskTracker运行在Slave节点上.

Hadoop MapReduce技巧

- - 简单文本
我在使用Hadoop编写MapReduce程序时,遇到了一些问题,通过在Google上查询资料,并结合自己对Hadoop的理解,逐一解决了这些问题. Hadoop对MapReduce中Key与Value的类型是有要求的,简单说来,这些类型必须支持Hadoop的序列化. 为了提高序列化的性能,Hadoop还为Java中常见的基本类型提供了相应地支持序列化的类型,如IntWritable,LongWritable,并为String类型提供了Text类型.

Hadoop TaskScheduler浅析

- - kouu&#39;s home
TaskScheduler,顾名思义,就是MapReduce中的任务调度器. 在MapReduce中,JobTracker接收JobClient提交的Job,将它们按InputFormat的划分以及其他相关配置,生成若干个Map和Reduce任务. 然后,当一个TaskTracker通过心跳告知JobTracker自己还有空闲的任务Slot时,JobTracker就会向其分派任务.