一篇解决Hadoop3.1.1伪分布式安装部署
  • 分类:大数据
  • 发表:2019-05-01
  • 围观(1,960)

前言

在学习大数据时,无可避免地会遇到Hadoop的安装部署。Hadoop部署可以使用伪分布式部署和全分布式部署。初学者,可以先练习伪分布式部署。
在Hadoop3.1.1进行伪分布式部署时,遇到了很多坑。现将完整的部署方式进行分享!其实官方文档和网上随便找的,都是有问题的。

本安装步骤是在Centos6.5环境下,Hadoop版本为3.1.1。Centos7基本也类似。
本次配置服务器节点名称为node01,如不做说明,则node01就代表服务器名。
具体步骤主要如下:

1. 安装JDK

Hadoop依赖JDK,因此在安装Hadoop之前,
必须确保服务器已经成功安装JDK。具体步骤就不展开了。如果连JDK都不会安装,我想,此说明文档不适合你。

2. 配置Hadoop

下载hadoop-3.1.1.tar.gz,并上传至服务器。
我上传路径为/opt/hadoop/目录下。
解压hadoop-3.1.1.tar.gz

tar -zxvf hadoop-3.1.1.tar.gz

以下操作,都是在/opt/hadoop/hadoop-3.1.1目录下进行。
①配置etc/hadoop/hadoop-env.sh

vi etc/hadoop/hadoop-env.sh

直接shift+g,跳转到文件末尾
追加如下代码:

export JAVA_HOME=/usr/java/jdk1.8.0_181 #配置JDK路径请将JDK路径换成你服务器的路径
export HDFS_NAMENODE_USER=root #配置namenode用户
export HDFS_DATANODE_USER=root #配置datanode用户
export HDFS_SECONDARYNAMENODE_USER=root #配置secondary namenode用户

保存并退出。
一般文档,都只讲配置JAVA_HOME,其他几项都不配置,其实一启动,就会报错。在3.0版本中,就需要指定这几个参数值。
②配置etc/hadoop/core-site.xml

vi etc/hadoop/core-site.xml

完整配置代码如下:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://node01:9820</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/var/hadoop/peseudo</value>
    </property>
</configuration>

除了需要配置节点地址之外,还需要配置tmp目录。主要原因是元数据保存的路径,也存放在此目录下。默认保存在系统的/tmp目录下,是极其危险的。
③配置etc/hadoop/hdfs-site.xml

vi etc/hadoop/hdfs-site.xml

完整配置代码如下:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>node01:9868</value>
    </property>
</configuration>

主要包括副本数和secondary节点的地址
④配置etc/hadoop/workers

vi etc/hadoop/workers

将localhost改成节点名称 node01

node01

3. 启动Hadoop

①格式化文件系统

bin/hdfs namenode -format


②启动

sbin/start-dfs.sh


其中:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable,其实只是警告,并不影响Hadoop的启动(当时一直以为没有启动成功,一直找这方面的问题解决办法,其实并不影响)。
使用jps,查看已经启动NameNode、DataNode、SecondaryNameNode三个角色,即表示成功。

总结

至此,Hadoop3.1.1伪分布式安装部署完毕。如有问题,请关注微信公众号,进行问题反馈。


扫描关注,及时获取最新消息!

转载本站文章,请注明出处:呦呦工作室

Top