当前位置:首页 > CN2资讯 > 正文内容

hadoop linux命令 linux hadoop配置

2天前CN2资讯



在这个地址去下载 hadoop(国内的速度快):http:///apache/hadoop/common/

下载好后,将安装包上传到服务器:linux上可通过rz命令进行上传,或者通过sftp上传
上传后解压缩: tar -zxvf hadoop-3.1.3.tar.gz
进行伪分布式/单机版配置:

这是我的 etc/profile文件里的配置,可以参考:

{ # set java_home enviroment export JAVA_HOME=/usr/java/jdk1.8.0_211 export JRE_HOME=$JAVA_HOME/jre export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:/usr/local/bin/go export GOPATH=/root/go # hive export HIVE_HOME=/usr/hadoop/apache-hive-3.1.2-bin export PATH=$PATH:$HIVE_HOME/bin # hadoop export HADOOP_HOME=/usr/hadoop/hadoop-3.1.3 export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS=-Djava.library.path=$HADOOP_HOME/lib # hbase export HBASE_HOME=/usr/hbase/hbase-2.2.3 export PATH="$HBASE_HOME/bin:$PATH" }

执行下面命令让配置立刻生效,注意:中间有空格

source /etc/profile

配置 $HADOOP_HOME/etc/hadoop/core-site.xml

<configuration> <!--指定文件系统为HDFS及NameNode主节点运行的机器端口和ip地址--> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> <!--本地临时存储目录--> <property> <name>hadoop.tmp.dir</name> <value>file:/home/hadoop/hadoop-3.1.3/data/tmpData</value> </property> </configuration>

配置 $HADOOP_HOME/etc/hadoop/hdfs-site.xml

<configuration> <!-- hdfs副本数量--> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/home/hadoop/hadoop-3.1.3/data/tmpData/dfs/name</value> </property> <property> <name>dfs.namenode.data.dir</name> <value>file:/home/hadoop/hadoop-3.1.3/data/tmpData/dfs/data</value> </property> <!-- 开启权限,远程客户端可以通过脚本给hdfs创建目录 --> <property> <name>dfs.permissions</name> <value>false</value> </property> <property> <name>dfs.datanode.http.address</name> <value>0.0.0.0:50070</value> </property> </configuration>


配置 $HADOOP_HOME/etc/hadoop/,
配置 $HADOOP_HOME/etc/hadoop/,
配置 $HADOOP_HOME/etc/hadoop/: 均设置JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_231

配置公钥

ssh-keygen -t rsa cat .ssh/id_rsa.pub >> .ssh/authorized_keys


启动hadoop

cd $HADOOP_HOME #格式化namenode bin/hadoop namenode -format

注意:有的人如果是直接复制粘贴进配置文件的,格式化时可能报 编码错误,删掉直接在配置文件里写就可以

#启动 sbin/

启动时可能会报错:ERROR: but there is no YARN_RESOURCEMANAGER_USER defined. Aborting operation.
按大括号里内容调整配置:

{ 将,两个文件顶部添加以下参数 HDFS_NAMENODE_USER=root HDFS_DATANODE_USER=root HDFS_SECONDARYNAMENODE_USER=root YARN_RESOURCEMANAGER_USER=root YARN_NODEMANAGER_USER=root ,顶部也需添加以下 YARN_RESOURCEMANAGER_USER=root HADOOP_SECURE_DN_USER=yarn YARN_NODEMANAGER_USER=root }

启动时可能会警告:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
按大括号里内容调整配置:
{
    可能下面三种之一原因造成
    原因一:是版本 默认 64位 而 系统是  32位,要自己验证一下
        进入:/usr/local/hadoop-2.5.2/lib/native
        用ldd命令查看依赖库:ldd .1.0.0
        提示:.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped
        是64位,所以并不是版本的问题
        
    原因二:是依赖库的问题

        进入:/usr/local/hadoop-2.5.2/lib/native
        用ldd命令查看依赖库:ldd .1.0.0
        如果提示类似信息:./.1.0.0: /lib64/libc.so.6: version `GLIBC_2.25' not found (required by ./.1.0.0)
        可以看到依赖的都是/lib64/的动态库,所以不是64位/32位问题。但是看到报错,GLIBC_2.25找不到,现在检查系统的glibc库
        输入命令:ldd --version
        会输出如下信息:

        ldd (GNU libc) 2.17
        Copyright (C) 2012 Free Software Foundation, Inc.
        This is free software; see the source for copying conditions.  There is NO
        warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
        Written by Roland McGrath and Ulrich Drepper.
        统预装的glibc库是2.12版本,而hadoop期望是2.14版本,所以打印警告信息。
        现在有两个办法,重新编译glibc.2.25版本,安装后专门给hadoop使用,这个至于怎么编译安装自己百度哈。
        可以直接确认下glibc 目前支持的版本,如下查询方法:
        输入命令:strings /lib64/libc.so.6|grep GLIBC

GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_2.3.4 GLIBC_2.4 GLIBC_2.5 GLIBC_2.6 GLIBC_2.7 GLIBC_2.8 GLIBC_2.9 GLIBC_2.10 GLIBC_2.11 GLIBC_2.12 GLIBC_PRIVATE


        可以看到目前只支持到 2.25,但是提示一下,升级这个库是有风险的

        第二个办法直接在log4j日志中去除告警信息。在//usr/hadoop/hadoop-3.1.3/etc/hadoop/log4j.properties文件中添加

log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

        原因三 :环境配置的问题:

        在/etc/profile中,添加下面配置:

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_HOME=/usr/hadoop/hadoop-3.1.3 export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"


        最后记得使配置生效:source /etc/profile

        并把相同配置添加到文件末尾。

}

先停了上次启动的进程:  ./
再进行启动:sbin/

输入命令  :  jps
可以看到如下提示:

[root@Aztec sbin]# jps 10800 SecondaryNameNode 12416 jar 10561 DataNode 11065 ResourceManager 28233 Bootstrap 27770 jar 11597 Jps 11229 NodeManager 10383 NameNode

可以看到namenode和datanode进程都已启动.至此,单机版hadoop已经安装并成功启动!


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/25677.html

    分享给朋友:

    “hadoop linux命令 linux hadoop配置” 的相关文章

    RackNerd Windows VPS的硬件条件与性能评测

    在选择虚拟服务器服务商时,硬件条件是我最关注的部分。RackNerd作为一家提供多种配置Windows VPS的服务商,其硬件条件非常吸引。接下来,我将详细介绍RackNerd在硬件配置方面的一些关键特点。 处理器配置 RackNerd使用的AMD Ryzen 3900X处理器,让人印象深刻。这个处...

    强制结束占用短裤:高效解决文件锁定问题的方法与工具

    强制结束占用短裤这一概念听起来可能有些陌生,但在计算机操作系统中,它扮演着一个非常重要的角色。当一个文件或进程被占用时,我们常常会发现自己无法删除、移动或修改这些文件。这时,强制结束的必要性就显而易见了。通过强制结束占用,我们可以有效地解除阻碍,重新获得对文件的掌控。 对于普通用户来说,主动解除文件...

    最优秀的IP检测工具,提升网络安全与性能的选择

    IP检测工具是一种极为重要的网络资源,旨在帮助用户识别和分析IP地址信息。像我们在日常上网时,需要了解自己的网络状态,了解与其他用户的连接关系,这时候IP检测工具就显得尤为重要。无论你是网络管理员、开发者,还是只是单纯的网络用户,这类工具总是能够给你带来实用的信息与帮助。 了解IP检测工具的工作原理...

    Putty 下載指南:如何快速安全地安裝和使用Putty

    什么是 Putty Putty 是一个广受欢迎的开源终端仿真程序,专门用于远程管理和访问系统。无论是在企业还是个人使用中,Putty都能让用户安全地连接到其他计算机。它支持多种协议,让用户轻松与远端服务器进行交互。虽然它主要在Windows环境中使用,但也有其他平台的版本可供选择。 我第一次接触Pu...

    使用VPS安装Chrome OS的全面指南

    使用VPS安装Chrome OS的全面指南 什么是Chrome OS? Chrome OS是谷歌推出的一款基于Linux内核的操作系统,专为云计算时代设计。这个系统主要聚焦于快速、安全和简便的使用体验,特别适合那些经常依赖网络应用的用户。最初是为Chromebook笔记本电脑开发的,但现在越来越多的...

    选择合适的国外服务器提升网站性能与安全性

    在今天的数字时代,国外服务器已经成为许多人对网络需求的一种解决方案。简单来说,国外服务器就是指位于其他国家的服务器,通常是为了更好地服务于全球用户。我第一次了解到国外服务器时,是因为一次国际项目的需要。当时项目要求在海外进行数据处理和存储,这让我对国外服务器的定义有了更深刻的认识。 使用国外服务器的...