Hadoop环境安装(三)基于伪分布式系统的Hadoop配置

Hadoop是基于分布式的系统应用,但很多时候我们只是进行简单的测试,没有必要做集群。所谓的伪分布式本质上就是进行单机版的Hadoop配置。

1.在Hadoop中不允许IP地址变更,所以要保证从项目的开发到运行结束状态,都要求IP地址是同一个,如果变更了就要重头来过

(编辑-虚拟网络编辑器)

2.为了保证配置的方便,那么一定要为每台电脑设置主机名称

#vim /etc/hostname

将里面的localhost修改为hadoopm

3.修改主机的映射配置

在里面追加IP地址与hadoopm主机名称的映射

#ifconfig

#vim /etc/hosts

 

4.为了使配置生效,我们重启系统,输入reboot

5.在电脑上配置ssh免登陆处理

在整个Hadoop的处理过程中,都是使用ssh实现通讯(就算在本机也一样)

  • 由于电脑上可能已经出现过SSH的相关配置,所以建议删除在根路径下的“.ssh”文件夹

    如图所示,并未存在已有配置,故不需要删除。

    如果存在ssh配置,则

    #rm -rf ~/.ssh

  • 在hadoop主机上生成ssh 

    # ssh-keygen -t rsa

    接下来所有出现的配置信息都使用默认的方式进行处理

  • 将公钥信息保存在授权认证的文件之中,“authorized_keys” 文件里面

    root@hadoopm:~# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

     那么以后就可以进行免登陆处理

  • 测试登录

    #ssh root@hadoopm

    登录之后变成了远程连接,那么此时可以使用exit退出当前连接

6.实现Hadoop的相关配置,需要配置如下几个配置(/home/shawnee/local/hadoop/etc/hadoop)

  • 配置“core-site.xml”,确定Hadoop的核心信息,包括临时目录、访问地址
  • 配置“yarn-site.xml”,可以理解为配置相关job的处理
  • 配置“hdfs-site.xml”,可以确定文件的备份个数以及数据文件夹的路径

7.配置“core-site.xml”文件

<configuration>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/home/root/hadoop_tmp</value>
                <description>Abase for other temporary directories.</description>
        </property>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://hadoopm:9000</value>
        </property>
</configuration> 

本文件配置的“hdfs://hadoopm:9000”信息,描述的是日后打开的页面管理器的路径
本配置中最重要的:“/home/root/hadoop_tmp”配置的是临时文件信息,如果不配置,就会在hadoop的文件夹里生成“tmp”文件(“/home/shawnee/local/hadoop/tmp/”)
如果这样配置,一旦重新启动,所有信息都会被清空,也就是说此时Hadoop的环境就失效了
由于本次用的Hadoop2.x开发版本,一般而言默认端口是9000,如果是1.x开发版本,默认为8020

为了保证整体的运行不出错,可以直接建立一个“/home/root/hadoop_tmp”

#cd ~
#mkdir hadoop_tmp

  

8.修改“hdfs-site.xml”文件

<configuration>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:///usr/local/hadoop/dfs/name</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:///usr/local/hadoop/dfs/data</value>
        </property>
        <property>
                <name>dfs.namenode.http-address</name>
                <value>hadoopm:50070</value>
        </property>
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>hadoopm:50090</value>
        </property>
        <property>
                <name>dfs.permissions</name>
                <value>false</value>
        </property>
</configuration>

在以上的配置中有如下的意义:

“dfs.replication”表示文件的副本数,一般情况下,一个文件会备份3份

“dfs.namenode.name.dir”定义名称结点路径

“dfs.datanode.data.dir”定义数据文件结点路径

“dfs.namenode.http-address”名称服务的http路径访问

“dfs.namenode.secondary.http-address”第二名称结点

“dfs.permissions”权限认证问题,如果设置了,以后可能无法进行文件处理访问

9.配置“yarn-site.xml”文件

<configuration>
        <property>
                <name>yarn.resourcemanager.admin.address</name>
                <value>hadoopm:8033</value>
        </property>
        <property>
                <name>yarn.nodemanager.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>
        <property>
                <name>yarn.resourcemanager.resource-tracker.address</name>
                <value>hadoopm:8025</value>
        </property>
        <property>
                <name>yarn.resourcemanager.scheduler.address</name>
                <value>hadoopm:8030</value>
        </property>
        <property>
                <name>yarn.resourcemanager.address</name>
                <value>hadoopm:8050</value>
        </property>
        <property>
                <name>yarn.resourcemanager.scheduler.address</name>
                <value>hadoopm:8030</value>
        </property>
        <property>
                <name>yarn.resourcemanager.webapp.address</name>
                <value>hadoopm:8088</value>
        </property>
        <property>
                <name>yarn.resourcemanager.webapp.https.address</name>
                <value>hadoopm:8090</value>
        </property>
</configuration>

  

10.创建一个masters文件,里面写上主机名称

由于Hadoop属于分布式开发环境,考虑到日后要进行集群的搭建

建议在“/home/shawnee/local/hadoop/etc/hadoop/”目录中创建一个masters文件,里面写上主机名称,内容就是hadoopm(之前在hosts文件里面定义的主机名称)(如果是单机环境不写也可以,这里会写上)

root@hadoopm:/home/shawnee/local/hadoop/etc/hadoop# vim masters

11.修改从节点文件"slaves",增加hadoopm

root@hadoopm:/home/shawnee/local/hadoop/etc/hadoop# vim slaves

12.由于此时是将所有的namenode、datanode保存路径设置在hadoop目录中,如果为了保险起见,可以自己创建

root@hadoopm:/home/shawnee/local/hadoop# mkdir dfs dfs/name dfs/data

如果hadoop出现了问题之后并需要重新配置,请把这两个文件夹彻底清除

13.格式化文件系统

猜你喜欢

转载自www.cnblogs.com/exciting/p/9108914.html
今日推荐