zoukankan      html  css  js  c++  java
  • hadoop2.2环境配置

    场景介绍:主机mac pro,安装了两台虚拟机,虚拟机均为Ubuntu系统

    ubuntu系统配置jdk

    1、到 Sun 的官网下载

    http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

    2、解压所下载的文件

    lixiaojiao@ubuntu:~/software$ tar -zxvf jdk-7u79-linux-x64.tar.gz

    3、配置java环境变量

    lixiaojiao@ubuntu:~/software$ vi ~/.bashrc 

    跳至文件结束处

    添加

    export JAVA_HOME=/home/lixiaojiao/software/jdk1.7.0_79
    export CLASS_PATH=.:$CLASS_PATH:$JAVA_HOME/lib
    export PATH=.:$PATH:$JAVA_HOME/bin

    如图所示

    保存并退出

    4、配置完毕后并没有立即生效,需要使用下面命令后生效

    lixiaojiao@ubuntu:~/software$ source ~/.bashrc

    5、验证是否配置成功,出现下面效果证明成功

    lixiaojiao@ubuntu:~/software$ java -version

    mac机器配置hadoop2.6.1环境(java环境之前已经配置)

    1、解压hadoop下载文件

    lixiaojiaodeMacBook-Pro:zipFiles lixiaojiao$ tar -zxvf hadoop-2.6.1.tar.gz 

    2.本人将云计算相关的放入到目录中cloudcomputing,查看目录结构

    3.设置ssh远程登录

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ssh-keygen -t rsa -P ""

    执行以下命令

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

    验证是否成功

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ssh localhost

    出现下图,失败。。

    原因是系统的ssh远程登录没有打开

    首先在系统偏好设置->共享->远程登录,打开远程登录

    再次执行命令

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ssh localhost

    出现下图证明成功

    3. 切换到etc目录中,查看配置文件

    lixiaojiaodeMacBook-Pro:cloudcomputing lixiaojiao$ cd hadoop-2.6.1/etc/hadoop/

    4.修改配置文件

    切换到/Users/lixiaojiao/software/cloudcomputing/hadoop-2.6.1/etc/hadoop目录

    (1) 配置core-site.xml

    lixiaojiaodeMacBook-Pro:hadoop lixiaojiao$ vi core-site.xml 

    添加在

    <configuration>

    </configuration>中间增加如下配置

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

    (2) 配置yarn-site.xml

    增加如下配置

    <property>
                    <name>yarn.noCHdemanager.aux-services</name>
                    <value>mapreduce_shuffle</value>
    </property>
    
    <property>
                    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
                    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
    </property>

    (3) 创建和配置mapred-site.xml,将该目录中的mapred-site.xml.template复制为mapred-site.xml并添加配置如下

    <property>
                    <name>mapreduce.framework.name</name>
                    <value>yarn</value>
    </property>

    (4) 配置hdfs-site.xml,首先在

    /Users/lixiaojiao/software/cloudcomputing/hadoop-2.6.1/中新建目录,hdfs/data和hdfs/name,并添加如下配置

    <property>
                    <name>dfs.replication</name>
                    <value>1</value>
    </property>
    
    <property>
                    <name>dfs.namenode.name.dir</name>
                    <value>file:/Users/lixiaojiao/software/cloudcomputing/hadoop-2.6.1/hdfs/name</value>
    </property>
    
    <property>
                    <name>dfs.datanode.data.dir</name>
                    <value>file:/Users/lixiaojiao/software/cloudcomputing/hadoop-2.6.1/hdfs/data</value>
    </property>

    (5) 格式化hdfs

    lixiaojiaodeMacBook-Pro:bin lixiaojiao$ ./hdfs namenode -format

    出现下图

    (6) 启动hadoop

    切换到sbin目录下

    lixiaojiaodeMacBook-Pro:bin lixiaojiao$ cd ../sbin/

    执行

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ./start-dfs.sh 

    执行

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ./start-yarn.sh 

    浏览器打开 http://localhost:50070/,会看到hdfs管理页面

    浏览器打开 http://localhost:8088/,会看到hadoop进程管理页面

     在第六部运行

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ./start-dfs.sh 

    时候出现下面提示

    computing/hadoop-2.6.1/logs/hadoop-lixiaojiao-secondarynamenode-lixiaojiaodeMacBook-Pro.local.out
    2015-10-18 10:08:43.887 java[1871:37357] Unable to load realm info from SCDynamicStore
    15/10/18 10:08:43 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ 

    原因为官方提供的lib目录中.so文件是在32位系统下编译的,如果是但是本人的mac机器是64位系统,需要自己下载源码在64位上重新编译,由于本人下载源码尝试了很久也没成功,最终放弃了,下载了牛人编译好的64位打包程序,地址位http://yun.baidu.com/s/1c0rfIOo#dir/path=%252Fbuilder,并下载这个正常的32位hadoop程序包,http://www.aboutyun.com/thread-6658-1-1.html,下载成功后,将下载的64位build文件中的native覆盖掉lib目录下的native文件,并重新按照上面的部分进行配置。

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ./start-all.sh 

    当重新执行到上面的命令时候出现下面问题:

    lixiaojiaodeMacBook-Pro:sbin lixiaojiao$ ./start-all.sh 
    This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh
    2015-10-19 21:18:29.414 java[5782:72819] Unable to load realm info from SCDynamicStore

    按照网上牛人的做法还是不行,最后只有换jdk,重新安装jdk

    #export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
    export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/

     验证是否成功

    创建input目录

    lixiaojiaodeMacBook-Pro:hadoop-2.2.0 lixiaojiao$ hadoop fs -mkdir -p input

    将本地文件上传到hdfs文件系统中

    lixiaojiaodeMacBook-Pro:cloudcomputing lixiaojiao$ hadoop fs -copyFromLocal README.txt input

    出现下面新问题 

     

     将fs.default.name中的IP地址改为127.0.0.1。

    切换到share/hadoop/mapreduce目录中执行下面语句

     hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount input output

    执行下面命令看是否生成output目录

     hadoop fs -ls

    执行下面命令查看具体结果

     hadoop fs -cat

    因此本人为了方便直接将配置好的hadoop文件copy到其他的Ubuntu系统中,直接使用scp命令,需要Ubuntu系统中开启ssh

    lixiaojiaodeMacBook-Pro:cloudcomputing lixiaojiao$ scp -r hadoop-2.2.0 lixiaojiao@192.168.31.126:/home/lixiaojiao/software
    lixiaojiaodeMacBook-Pro:cloudcomputing lixiaojiao$ scp -r hadoop-2.2.0 lixiaojiao@192.168.31.218:/home/lixiaojiao/software

    然后通过执行之上的wordcount程序验证是否成功

  • 相关阅读:
    Shell脚本编程-02-----shell编程之条件语句
    ELK 简介
    Linux 下的网卡文件配置
    Tomcat 简介
    Docker 基本操作
    zabbix 介绍
    CentOS 上搭建 Kubernetes 集群
    Docker 简介
    yum 源的配置安装
    Docker 入门
  • 原文地址:https://www.cnblogs.com/lixiaojiao-hit/p/4886899.html
Copyright © 2011-2022 走看看