hadoop2.6安装配置过程摘要

今天心血来潮,学习一下hadoop,现将安装配置过程记录如下,供以后查阅。

1.运行环境相关

    1、两台VMWare虚拟机,RHEL6.4(64位)、jdk1.7,相关安装过程省略。

    2、master 192.168.36.129    slave1 192.168.36.130,并将主机IP配置信息添加到/etc/hosts中

    3、Linux中创建hadoop用户,hadoop安装目录为/usr/local/hadoop

    4、将hadoop-2.6.0.tar.gz解压缩到/usr/local/hadoop目录,在/home/hadoop/.bash_profile中添加配置环境变量(这两个环境变量必需配置

           HADOOP_HOME=/usr/local/hadoop

           HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

2.主要记录配置的过程

    2.1 配置两台主机ssh互信

            1.在A机下生成公钥/私钥对。

ssh-keygen -t rsa -P ''
   会在/home/hadoop下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub。
            2.把master机器下的id_rsa.pub复制到slave1机器下的.ssh/authorized_keys文件里。
scp .ssh/id_rsa.pub [email protected]:/home/hadoop/id_rsa.pub.master
            3.登录slave1把从master机复制的id_rsa.pub.master添加到.ssh/authorzied_keys文件里。
cat id_rsa.pub.master >> .ssh/authorized_keys
      4.此时master可以免密码登录slave1,在slave1上重复1-3步即可配置slave1免密码登录master

  2.2参考官网配置参数

        官网安装文档链接为http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html

现将${HADOOP_CONF_DIR}目录下的core-site.xml、hdfs-site.xml、yarn-site.xml和mapred-site.xml配置内容记录如下:

core-site.xml

<configuration>
<property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
</property>
<property>
        <name>io.file.buffer.size</name>
        <value>131072</value>
</property>
</configuration>

hdfs-site.xml

<configuration>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/hadoop/hdfs/name</value>
</property>
<property>
    <name>dfs.blocksize</name>
    <value>268435456</value>
</property>
<property>
    <name>dfs.namenode.handler.count</name>
    <value>100</value>
</property>
<property>
    <name>dfs.data.dir</name>
    <value>file:/usr/local/hadoop/hdfs/data</value>
</property>
</configuration>

yarn-site.xml

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

mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.map.memory.mb</name>
        <value>1536</value>
    </property>
    <property>
        <name>mapreduce.map.java.opts</name>
        <value>-Xmx1024M</value>
    </property>
    <property>
        <name>mapreduce.reduce.memory.mb</name>
        <value>3072</value>
    </property>
    <property>
        <name>mapreduce.reduce.java.opts</name>
        <value>-Xmx2560M</value>
    </property>
    <property>
        <name>mapreduce.task.io.sort.mb</name>
        <value>512</value>
    </property>
    <property>
        <name>mapreduce.task.io.sort.factor</name>
        <value>100</value>
    </property>
    <property>
        <name>mapreduce.reduce.shuffle.parallelcopies</name>
        <value>50</value>
    </property>
</configuration>

  2.3启动

       master:
       1、格式化namenode $HADOOP_HOME/bin/hdfs namenode -format
       2、启动namenode  $HADOOP_HOME/sbin/hadoop-daemon.sh --config $HADOOP_CONF_DIR --script hdfs start namenode
       3、启动datanode  $HADOOP_HOME/sbin/hadoop-daemon.sh --config $HADOOP_CONF_DIR --script hdfs start datanode
       4、启动resourcemanager $HADOOP_HOME/sbin/yarn-daemon.sh --config $HADOOP_CONF_DIR start resourcemanager
       5、启动nodemanager  $HADOOP_HOME/sbin/yarn-daemon.sh --config $HADOOP_CONF_DIR start nodemanager
       slave1:
       1、 格式化namenode $HADOOP_HOME/bin/hdfs namenode -format
       2、 启动datanode  $HADOOP_HOME/sbin/hadoop-daemon.sh --config $HADOOP_CONF_DIR --script hdfs start datanode
       3、启动nodemanager $HADOOP_HOME/sbin/yarn-daemon.sh --config $HADOOP_CONF_DIR start nodemanager

       需要停止进程的话,将上述命令中的start替换为stop即可。

  2.4启动过程中的日志

            日志路径为$HADOOP_HOME/logs

            常见warn日志及解决方法:

            1、WARN org.apache.hadoop.hdfs.server.common.Util: Path /usr/local/hadoop/hdfs/data should be specified as a URI in configuration files. Please update hdfs configuration

               原因:hdfs-site.xml中配置的路径不符合URI格式规范,应为“file:/usr/local/hadoop/hdfs/data”

            2、 WARN org.apache.hadoop.util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

                网上说是因为官方提供的lib目录中.so文件是在32位系统下编译的,如果是64位系统,需要自己下载源码在64位上重新编译,具体操作可参考网上的文章。本人暂时忽略该问题,也可运行。

            3、WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Problem connecting to server:master/192.168.36.129:9000

               该问题为slave1上报出的,原因是未关闭防火墙,连接被拒。

3.运行

        在master上进入${HADOOP_HOME}/share/hadoop/mapreduce目录,运行 hadoop jar hadoop-mapreduce-examples-2.6.0.jar pi 1 10

        控制台会输出执行结果,同时也可用浏览器查看页面http://192.168.36.129:8088/cluster查看任务的执行状态

你可能感兴趣的:(hadoop,云计算)