centos+虚拟机配置hadoop2.5.2-hadoop文件配置

在上一节《centos+虚拟机配置hadoop2.5.2-前期准备》,讲了一下配置hadoop的前期工作,方便我们之后的操作。做好前期的准备工作之后,可以进行hadoop的安装配置了。

本文配置的hadoop版本为2.5.2,可以到这里下载:http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.5.2/   我下载的是tar.gz格式的。

下载完成,上传到centos服务器(虚拟机里的centos)。首先解压,我把它解压到

这个目录下:/env/

tar -zvxf hadoop-2.5.2.tar.gz -C /env/

随后要设置环境变量。把这些命令写入/etc/profile和~/.bashrc 中,说个题外话,通常我们配置环境变量都会接触到这两个文件,他们到底有什么区别呢?找了找资料:

bashrc与profile都用于保存用户的环境信息,bashrc用于交互式non-loginshell,而profile用于交互式login shell

先编辑/etc/profile

vi /etc/profile

在文本的末尾加入以下命令,具体的路径以你自己配置的为准:

export HADOOP_PREFIX=/env/hadoop-2.5.2
export YARN_CONF_DIR=/env/hadoop-2.5.2
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_PREFIX/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib"
export HADOOP_HOME=/env/hadoop-2.5.2
export HADOOP_HOME_WARN_SUPPRESS=1

更改profile
使配置生效:

source /etc/profile 

再编辑~/.bashrc

vi ~/.bashrc

加入以下内容,具体路径仍以你的配置为准:

export JAVA_HOME=/usr/java/jdk1.7.0_79
export JRE_HOME=/usr/java/jdk1.7.0_79/jre
export HADOOP_HOME=/env/hadoop-2.5.2
export HADOOP_DEV_HOME=/env/hadoop-2.5.2
export HADOOP_COMMON_HOME=/env/hadoop-2.5.2
export HADOOP_HDFS_HOME=/env/hadoop-2.5.2
export HADOOP_CONF_DIR=/env/hadoop-2.5.2/conf

使配置生效:

source ~/.bashrc

然后在另外两台主机上重复以上步骤,将环境变量配置好。

接下来,来配置一下hadoop。切换目录

cd /env/hadoop-2.5.2/etc/hadoop/

要配置5个文件:core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml和slaves

首先编辑core-site.xml,在configuration里面添加以下内容

<configuration>
    <property>
        <name>fs.default.name</name>
        <value>hdfs://main:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/env/hadoop-2.5.2/tmp</value>
    </property>
</configuration>

随后编辑vim hdfs-site.xml,配置hadoop的文件系统hdfs。在configuration里面添加以下内容

<configuration>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/home/hadoop/dfs/name</value>
    </property>
    <property>
        <name>dfs.namenode.data.dir</name>
        <value>file:/home/hadoop/dfs/data</value>
    </property>                                                                     <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

编辑yarn-site.xml,这个是map-reduce的新框架yarn的配置文件。添加以下内容,里面的value,可以设置主机名,也可以设置为ip:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.resourcemanager.address</name>
        <value>192.168.254.100:8032</value>
    </property>
    <property> 
        <name>yarn.resourcemanager.scheduler.address</name>
        <value>192.168.254.100:8030</value>
        </property>
    <property>
        <name>yarn.resourcemanager.resource-tracker.address</name>
        <value>192.168.254.100:8031</value>
    </property>
    <property>
        <name>yarn.resourcemanager.admin.address</name>
        <value>192.168.254.100:8033</value>
    </property>
    <property>
        <name>yarn.resourcemanager.webapp.address</name>
        <value>192.168.254.100:8088</value>
    </property>
</configuration>

然后编辑mapred-site.xml,这个是map-reduce任务页面的配置,添加以下内容:

<configuration>  
    <property>    
        <name>mapred.job.tracker</name>   
        <value>main:9001</value>  
    </property>
</configuration>

最后,还是在刚才的目录下,编辑slaves文件,将两个子节点的ip或者主机名添加进去

vi slaves

编辑内容如下:

#localhost
192.168.254.101
192.168.254.102

保存,搞定!
将配置好的hadoop直接复制到另外两台主机(-r参数是复制文件夹,不要漏掉):

scp -r /env/hadoop-2.5.2 root@slave1:/env/
scp -r /env/hadoop-2.5.2 root@slave2:/env/

至此,配置完毕,下一篇还是老样子,跑一个简单的程序。

发表评论

电子邮件地址不会被公开。 必填项已用*标注