zoukankan      html  css  js  c++  java
  • 分布式Hadoop安装(一)

    本文旨在介绍通过两台物理节点,实现完全分布式hadoop程序的部署

    writen by Bob Pan@20140609

    环境介绍:

    主机名

    机器IP

    用途

    描述

    Hadoop0

    192.168.80.101

    Namenode

    secondaryNamenode

    jobTracker

    CentOS6.4

    jdk-6u24-linux-i586

    hadoop-1.1.2

    Hadoop1

    192.168.80.102

    Datanode

    taskTracker

    CentOS6.4

    jdk-6u24-linux-i586

    hadoop-1.1.2

    1、 安装JDK

    a)         把 jdk 移动到/usr/local 目录下。进入到/usr/local 目录下,通过“.”解压文件

                             i.              ./jdk-6u24-linux-i586.bin

    b)         将解压后的目录jdk1.6.0_24重命名为jdk

                             i.              mv jdk1.6.0_24/ jdk

    c)         将jdk配置到环境变量中,设置全局环境变量,文件“/etc/profile”后添加:

                             i.              export JAVA_HOME=/usr/local/jdk

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

    d)         执行Source命令

                             i.              #source /etc/profile

    e)         “export”是关键字,用于设置环境变量。我们设置了两个环境变量,一个是 JAVA_HOME,一个是 PATH。对于环境变量的引用,使用“$”,多个环境变量之间的连接,使用“:”。大家在设置环境变量的时候,一定与 windows 下的操作区分开,不要混淆。命令“source”是为了让文件中的设置立刻生效。

    f)          执行java –version命令

    2、 关闭防火墙

    a)         执行Setup命令

    b)         选择“Firewall configuration”,然后按回车;

    c)         关闭防火墙,只需要按一下空格键,符号“*”就会消失。最后使用“tab”键移动到“OK”,回车,一步步退出就行了。

    d)         检查防火墙是否关闭命令“service iptables status”

    3、 设置DNS解析

    a)         打开etc/sysconfig/network

    b)         修改为“HOSTNAME=hadoop0”(hadoop1)

    c)         reboot

    4、 Hadoop0设置SSH免密码登录

    a)         ssh-keygen –t rsa

    b)         三次回车

    c)         cd .ssh/

    d)         ls –l

    e)         cp id_rsa.pub authorized_keys

    f)          ssh localhost验证

    5、 Hadoop1设置SSH免密码登录

    a)         同上

    6、 配置hadoop0和hadoop1的/etc/hosts

    a)         每个节点均添加了所有节点的 ip 与主机名映射

    b)         192.168.80.101      hadoop0

    c)         192.168.80.102        hadoop1

    7、 集群间SSH免密码登录

    a)         在hadoop0执行命令:ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop1

    b)         在hadoop1执行命令:ssh-copy-id -i ~/.ssh/id_rsa.pub hadoop0

    8、 Hadoop压缩包上传至hadoop0节点的/usr/local目录下

    9、 Hadoop0节点解压缩hadoop

    a)         tar -xzvf hadoop-1.1.2.tar.gz

    10、Hadoop0节点解压缩后的文件夹重命名

    a)         #mv hadoop-1.1.2 hadoop

    11、 设置Hadoop0节点的环境变量

    alias cdha=’cd /usr/local/hadoop’

     export JAVA_HOME=/usr/local/jdk

    export HADOOP_HOME=/usr/local/hadoop

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

    12、修改hadoop0节点的Hadoop配置文件

    a)         修改hadoop-env.sh

    第9行改为:export JAVA_HOME=/usr/local/jdk(去掉前面的#)

    b)         修改hadoop核心配置文件core-site.xml

    <configuration>
        <property>
            <name>fs.default.name</name>
            <value>hdfs://hadoop0: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配置文件hdfs-site.xml

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

    d)         修改MapReduce 配置文件 mapred-site.xml

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

    13、在hadoop0节点执行命令,将hadoop0节点的hadoop文件夹复制到hadoop1节点

    a)         scp -rq /usr/local/hadoop hadoop1:/usr/local

    b)         scp -rq /etc/profile hadoop1:/etc

    c)         ssh hadoop1

    d)         exit

    14、配置hadoop0节点的集群核心文件slaves

    a)         打开/conf/slaves文件后,修改为hadoop1.

    b)         修改后,意味着在节点 hadoop1运行datanode和tasktracker节点.

    15、格式化文件系统

    a)         hadoop namenode –format

    16、启动集群

    a)         在节点 hadoop0 中执行命令:start-all.sh

    17、Hadoop0节点jps验证,SecondaryNameNode、NameNode、JobTracker,处于运行状态。

    18、Hadoop1节点jps验证,DataNode、TaskTracker,处于运行状态。

     

  • 相关阅读:
    保持同步
    将Cent0S 7的网卡名称eno16777736改为eth0
    Linux系统各发行版镜像下载(2)
    Linux系统各发行版镜像下载
    ~/.ssh目录找不到解决方法
    克隆后虚拟机网络配置
    新建的linux虚拟机找不到eth0解决办法
    SecureCRT 7 注册码
    linux运维常用命令
    shell脚本实例(2)
  • 原文地址:https://www.cnblogs.com/MyXQ/p/3778295.html
Copyright © 2011-2022 走看看