Hadoop安装摘要

硬件环境:
3台老爷机,P3/1GB/64GB

软件系统:
ubuntu-12.04.1-server-i386 安装时,选择安装OpenSSH、smb(文件共享)服务
jdk1.6.0_32
hadoop-1.0.3
hbase-0.94.2
zookeeper-3.4.4

相关配置
主机:--- NameNode & JobTracker
  名称:hdfsmaster
  IP :192.168.61.190
  用户名:administrator

从机1---DataNode & TaskTracker
  名称:hdfs01
  IP :192.168.61.191
  用户名:administrator

从机2---DataNode & TaskTracker
  名称:hdfs02
  IP :192.168.61.192
  用户名:administrator

SSH互信内容,单身即可,不需要密码直接可以访问(第一次输入要Yes)
192.168.61.190-->192.168.61.191,192.168.61.192

1.启动root帐号
   $sudo passwd root

2.配置IP地址
  修改文件 /etc/network/interfaces 添加以下内容:
  auto eth0
  iface eth0 inet static
  address 192.168.61.191
  netmask 255.255.248.0
  gateway 192.168.60.1

3.应用scp,复制各种安装文件
$scp -rp /usr/local/java/ [email protected]:/usr/local/java

4.安装JDK
  $tar -xzvf hadoop-1.0.3.tar.gz
  $sudo chmod 777 jdk-6u32-linux-i586.bin
  $./jdk-6u32-linux-i586.bin

5.配置JDK环境
  修改 /etc/profile 文件,增加以下内容

  #SET JAVA environment
  export JAVA_HOME=/usr/local/java/jdk1.6.0_32
  export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/classes12.jar
  export PATH=$PATH:$JAVA_HOME/bin
  export JRE_HOME=$JAVA_HOME/jre

  #SET HADOOP
  export HADOOP_HOME=/usr/local/java/hadoop-1.0.3
  export PATH=$PATH:/usr/local/java/hadoop-1.0.3/bin
  export CLASSPATH=.:$CLASSPATH:$HADOOP_HOME

6.SSH环境互信
  参考信息http://blog.csdn.net/laoyi19861011/article/details/6254743
  6.1 在主机hdfsmaster(192.168.61.190上操作)
    $ssh-keygen -t rsa   ##中间提示一直按回车到底
    $cat .ssh/id_rsa.pub >> .ssh/authorized_keys
    $cd .ssh
    $ls -a     ##将见到以下3个文件或目录 authorized_keys  id_rsa  id_rsa.pub
    $ssh localhost   ## 测试是否不需要密码

  6.2在需要互信的主机上操作
    $scp id_rsa.pub [email protected]:/home/administrator ##把hdfsmaster中的id_rsa.pub拷贝到hdfs01中,其中administrator为用户名

  6.3 在从机hdfs01(192.168.61.191上操作)
    $cat id_rsa.pub >> .ssh/authorized_keys   ##注意这个要在/administrator目录中,完成这部之后,hdfsmaster访问hdfs01就不需要密码访问了。

7.检验sshd服务(要求服务一直启动)
  $ps aux

8.配置DNS,使应用机器名可以相互ping通
  $sudo vi /etc/hosts
  增加以下内容:
  192.168.61.190 hdfsmaster
  192.168.61.191 hdfs01
  192.168.61.192 hdfs02
###127.0.1.1    hdfsmaster  ---------类似这个IP的都要注释掉
这里配置错了,会导致dataNode启动错误,见dataNode中的日志描述,会见到与主机(192.168.61.190)通讯上不。 

9.修改 hadoop-env.sh 指明JDK的路径
  $sudo vi hadoop-env.sh
  内容:
  export JAVA_HOME=/usr/local/java/jdk1.6.0_32

10.修改conf/core-site.xml
<property>  
        <name>fs.default.name</name>   
        <value>hdfs://hdfsmaster:9000</value>
</property> 
<property>   
        <name>hadoop.tmp.dir</name>   
        <value>/home/administrator/data/hdfs/tmp</value>
</property> 

11.修改conf/hdfs-site.xml
<property>
        <name>dfs.name.dir</name>
        <value>/home/administrator/data/hdfs/name</value>
</property>
<property>
        <name>dfs.data.dir</name>
        <value>/home/administrator/data/hdfs/data</value>
</property>
<property> 
        <name>dfs.datanode.max.xcievers</name> 
        <value>4096</value> 
</property> 
<property> 
        <name>dfs.replication</name> 
        <value>2</value>
</property>

12.修改conf/mapred-site.xml
<property> 
        <name>mapred.job.tracker</name>
        <value>hdfsmaster:9001</value> 
</property> 

13.conf/masters
hdfsmaster

14.修改conf/slaves
hdfs01
hdfs02

15.将配置好的hadoop拷贝到所有的datanode
$scp -rp /usr/local/java/hadoop-1.0.3/conf [email protected]:/usr/local/java/hadoop-1.0.3
$scp -rp /usr/local/java/hadoop-1.0.3/conf [email protected]:/usr/local/java/hadoop-1.0.3

16.调整系统时间
$sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 
#中国国家授时中心服务器IP地址
$sudo apt-get install ntpdate
$sudo ntpdate 210.72.145.44
#写入到Bios
$sudo hwclock -w

测试
1.格式化一个新的分布式文件系统
$ bin/hadoop namenode -format

2.在分配的NameNode上,运行下面的命令启动HDFS,所有列出(${HADOOP_CONF_DIR}/slaves文件的内容)的slave上都被会启动DataNode守护进程
$ bin/start-dfs.sh

3.在分配的JobTracker上,运行下面的命令启动Map/Reduce:,同理,相应的TaskTracker也会被启动
$ bin/start-mapred.sh

4.停止HDFS  (在DataNode机上操作)
$ bin/stop-dfs.sh

5.停止JobTracker(在JobTracker上操作)
$ bin/stop-mapred.sh

6.常用的hdfs命令 参考 http://www.classcloud.org/cloud/wiki/Hadoop_Lab2
  查看目录
  $hadoop fs -ls

7.运行例子
$hadoop fs -mkdir input
$hadoop fs -put conf/ input
$hadoop jar hadoop-examples-1.0.3.jar  grep input/conf output 'dfs[a-z.]+'
$hadoop jar $HADOOP_HOME/hadoop-examples-1.0.3.jar wordcount input/conf output18_04


8.重启或添加节点:在需要重启的客户机操作
$bin/hadoop-daemon.sh start datanode
$bin/hadoop-daemon.sh start tasktracker

$bin/hadoop-daemon.sh stop datanode
$bin/hadoop-daemon.sh stop tasktracker



猜你喜欢

转载自cansoft.iteye.com/blog/1703040