美文网首页数据科学家的自我修养Hadoop大数据
Hadoop实战(1)_阿里云搭建Hadoop2.x的伪分布式环

Hadoop实战(1)_阿里云搭建Hadoop2.x的伪分布式环

作者: padluo | 来源:发表于2017-11-16 17:42 被阅读71次

    环境:阿里云服务器 CentOS 7 x86_64

    安装介质:jdk-7u75-linux-i586.tar.gz,hadoop-2.4.1.tar.gz

    安装jdk

    tar -zxvf jdk-7u75-linux-i586.tar.gz
    

    配置环境变量:

    # vi .bash_profile
    
    JAVA_HOME=/root/training/jdk1.7.0_75
    export JAVA_HOME
    
    PATH=$JAVA_HOME/bin:$PATH
    export PATH
    
    # source .bash_profile
    # which java
    # java -version
    

    bug解决:64bit的操作系统,无法运行32bit的应用程序,需要安装32bit的glibc库。

    -bash: /root/training/jdk1.7.0_75/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
    
    # yum install glibc*.i686
    # locate /lib/ld-linux.so.2
    # rpm -qf /lib/ld-linux.so.2
    

    安装Hadoop

    # tar -zxvf hadoop-2.4.1.tar.gz
    

    配置环境变量:

    # vi .bash_profile
    
    HADOOP_HOME=/root/training/hadoop-2.4.1
    export HADOOP_HOME
    
    PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
    export PATH
    
    # source .bash_profile
    

    本地模式的配置

    参数文件 配置参数 参考值
    hadoop-env.sh JAVA_HOME /root/training/jdk1.7.0_75
    # vi hadoop-env.sh
    
    export JAVA_HOME=/root/training/jdk1.7.0_75
    

    修改hostname,/etc/hosts下的地址必须使用私有地址。

    # vi /etc/hosts
    
    192.168.1.107 izwz985sjvpoji48moqz01z
    

    验证mapreduce

    # hadoop jar hadoop-mapreduce-examples-2.4.1.jar wordcount ~/training/data/input/data.txt ~/training/data/output/
    # more part-r-00000
    

    伪分布式模式配置

    参数文件 配置参数 参考值 备注
    hadoop-env.sh JAVA_HOME /root/training/jdk1.7.0_75 Java的home目录
    hdfs-site.xml dfs.replication 1 数据的冗余度
    core-site.xml fs.defaultFS hdfs://<hostname>:9000 namenode的IP地址和端口,9000是RPC通信的端口
    core-site.xml hadoop.tmp.dir /root/training/hadoop-2.4.1/tmp 如不修改默认为/tmp,设置的路径必须事先存在
    mapred-site.xml mapreduce.framework.name yarn 指定MR运行在yarn上
    yarn-site.xml yarn.resourcemanager.hostname <hostname> 指定YARN的老大(ResourceManager)的地址
    yarn-site.xml yarn.nodemanager.aux-services mapreduce_shuffle reducer获取数据的方式

    hdfs-site.xml

    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    

    core-site.xml

    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.1.107:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/training/hadoop-2.4.1/tmp</value>
    </property>
    

    mapred-site.xml,cp mapred-site.xml.template mapred-site.xml

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

    yarn-site.xml

    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>192.168.1.107</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    

    验证HDFS和mapreduce

    # cd ~/trainging
    # ls hadoop-2.4.1/tmp/
    # hdfs namenode -format
    # start-all.sh
    # jps
    5828 NodeManager
    6284 Jps
    5438 SecondaryNameNode
    5288 DataNode
    5579 ResourceManager
    5172 NameNode
    # hdfs dfsadmin -report
    # hdfs dfs -mkdir /input
    # hdfs dfs -put data/input/data.txt /input/data.txt
    # hdfs dfs -lsr /
    # hadoop jar hadoop-mapreduce-examples-2.4.1.jar wordcount /input/data.txt /output
    # hdfs dfs -cat /output/part-r-00000
    # stop-all.sh
    # jps
    

    配置Hadoop的SSH免密码登录

    Server A Server B
    1、生成A的密钥和公钥ssh-keygen -t rsa -
    2、将A的公钥 --> B,ssh-copy -i --> B 3、得到Server A的公钥
    - 4、随机产生一个字符串:helloworld
    - 5、使用A的公钥进行加密:*****
    - 6、将加密后的字符串***发给A
    7、得到B发来的加密字符串 -
    8、使用私钥进行解密 --> helloworld -
    9、将解密后的helloworld发给B 10、得到A发来的解密后的字符串helloworld
    - 11、对比step4和step10这两个字符串,一样则Server B允许Server A免密码登录到Server B
    # cd ~
    # ls .ssh/
    hnown_hosts
    # ssh-keygen -t rsa
    # ssh-copy-id -i .ssh/id_rsa.pub root@120.78.89.97
    # more .ssh/authorized_keys
    

    微信公众号「数据分析」,分享数据科学家的自我修养,既然遇见,不如一起成长。

    数据分析

    转载请注明:转载自微信公众号「数据分析」


    相关文章

      网友评论

        本文标题:Hadoop实战(1)_阿里云搭建Hadoop2.x的伪分布式环

        本文链接:https://www.haomeiwen.com/subject/fwcrvxtx.html