Hadoop单机式伪分布式安装详解

  1. Ubuntu、centos7、6集群搭建:https://blog.csdn.net/qq_40938267/article/details/83476896
    一、准备阶段
    1、创建用户
            # useradd -m hadoop -s /bin/bash
                -m:自动建立用户的登入目录;
                -s:指定用户登入后所使用的shell; /bin/bash/ 作为shell
                shell只是用户与系统沟通的接口,各种不同的shell只是命令语法不用,语法不同而已。
    2、passwd +用户  修改用户密码
    3、visudo 用户 ALL=(ALL) ALL 
        sudo 是substitute user do (替用户做)的简写,它是一个应用程序。允许使用者透过安全的方式执行有特权的程序。
        sudo的配置文件位于/etc/sudoers目录下,visudo会锁住此文件,保存修改到临时文件,然后检查文件格式,确保正确后才会覆盖sudoers文件。必须保证sudoers格式正确,否则sudo将无法运行。visudo调用的默认编辑器是vi
  2. 4、SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 
        为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。
  3. 另外,spring的三点框架缩写也是ssh
        SSH 为 struts+spring+hibernate的一个集成框架,是目前较流行的一种Web应用程序开源框架。    集成SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。
  4. 5、,一般情况下,CentOS 默认已安装了 SSH client、SSH server,打开终端执行如下命令进行检验:
  5. rpm -qa | grep ssh:   RPM是RedHat Package      
        Manger(RedHat软件管理工具),是一种用于打包及安装工具-qa代表query(询问),a代表allgrep(global search rgular expression(RE) and print out the line):是一种强大的文本搜索工具
        grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来
    如果没有安装,使用yum进行安装:
       $ sudo yum install openssh-clients
       $ sudo yum install openssh-server
       yum(全称为 Yellow dog Updater,  Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,
    6、$ ssh localhost
       登录本地 需要密码
    7、设置无密码登录
       $exit
       $ cd ~/.ssh/      # 若没有该目录,请先执行一次ssh localhost
       $ ssh-keygen -t rsa   #rsa 专用密钥 ssh-keygen密码短语加密专用密钥 -t type 指定要创建的密钥类型
       $ cat id_rsa.pub >> authorized_keys  # id_rsa.pub给公钥加入授权  id_rsa私钥id_rsa.pub追加到authorized_keys已认证的主机列表里面。 这样本机对本机就是已认证的状态    
       密钥生成以及联系: https://blog.csdn.net/AnneQiQi/article/details/51174060
       $ chmod 600 ./authorized_keys    # 600代表设置拥有者可读写,其他人不可读写执行 的authorized_keys文件权限
       设置.ssh目录权限:$ chmod 700 -R .ssh
       linux命令大全详解:https://blog.csdn.net/u013197629/article/details/73608613
  6. 7、验证无密码登录$ ssh localhost
       退出等Hadoop账户
    二:java环境配置
  7. 8、安装java环境
        sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel
        配置一下 JAVA_HOME 环境变量在vim ~/.bashrchttps://blog.csdn.net/wuha0/article/details/7212724    
        PATH环境变量。作用是指定命令搜索路径,在命令行下面执行命令如javac编译java程序时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序。
                
        CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的。
        JAVA_HOME环境变量。它指向jdk的安装目录
    9.vim ~/.bashrc  
      etc/profile: 此文件为系统的每个用户设置环境信息。当用户登录时,该文件被执行一次,并从 /etc/profile.d 目录的配置文件中搜集shell 的设置。一般用于设置所有用户使用的全局变量。
  8. /etc/bashrc: 当 bash shell 被打开时,该文件被读取。也就是说,每次新打开一个终端 shell,该文件就会被读取
  9. 10.在文件最后加指向 JDK 的安装位置:export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
  10. 11.source ~/.bashrc    # 使变量设置生效
  11. source:使当前shell读入路径为filepath的shell文件并依次执行文件中的所有语句,通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录
        ~/是进入当前用户的主目录。比如我用的用户名是USER 那么命令 cd ~/ 就进入了/home/USER 目录
  12. 设置好后我们来检验一下是否设置正确:
       echo $JAVA_HOME     # 检验变量值  的路径https://zhidao.baidu.com/question/941050442393629332.html
       java –version查看当前java版本
       $JAVA_HOME/bin/java -version  # 与直接执行 java -version 一样
    三 hadoop的安装:
  13. Weget是一个下载文件工具:找下载的地址链接前面加weget,就能在linux中直接下载
       wget http://labfile.oss.aliyuncs.com/hadoop-2.6.0.tar.gz
       没有wget时  yum -y install wget 
       
       下面校验步骤网络正常的话可以不去验证:
       cat ~/下载/hadoop-2.6.0.tar.gz.mds | grep 'MD5' # 列出md5检验值
       # head -n 6 ~/下载/hadoop-7.1.tar.gz.mds # 2.7.1版本格式变了,可以用这种方式输出
       md5sum ~/下载/hadoop-2.6.0.tar.gz | tr "a-z" "A-Z" # 计算md5值,并转化为大写,方便比较
       hadoop-2.6.0-src.tar.gz是源码压缩文件。可以用eclipse导入研究源码,或者Maven构建编译打包。
        
      hadoop-2.6.0.tar.gz是已经官方发布版压缩包,可以直接使用。不过官网下载的hadoop发布版本只适合x86环境,若要x64的则需要Maven重新构建。
  14. *.mds 是描述文件,记录压缩包的MD5,SHA1等信息
  15. 1.Hadoop 安装至 /usr/local/ 中:
       sudo tar -zxf ~/下载/hadoop-2.6.0.tar.gz -C /usr/local    # 解压到/usr/local中  -C是当前目录/home/usr1
       cd /usr/local/
  16. Zxvf:
    x : 从 tar 包中把文件提取出来
    z : 表示 tar 包是被 gzip 压缩过的,所以解压时需要用 gunzip 解压
    v : 显示详细信息
    f xxx.tar.gz : 指定被处理的文件是 xxx.tar.gz
       sudo mv ./hadoop-2.6.0/  ./hadoop        # 将文件夹名改为hadoop
       sudo chown -R hadoop:hadoop ./hadoop   ./ 代表当前目录
       chown是命令用来修改目录的权限
       -R代表递归,就是从当前目录到他最下面的子目录
       hadoop:hadoop代表将目录和文件的owner和group都设成hadoop
  17. 课外知识:owner:文件的属主(拥有者)group:用户组内成员other:其他用户
       ./hadoop代表从当前目录hadoop开始修改
  18. 2. cd /usr/local/hadoop
    3、./bin/hadoop version  输入如下命令来检查 Hadoop 是否可用,成功则会显示 Hadoop 版本信息:
        Hadoop附带了丰富的例子。运行以下命令:可以看到所有例子,包括 wordcount、terasort、join、grep 等。 
        # ./hadoop jar ../share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar
        # cd /usr/local/hadoop
        # mkdir ./input
        #cp ./etc/hadoop/*.xml ./input   # 将配置文件作为输入文件
    4、./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'
        bin/hadoop jar(使用hadoop运行jar包) hadoop-*_examples.jar(jar包的名字) grep (要使用的类,后边的是参数)input output ‘dfs[a-z.]+’
  19. cd etc/hadoop -->vi hadoop-env.sh   文件末加上export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
  20. 整个就是运行hadoop示例程序中的grep,对应的hdfs上的输入目录为input、输出目录为output。 查询文件input output 中的字符串
       'dfs[a-z.]+':这个是正则表达式,查询dfs开头的,后面跟1个或1个以上的字母,比如 dfsa dfsb dfsc
    11、cat ./output/*          # 查看运行结
  21. Hadoop例子输出结果
  22. 注意,Hadoop 默认不会覆盖结果文件,因此再次运行上面实例会提示出错,需要先将 ./output 删除。
       rm -r ./output 
  23. 单机模式还有一种测试方式:
       $sudo vim /home/hadoop/.bashrc  //添加内容
       在/home/hadoop/.bashrc文件末尾添加下列内容:
  24. #HADOOP START
       export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
       export HADOOP_INSTALL=/usr/local/hadoop
       export PATH=$PATH:$HADOOP_INSTALL/bin
       export PATH=$PATH:$HADOOP_INSTALL/sbin
       export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
       export HADOOP_COMMON_HOME=$HADOOP_INSTALL
       export HADOOP_HDFS_HOME=$HADOOP_INSTALL
       export YARN_HOME=$HADOOP_INSTALL
       export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
       export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"
    #HADOOP END
       保存退出后,激活新加的环境变量,export将变量输出为环境变量
  25. $source ~/.bashrc
    创建输入的数据,暂时采用/etc/protocols文件作为测试
     $cd /usr/local/hadoop
     $sudo mkdir input   //建立一个文件
     $sudo cp /etc/protocols ./input   //复制文件或者目录
    执行Hadoop WordCount应用(词频统计)
    $bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.6.0-sources.jar org.apache.hadoop.examples.WordCount input output
        查看生成的单词统计数据     
       $cat output/*   //连接文件并显示内容
  26. 四:hadoop伪分布式配置
        在设置 Hadoop 伪分布式配置前,我们还需要设置 HADOOP 环境变量,执行如下命令在 ~/.bashrc 中设置:
        gedit ~/.bashrc
        Shell 命令
        这次我们选择用 gedit 而不是 vim 来编辑。gedit 是文本编辑器,类似于 Windows 中的记事本,会比较方便。保存后记得关掉整个 gedit 程序,否则会占用终端。在文件最后面增加如下内容:
    # Hadoop Environment Variables
         export HADOOP_HOME=/usr/local/hadoop   路径
         export HADOOP_INSTALL=$HADOOP_HOME   
         export HADOOP_MAPRED_HOME=$HADOOP_HOME    伪分布式数据处理MapReduce
         export HADOOP_COMMON_HOME=$HADOOP_HOME
         export HADOOP_HDFS_HOME=$HADOOP_HOME
         export YARN_HOME=$HADOOP_HOME
         export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
         export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
        保存后,不要忘记执行如下命令使配置生效:source ~/.bashrc
  27. 下面是配置文件:
           Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。
            core-site.xml是全局配置,hdfs-site.xml和mapred-site.xml分别是hdfs和mapred的局部配置。
          # gedit ./etc/hadoop/core-site.xml
    <configuration>
      <property>
         <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
      </property>
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
      </property>
    </configuration>
    # gedit ./etc/hadoop/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/tmp/dfs/name</value>
      </property>
      <property>
         <name>dfs.datanode.data.dir</name>
         <value>file:/usr/local/hadoop/tmp/dfs/data</value>
      </property>
    </configuration>
    下面是对配置文件的部分解释:
    1、修改配置文件 core-site.xml (vim /usr/local/hadoop/etc/hadoop/core-site.xml):
        <configuration>
        <property>           //指定Hadoop运行时产生文件的存储目录
           <name>hadoop.tmp.dir</name>
            <value>file:/usr/local/hadoop/tmp</value>
            <description>Abase for other temporary directories.</description>
        </property>
        <property>    //fs.defaulitFS中配置9000监听端口。这个属性用来指定namenode的hdfs协议的文件系统通信地址,可以指定一个主机+端口,也可以指定为一个namenode服务(这个服务内部可以有多台namenode实现它的namenode服务)
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
          </property>
      </configuration>
    2、修改配置文件 hdfs-site.xml:
        <configuration>
        <property>     //指定hdfs副本的数量
            <name>dfs.replication</name>
            <value>1</value>
        </property>
        <property>      //将Hadoop配置成伪分布模式,则Hadoop会将各种信息存入\tmp目录中,所以当系统重启之后,这些信息会丢失,用户不得不重新执行hadoop namenode -format命令。为了避免这种情况,可以在hdfs-site.xml文件中添加一个属性,属性名为dfs.name.dir,值为你想存的目录,只要不存在\tmp下,就不会遇到每次重启之后元数据丢失的情况。
            <name>dfs.namenode.name.dir</name>//namenode数据的存放地点。也就是namenode元数据存放的地方,记录了hdfs系统中文件的元数据
            <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>      //datanode数据的存放地点
            <name>dfs.datanode.data.dir</name>
            <value>file:/usr/local/hadoop/tmp/dfs/data</value>
       </property>
    </configuration>
         <configuration>
              <property>
            <name>fs.defaultFS</name>
            <value>hdfs://master:9000/</value>
            <description>默认的HDFS端口,用于NameNode与DataNode之间到的通讯,IP为NameNode的地址</description>
        </property>
           <property>
                  <name>hadoop.tmp.dir</name>
                  <value>/root/BigData/hadoop-3.0.0/tmp</value>
                   <description>存放hadoop文件系统依赖的基本配置</description>
                   </property>
     </configuration>

  28. 配置完成后,执行 NameNode 的格式化:./bin/hdfs namenode -format
    成功的话,会看到 “successfully formatted” 和 “Exitting with status 0” 的提示,若为 “Exitting with status 1” 则是出错
    接着开启 NaneNode 和 DataNode 守护进程:./sbin/start-dfs.sh
    1. 启动完成后,可以通过命令 jps 来判断是否成功启动,若成功启动则会列出如下进程: “NameNode”、”DataNode”和SecondaryNameNode(如果 SecondaryNameNode 没有启动,请运行 sbin/stop-dfs.sh 关闭进程,然后再次尝试启动尝试)。如果没有 NameNode 或 DataNode ,那就是配置不成功,请仔细检查之前步骤,或通过查看启动日志排查原因。
    2. Jps   是JDK提供的一个显示当前所有java进程(pid)的命令
             成功启动后,可以访问 Web 界面 http://localhost:50070 查看 NameNode 和 Datanode 信息,还可以在线查看 HDFS 中的文件。
             这里强调一下:如在windows中看不了50700端口,在自己的linux的操作系统的firefox中查看,如果不是桌面的,打开这个链接根据只是可以转换为桌面式的操作系统:https://blog.csdn.net/qq_40938267/article/details/84402822
    3. 上面的单机模式,grep 例子读取的是本地数据,伪分布式读取的则是 HDFS 上的数据。要使用 HDFS,首先需要在 HDFS 中创建用户目录:./bin/hdfs dfs -mkdir -p /user/hadoop
            Mkdir -p可以直接创建多级目录
    4. 接着将 ./etc/hadoop 中的 xml 文件作为输入文件复制到分布式文件系统中,即将 /usr/local/hadoop/etc/hadoop 复制到分布式文件系统中的 /user/hadoop/input 中。我们使用的是 hadoop 用户,并且已创建相应的用户目录 /user/hadoop ,因此在命令中就可以使用相对路径如 input,其对应的绝对路径就是 /user/hadoop/input:
               ./bin/hdfs dfs -mkdir /user/hadoop/input
               ./bin/hdfs dfs -put ./etc/hadoop/*.xml /user/hadoop/input
           复制完成后,可以通过如下命令查看 HDFS 中的文件列表:
               ./bin/hdfs dfs -ls /user/hadoop/input
           伪分布式运行 MapReduce 作业的方式跟单机模式相同,区别在于伪分布式读取的是HDFS中的文件(可以将单机步骤中创建的本地 input 文件夹,输出结果 output 文件夹都删掉来验证这一点)。
               ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep /user/hadoop/input output 'dfs[a-z.]+'
  29. 查看运行结果的命令(查看的是位于 HDFS 中的输出结果):
            ./bin/hdfs dfs -cat output/*
        结果如下,注意到刚才我们已经更改了配置文件,所以运行结果不同。
         Hadoop伪分布式运行grep的结果
        我们也可以将运行结果取回到本地:
             rm -r ./output    # 先删除本地的 output 文件夹(如果存在)
             ./bin/hdfs dfs -get output ./output     # 将 HDFS 上的 output 文件夹拷贝到本机
             cat ./output/*
         Hadoop 运行程序时,输出目录不能存在,否则会提示错误 “org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://localhost:9000/user/hadoop/output already exists” ,因此若要再次执行,需要执行如下命令删除 output 文件夹:
            ./bin/hdfs dfs -rm -r output    # 删除 output 文件
         运行程序时,输出目录不能存在
        
        若要关闭 Hadoop,则运行
            ./sbin/stop-dfs.sh
    注意
    下次启动 hadoop 时,无需进行 NameNode 的初始化,只需要运行 ./sbin/start-dfs.sh 就可以!
    启动YARN
    (伪分布式不启动 YARN 也可以,一般不会影响程序执行)
    有的读者可能会疑惑,怎么启动 Hadoop 后,见不到书上所说的 JobTracker 和 TaskTracker,这是因为新版的 Hadoop 使用了新的 MapReduce 框架(MapReduce V2,也称为 YARN,Yet Another Resource Negotiator)。
    YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。YARN 运行于 MapReduce 之上,提供了高可用性、高扩展性,YARN 的更多介绍在此不展开,有兴趣的可查阅相关资料。
    上述通过 ./sbin/start-dfs.sh 启动 Hadoop,仅仅是启动了 MapReduce 环境,我们可以启动 YARN ,让 YARN 来负责资源管理与任务调度。
    首先修改配置文件 mapred-site.xml,这边需要先进行重命名:
    mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml
    Shell 命令
    然后再进行编辑,同样使用 gedit 编辑会比较方便些 gedit ./etc/hadoop/mapred-site.xml :
    <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
    </configuration>
    XML
    接着修改配置文件 yarn-site.xml:
    <configuration>
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
            </property>
    </configuration>
    XML
    然后就可以启动 YARN 了(需要先执行过 ./sbin/start-dfs.sh):
    ./sbin/start-yarn.sh      $ 启动YARN
    ./sbin/mr-jobhistory-daemon.sh start historyserver  # 开启历史服务器,才能在Web中查看任务运行情况
    Shell 命令
  30. 开启后通过 jps 查看,可以看到多了 NodeManager 和 ResourceManager 两个后台进程,如下图所示。
  31. 开启YARN
  32. 启动 YARN 之后,运行实例的方法还是一样的,仅仅是资源管理方式、任务调度不同。观察日志信息可以发现,不启用 YARN 时,是 “mapred.LocalJobRunner” 在跑任务,启用 YARN 之后,是 “mapred.YARNRunner” 在跑任务。启动 YARN 有个好处是可以通过 Web 界面查看任务的运行情况:http://localhost:8088/cluster,如下图所示。
  33. 开启YARN后可以查看任务运行信息
  34. 但 YARN 主要是为集群提供更好的资源管理与任务调度,然而这在单机上体现不出价值,反而会使程序跑得稍慢些。因此在单机上是否开启 YARN 就看实际情况了。
  35. 不启动 YARN 需重命名 mapred-site.xml
  36. 如果不想启动 YARN,务必把配置文件 mapred-site.xml 重命名,改成 mapred-site.xml.template,需要用时改回来就行。否则在该配置文件存在,而未开启 YARN 的情况下,运行程序会提示 “Retrying connect to server: 0.0.0.0/0.0.0.0:8032” 的错误,这也是为何该配置文件初始文件名为 mapred-site.xml.template。
  37. 同样的,关闭 YARN 的脚本如下:
  38. ./sbin/stop-yarn.sh
    ./sbin/mr-jobhistory-daemon.sh stop historyserver
    ./sbin/stop-dfs.sh 关闭Hadoopdfs

  39. 自此,你已经掌握 Hadoop 的配置和基本使用了
  40. 借鉴于以下资料并自己做出了详解:
  41. https://blog.csdn.net/xqclll/article/details/53487952
  42. www.powerxing.com/install-hadoop-in-centos/
  43. Cp   复制文件或目录
      Mv   移动文件或改名
      Sync  刷新文件系统缓冲区
    Apt-get  APT包管理工具
    Ssh    安全连接客户端
    Ssh-keygen   生成、管理和转换认证钥匙
    Wget       从指定URL地址下载文件
  44. 遇到的问题以及解决方法:
  45. 1.在./bin/hdfs namenode –format时 加载不出class  查看配置的bashrc 你的/usr/local/hadoop路径中Hadoop的h的大小写 必须要一致
  46. 2. 在安装好Hadoop后,每次输入命令都会出现下面警告:
  47. WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
    Stopping namenodes ...
  48. 提示hadoop不能加载本地库。
    可以到$HADOOP_HOME/lib/native下,查看文件libhadoop.so.1.0.0,里面会显示Hadoop的位数,官网下载好的显示是64位的,如下所示:
  49. [hadoop@dxer hadoop-2.6.4]$ cd lib/native/
  50. [hadoop@dxer native]$ ls
  51. libhadoop.a  libhadooppipes.a  libhadoop.so  libhadoop.so.1.0.0  libhadooputils.a  libhdfs.a  libhdfs.so  libhdfs.so.0.0.0
  52. [hadoop@dxer native]$ file libhadoop.so.1.0.0
  53. libhadoop.so.1.0.0: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, BuildID[sha1]=b3b5e812c2a91fa4b28aa33eb76dc6889d3b91e9, not stripped
  54. [hadoop@dxer native]$
  55. 文件和操作系统都是64位的那为什么还会出现这样的警告呢。肯定是少了什么配置,没让库文件加载进去。
  56. 只需要进行简单配置即可。
  57. 配置如下:
  58. 首先在bashrc中加入如下配置:
    vim ~/.bashrc
  59. 配置如下
  60. export HADOOP_HOME=/home/hadoop/hadoop-2.6.4
  61. export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
  62. export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"
  63. 使上面配置生效:
    source ~/.bashrc
  64. ok,再去执行启动dfs/yarn或者运行hadoop相关命令的时候就不会再有上面的提示啦。

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值