VMWare下快速搭建Hadoop完全分布式环境

前言:
   利用VMWare快速搭建Hadoop的完全分布式环境,在一台虚拟机上安装配置好相应的软件和环境变量后,利用vmware的克隆,复制出另外两个虚拟机,这样,一个完全分布式环境就搭建起来了。
   这里要说明一点,为了方便后面的配置,利用vmware装ubuntu时,用户名要设置成 hadoop,不然后面的配置改起来麻烦
   简单起见,vmware如何安装ubuntu就不细说了,下面给出详细的搭建步骤:
  
   说明:
   标蓝的,是敲入命令行的代码,直接复制到命令行界面运行即可。

(一)事前准备:
   (1) 进入linux,打开命令行界面,输入 " cd ",进入hadoop用户主目录
   
   (2)在hadoop用户主目录下,创建setup目录,用于存放安装的程序:mkdir setup
   
   (3)更改IP设置
       利用 ifconfig 来查看当前的ip,并将ip设置成静态的ip(按照动态ip的内容,改写成静态ip,包括网关域名等。。)
      (三台Linux虚拟机是利用ip来通信的,ip的配置写死在了hosts文件里,如果不配置成静态的,关机重启后,就找不到原来的ip了,也就不能互相通信了,关于静态ip的设置,就不细说了,ubuntu的设置里面,网络->IPv4里面可以配置)   
   
   (4)更改hosts配置:
       sudo gedit/etc/hosts
      (注意,下面的ip要根据你静态设置的ip来写),将下面的内容复制到hosts文件里:
        192.168.1.128 master  
          192.168.1.129 slave1  
          192.168.1.130 slave2

(二)安装JDK:

首先去Oracle官网下载Linux下的JDK压缩包,地址如下:

    http://www.oracle.com/technetwork/java/javase/downloads/index.html

   我下载的是jdk-7u4-linux-i586.tar.gz文件,下载后,复制到 /home/hadoop/setup目录下

Step1:
# 将jdk文件解压到当前目录:
    tarzxvf jdk-7u4-linux-i586.tar.gz 

  将解压后的文件夹重命名为jdk7(名字太长不方便):

    mv jdk* jdk7

Step2:
# 配置环境变量
    sudo gedit ~/.profile
在末尾加上:
    exportJAVA_HOME=/home/hadoop/setup/jdk1.7
Step3: 
然后保存关闭,使用source更新下
    source ~/.profile
Step4: 
使用env命令察看JAVA_HOME的值
    env | grep JAVA_HOME
如果输出:JAVA_HOME=/home/hadoop/setup/jdkjdk1.7 ,说明配置成功。

Step5:
# 将系统默认的jdk修改过来
    sudo update-alternatives --install /usr/bin/javajava /home/hadoop/setup/jdk1.7/bin/java300 

   sudo update-alternatives --install /usr/bin/javacjavac /home/hadoop/setup/jdk1.7/bin/javac300 
    sudo update-alternatives --configjava 
    sudoupdate-alternatives --config javac


Step6:
然后再输入:

    java -version

看到如下信息,就说明改成sun的jdk了:
java version"1.7.0_04"
Java(TM) SE Runtime Environment(build 1.7.0_04-b20)
Java HotSpot(TM) Server VM (build23.0-b21, mixed mode)


(三)安装ssh:

   (1)sudo apt-getinstall ssh 

    这个安装完后,可以直接使用ssh命令 了。执行 netstat -nat ,查看22端口是否开启了

    测试:ssh localhost ,输入当前用户的密码,回车就ok了。说明安装成功,同时ssh登录需要密码。

   (2)为hadoop上的用户hadoop生成其密钥对:

   ssh-keygen  -t rsa ,然后一路按回车键就可以了


(四)安装配置Hadoop:

   为了快速起见,直接将本文附件中的hadoop.tar.gz文件复制过来,解压就可以了,具体步骤如下:

   将 hadoop.tar.gz 文件复制到/home/hadoop/setup目录下,然后解压:

   tar zxvf hadoop.tar.gz

    hadoop的安装配置结束。


(五)克隆虚拟机:

    在VMWare界面的VM->manage->clone里面,克隆当前Linux虚拟机,如下图:

VMWare下快速搭建Hadoop完全分布式环境 - wxweven - wxweven的博客

   

注意,在Clone Type的时候,要选择 creat afull clone,如下图:

           VMWare下快速搭建Hadoop完全分布式环境 - wxweven - wxweven的博客

其他的,一路"下一步"即可。


    克隆完虚拟机后,在master虚拟机,用"ssh slave1"和"sshslave2"测试下master是否能和slave进行ssh通信,(第一次需要密码,后面就不需要了),如果成功,这说明ssh配置成功。


(六)启动Hadoop:

   将三台虚拟机全部开启,并在master机器上,输入如下命令:
    (1)进入hadoop目录:cd ~/setup/hadoop
    (2)格式化Hadoop文件系统: bin/hadoop namenode-format 

    如果看到类似如下两行的 successfully ,说明格式化文件系统成功!
     
has beensuccessfully formatted.
     has been successfully formatted.


    (3)启动所有节点:bin/start-all.sh
     

   (4)验证hadoop是否正常启动:jps 
       正常启动后,会在master节点上显示:NameNode,JobTracker,SecondaryNameNode
       而slave1和slave2上会显示:DataNode,TaskTracker
                         

     启动hadoop后,可以再浏览器里面查看NameNode和JobTracker,它们的地址默认为:
    NameNode http://master:50070
    JobTracker http://master:50030


(七)测试Hadoop版"Helloworld!":

  搭建完成后,可以测试下wordcount小程序:

(1)准备需要进行wordcount的文件:

   sudo gedit/tmp/test.txt

  (打开后随便输入一些内容,如"mu ha ha ni daye da ye da",然后保存退出)


(2)将准备的测试文件上传到dfs文件系统中的firstTest目录下:

   bin/hadoop dfs-copyFromLocal /tmp/test.txt firstTest

(注:如dfs中不包含firstTest目录的话就会自动创建一个,关于查看dfs文件系统中已有目录的指令为"bin/hadoopdfs -ls")


(3)执行wordcount:

   bin/hadoop jarhadoop*example*.jar wordcount firstTest result

(注:此语句意为“对firstTest下的所有文件执行wordcount,将统计结果输出到result文件夹中”,若result文件夹不存在则会自动创建一个)


(4)查看结果

   bin/hadoop dfs-cat result/part-r-00000

(注:结果文件默认是输出到一个名为“part-r-*****”的文件中的,可用指令“hadoop dfs -lsresult”查看result目录下包含哪些文件)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值