Hadoop 安装手册

Hadoop 安装手册

  1. 软件准备

    1. a)  CentOS6.2 b4bit ,需要安装 DEV 包,分区采用基本分区方式、关闭防

      火墙、关闭 SELinux

    2. b)  Oracle Javase 1.6.37 64bit(JDK)

    3. c)  Hadoop1.0.4,从 http://hadoop.apache.org 下载

  2. 硬件规划

    1. a)  NameNode 采用高可靠性 X86 64 服务器,内存建议 64G 以上,CPU

      4core 以上,支持 HT,采用冗余电源,磁盘做 Raid1

    2. b)  DataNode 采用终端硬件,内存建议在 32G 以上,CPU 4Core 以上,支

      HT,使用 SATA 硬盘即可

  3. 规划角色

主机名

角色

master

NameNodeJobtracker

secondmaster

Secondary NameNode

slave01

DatanodeTasktracker

slave02

DatanodeTasktracker

slave03

DatanodeTasktracker

slave04

DatanodeTasktracker

slave05

DatanodeTasktracker

  1. 规划目录

  2. 创建帐号
    # useradd hadoop # passwd hadoop

  3. 配置环境变量 # su – hadoop

    $ vi ~/.bash_profile

    文件尾增加如下内容

    export JAVA_HOME=/opt/jdk
    export JAVA_BIN=$JAVA_HOME/bin
    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/tools.jar export HADOOP_HOME=~/hadoop
    export HADOOP_BIN=$HADOOP_HOME/bin
    export PATH=.:$JAVA_BIN:$HADOOP_BIN:$PATH
    $source ~/.bash_profile

目录

说明

/home/hadoop/data/nn

Namenode 元数据

/home/hadoop/data/snn

Secondary Namenode 元数据

/home/hadoop/data/dn

Datanode 数据

/opt/jdk

Oracle Java

7. 配置主机名及IP映射
# vi /etc/sysconfig/network

例,Namenode 角色节点变更如下

HOSTNAME=master

  其它节点根据角色,根据上面第三点进行设置主机名称

# reboot

# vi /etc/hosts
master
节点中文件内容形如,IP 地址仅是样例,需要根据实际情况规划 IP 地址
127.0.0.1
192.168.0.10
192.168.0.11
192.168.0.12
192.168.0.13
192.168.0.14
192.168.0.15
192.168.0.16
配置好后,将此文件分发到其它几点上
# scp /etc/hosts secondmaster:/etc/hosts
# scp /etc/hosts slave01:/etc/hosts
...

  1. SSH 互信配置
    例在
    master 节点上执行

    $ ssh-keygen (说明:一路回车)
    $ cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys $ scp –r ~/.ssh secondmaster:.
    $ scp –r ~/.ssh slave01:.
    ...

  2. 配置Hadoop
    前提把 hadoop-1.0.4.tar.gz 分发到所有节点上的/home/hadoop 目录下 $ tar –zxvf ~/hadoop-1.0.4.tar.gz
    $ ln –s hadoop-1.0.4 hadoop
    所有节点均执行此操作

    hadoop 配置文件均在$HADOOP_HOME/conf 目录下

    配置 core-site.xml <configuration>

    <property> <name>fs.default.name</name> <value>hdfs://master:9000</value>

localhost

master secondmaster

slave01 slave02 slave03 slave04 slave05

<description>NN listening port</description> </property>

<property>
<name>fs.checkpoint.dir</name> <value>/home/hadoop/data/snn</value> <description>2nd NN metadata folder</description>

</property> </configuration>

配置 hdfs-site.xml <configuration>

<property>
<name>dfs.name.dir</name> <value>/home/hadoop/data/nn</value> <description>NN metadata folder</description>

</property> <property>

<name>dfs.data.dir</name> <value>/home/hadoop/data/dn</value> <description>DN file data folder</description>

</property> <property>

<name>dfs.replication</name>
<value>3</value>
<description>data replica copy number</description>

</property> </configuration>

配置 mapred-site.xml <configuration>

<property>
<name>mapred.job.tracker</name> <value>master:9001</value> <description>JobTracker listening port</description>

</property> </configuration>

配置 masters secondmaster

配置 slaves slave01 slave02 slave03

slave04 slave05

所有节点的配置文件均相同 10. 配置 NTP 服务

master 上配置服务端
# vi /etc/ntp.conf
内容形如:
restrict default nomodify notrap noquery
restrict 127.0.0.1 restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap server 0.asia.pool.ntp.org

server 1.asia.pool.ntp.org server 2.asia.pool.ntp.org server 3.asia.pool.ntp.org server 127.127.1.0

fudge 127.127.1.0 stratum 10

# /etc/init.d/ntpd restart

在其它节点执行

# crontab –e
*/15 * * * * ntpdate master

11. 格式化 HDFS
$ hadoop namenode –format

12. Hadoop 服务启动、停止 启动服务

$ start-all.sh

停止服务

$ stop-all.sh

13. Hadoop WEB UI http://master:50070 HDFS UI http://master:50030 MapReduce UI

14. 测试 Hadoop 集群

$hadoop jar tsinput
$ hadoop jar tsoutput

teragen 100 $HADOOP_HOME/hadoop-examples-*.jar terasort tsinput

$HADOOP_HOME/hadoop-examples-*.jar

$ hadoop fs -ls tsoutput
$ hadoop fs -cat tsoutput/part-00000

正常执行完成,即说明 Hadoop 集群运行正常 15. 备注

提示符“#”代表以 root 帐号执行

提示符“$”代表以 hadoop 帐号执行 

你可能感兴趣的:(hadoop)