zoukankan      html  css  js  c++  java
  • Hadoop-2.4.1完全分布式环境搭建

    Hadoop-2.4.1完全分布式环境搭建

     

    Hadoop-2.4.1完全分布式环境搭建

    一、配置步骤如下:

    1. 主机环境搭建,这里是使用了5台虚拟机,在ubuntu 13系统上进行搭建hadoop环境。
    2. 创建hadoop用户组以及hadoop用户,并给hadoop用户分配权限。
    3. 免密码登陆,为5台主机进行免密码登陆配置。
    4. 安装hadoop以及jdk,并配置环境变量。
    5. Hadoop分布式环境参数配置。

    二、主机环境搭建:

    在虚拟机上安装5台虚拟主机并分别安装好hadoop系统,然后分别完成以下操作。

    1. 设定静态ip地址,这里的虚拟机使用的是NAT上网模式,配置命令如下:

    a) 配置静态地址

    sudo gedit /etc/network/interfaces

    auto eth0

    iface eth0 inet static

    address 192.168.182.132

    netmask 255.255.255.0

    gateway 192.168.182.1

    b) 配置网关

    sudo gedit /etc/resolv.conf

    nameserver 192.168.182.1

    c) 重启网络

    /etc/init.d/networking restart

    2. 修改主机名,打开hostname文件,分别将主机名修改为master,slave1,slave2,slave3,slave4

    sudo gedit /etc/hostname

    3. 修好主机配置文件,打开hosts文件,我的主机配置是这样的:

    sudo gedit /etc/hosts

    192.168.182.132 master

    192.168.182.134 slave1

    192.168.182.135 slave2

    192.168.182.136 slave3

    192.168.182.137 slave4

    三、添加用户

    1. 创建hadoop用户组

    sudo addgroup hadoop

    2. 创建hadoop用户

    sudo adduser -ingroup hadoop hadoop

    3. 给hadoop用户添加权限,打开/etc/sudoers文件

    sudo gedit /etc/sudoers

    按回车键后就会打开/etc/sudoers文件了,给hadoop用户赋予root用户同样的权限

    在root   ALL=(ALL:ALL)   ALL下添加hadoop   ALL=(ALL:ALL)  ALL

    四、配置master到slave的免密码登陆

    1. 安装ssh服务

    sudo apt-get install ssh openssh-server

    2. 配置master到slave的免密码登陆(这里以slave1为例,其他slave操作一致)

    master生成authorized_key

    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

    cd .ssh/

    cat id_dsa.pub >> authorized_keys

    slave1添加master的authorized_key到本地

    scp yss@master:~/.ssh/id_dsa.pub ./master_dsa.pub

    cat master_dsa.pub >> authorized_keys

    五、安装hadoop和jdk,配置环境变量

    hadoop安装包版本是2.4.1,jdk使用的是1.7.0_65版本,分别到官网上去下载。

    hadoop,jdk分别解压到/home/hadoop/hadoop-2.4.1,/home/hadoop/jdk1.7.0_65目录下,配置环境变量如下:

    sudo gedit /etc/profile

    HADOOP_HOME=/home/hadoop/hadoop-2.4.1

    JAVA_HOME=/home/hadoop/jdk1.7.0_65

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

    CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib:$CLASSPATH

    export HADOOP_HOME

    export JAVA_HOME

    export PATH

    export CLASSPATH

    source /etc/profile

    注:配置环境变量应该在最后一步,各个节点都需要单独配置

    六、配置hadoop环境

    core-site.xml

    <configuration>

      <property>

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

        <value>hdfs://master:9000</value>

        <final>true</final>

      </property>

      <property>

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

        <value>/home/hadoop/hadoop-2.4.1/tmp</value>

        <description>A base for other temporary directories.</description>

      </property>

    </configuration>

    Hdfs-site.xml

    <configuration>

    <property>

      <name>dfs.name.dir</name>

      <value>/home/hadoop/hadoop-2.4.1/name</value>

      <final>true</final>

    </property>

    <property>

      <name>dfs.data.dir</name>

      <value>/home/hadoop/hadoop-2.4.1/data</value>

      <final>true</final>

    </property>

    <property>

      <name>dfs.replication</name>

      <value>2</value>

      <final>true</final>

    </property>

    </configuration>

    mapred-site.xml

    <configuration>

    <property>

      <name>mapred.job.tracker</name>

      <value>192.168.182.132:9001</value>

    </property>

    </configuration>

    注:五、六步骤中都只是配置的master节点,master配置完成后将/home/hadoop/文件夹拷到各个slave

    scp -r ./hadoop slave1:/home

    七、启动Hadoop

    1. 格式化namenode

    在master节点执行下面命令:

    hadoop namenode format

    2. 启动服务

    进去master节点/home/hadoop/hadoop-2.4.1/sbin目录,执行如下命令:

    ./start-all.sh

    下面是停止Hadoop服务命令:

    ./stop-all.sh

    3. master有如下进程:

    hadoop@master: /home/hadoop/hadoop-2.4.1/sbin $jps

    21211 Jps

    7421 SecondaryNameNode

    7154 NameNode

    7968 ResourceManager

    4. slave1有如下进程

    hadoop@ slave1: /home/hadoop/hadoop-2.4.1/sbin $jps

    3612 NameNode

    3723 Jps

    3367 DataNode

    5. 查看集群状态

    http://master:8088/

     
    分类: hadoop
  • 相关阅读:
    Android打包报错 Export aborted because fatal lint errors were found. These are listed in the Lint View
    jqMobi 更小更快的移动框架
    php报错:Call to undefined function get_magic_quotes_gpc()
    php:字符窜截取substr和mb_substr
    Warning Creating default object from empty value in xxx.php
    linux下安装xampp
    程序员找不女朋友的原因
    键盘各种按键对应的ASII码
    Read All About It-Attraction舞团
    What are words-Chris Medina
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/4247958.html
Copyright © 2011-2022 走看看