Hadoop分布式集群搭建

本文详细介绍了如何在RedHat环境下搭建Hadoop分布式集群,包括配置JDK、修改hosts文件、实现免密码登录、配置hadoop环境等步骤,并提供了免密登录及集群配置的完整流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

更多内容请访问: http://www.mikameng.com

 

 

简介: Hadoop是Apache开源组织的一个并行分布式计算开源框架,借助hadoop框架程序员很容易的实现大规模计算机并行分布式计算。hadoop主要包含MapReduce和HDFS,

MapReduce是基于Google MapReduce论文的开源java实现, map就是将任务分解,然后交给大规模计算机集群去运算,reduce负责合并计算结果。

HDFS: 基于google GFS分布式文件系统论文的开源实现,是hadoop底层存储组件。

环境: RedHat as 5

配置机器:

   namenode:10.0.0.114, 机器名: mika

   datanode: 10.0.0.115      机器名: c1

  1. 配置JDK



      下载linux jdk安装包: http://download.oracle.com/otn-pub/java/jdk/6u25-b06/jdk-6u25-linux-i586.bin

     提升bin权限: $ sudo chmod +x jdk-6u25-linux-i586.bin

      安装bin文件    $ ./jdk-6u25-linux-i586.bin, 确认后安装即可。

       设置java运行环境变量,  我的jdk安装在opt下

$ sudo vi /etc/profile 添加下面的设置:

 JAVA_HOME="/opt/jdk1.6.0_25"
PATH=$JAVA_HOME/bin:$PATH
CALSSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CALSSPATH

修改保存,然后输入source /etc/profile 激活修改后的java环境变量。

2. 修改hosts文件

     name节点,可以通过机器名访问data节点, 添加如下内容:

          10.0.0.114  mika

           10.0.0.115 c1

     data节点,c1添加如下内容:

          10.0.0.114  mika

           10.0.0.115 c1

3.  设置ssh实现免密码登录

  redhat 默认是安装ssh的, 如果没有请先安装ssh服务。

   在name节点  生成ssh key,

   $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa    生成密钥对,

   $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys  复杂公钥到authorized_keys文件

   scp命令将公钥拷贝到c1数据节点:

   $ scp  ~/.ssh/authorized_keys c1:/~/.ssh

   测试name节点无密码登录c1机器: ssh c1, 出现欢迎登录,配置成功。

4.  配置hadoop

    下载最新hadoop最新稳定发行版: http://www.apache.org/dyn/closer.cgi/hadoop/common/ , 解压后修改conf/hadoop-env.sh内的JAVA_HOME,修改为/opt/opt/jdk1.6.0_25

输入命令 bin/hadoop 出现命令使用说明

接下来配置完全分布式集群,所有机器的hadoop安装路径相同:

  • 修改core-site.xml文件:
XML语言 :
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name> fs.default.name </name>
    <value> hdfs://mika:9000 </value>
  </property>
<property>
    <name> hadoop.tmp.dir </name>
    <value> /opt/hadoop/tmp </value>
</property>
</configuration>  

  注意: 需要更改hadoop.tmp.dir默认的指向, 默认指向tmp目录下, 有可能会出现其他问,有时候会出现发现不了datanode的问题。

  •  修改hdfs-site.xml 文件:
XML语言 :
<?xml version=”1.0″?>
<?xml-stylesheet type=”text/xsl” href=”configuration.xsl”?>
<configuration>
  <property>
    <name> dfs.replication </name>
    <value> 1 </value>
  </property>
</configuration>       
  • 修改mapred-site.xml
XML语言
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name> mapred.job.tracker </name>
    <value> mika:9001 </value>
  </property>
</configuration>

修改masters: 添加一行内容 mika

修改slaves: 添加一行内容 c1

然后scp将masters,slaves, core-site.xml, hdfs-site.xml, mapred-site.xml 复制到 c1节点

  • 格式化新的分布式文件系统:

bin/hadoop namenode -format

  • 在分配的NameNode上,启动hdfs

bin/start-dfs.sh

  • 在分配的JobTracker上, 启动mapred

bin/start-mapred.sh

JPS查看namenode服务是否启动

浏览NameNode和JobTracker的网络接口,它们的地址默认为:

 

备注: 如果新加一个节点c2(10.0.0.116), 该如何设置?

在name节点的hosts里加入 10.0.0.116   c2, 然后在name和c2节点的slaves里添加c2 ,然后在c2节点里启动输入:

bin/start-daemon start datanode

bin/start-daemon start tasktrack

固定链接: http://www.mikameng.com/?p=289

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值