博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop初识之Hadoop单机版安装
阅读量:7172 次
发布时间:2019-06-29

本文共 4157 字,大约阅读时间需要 13 分钟。

最近闲来无事,和朋友志声大神一起想学习Hadoop,最晚弄机器的弄到两点多,今天动手和志声一起安装Hadoop的环境,刚开始也是一头雾水啊, 的教程我也是醉了,说的牛头不对马嘴,最后只能通过各种百度解决了问题,最后把安装的一些操作都记录下来,希望可以帮助到后来人

环境

这里我们使用了两台腾讯云的机器以及一台阿里云的机器,本来是准备搭建一个Hadoop集群的,但是由于两个人都没有任何的大数据的经验,所以先在我的阿里云机器上部署了一套单机版的Hadoop测试一下,看看能不能行

  • 操作系统:centOS 7.3
  • JAVA版本:jdk1.8
  • Hadoop版本:Hadoop2.9.0(binary)

这里顺带附上Hadoop的下载地址

开始安装

  • 安装java环境变量

    • 先下载java版本,如果机器上自带了openjdk请先卸载自带的openJDK
    • 下载好后将jdk放到自己的机器上,本人放在 /user/local/java目录下
    • 解压tar -zxvf yourjavajdkname
    • 解压后就可以在当前目录下看到解压的文件夹了,然后配置Java的环境变量 sudo vim + /etc/profile
    • 在文件最后加上以下代码
      export JAVA_HOME=/usr/local/java/java_1.8export PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA_HOME/lib复制代码
      注:java1.8是我本人将jdk解压后的文件夹重命名为java_1.8
    • source /etc/profile编译一下
    • 输入java -version看看有没有版本信息输出,有的话就是安装成功了
    • 配置hosts端口

      • sudo vim + /etc/hosts
      • 在文件末尾加上自己机器的IP和别名为了以后做集群做准备
    • 配置SSH免密登录

      注:同样是为了以后做集群做准备
      • 安装expect命令 : yum -y install expect
      • 下载ssh_p2p.zip放在任意目录下
      • unzip ssh_p2p 如果没有unzip命令,先安装unzip
      • 安装unzip命令,如果已经有了,可以跳过这一步,yum -y install unzip
      • 修改resource的ip值vim /ssh_p2p/deploy_data/resource
      • 添加如下代码:
        adress=(  "IP,登录账号,登录密码,free"  "IP,登录账号,登录密码,free"  "IP,登录账号,登录密码,free")复制代码
      • 修改start.sh的运行权限
        chmod u+x start.sh
      • 运行 ./start.sh
      • 测试: ssh ip(测试是否可以登录)

到这里我们为后面做安装集群的准备就好了

  • 配置Hadoop

    • 将下载好的Hadoop上传到我们的机器,然后解压,我本人在/usr/local/目录下新建了一个hadoop目录,然后把下载好的压缩包上传到/usr/local/hadoop目录下
    • 解压 tar -zxvf hadoopfilename
    • 然后修改hadoop解压目录下的/etc/hadoop/hadoop-env.sh文件 sudo vim + /usr/local/hadoop/hadoop-2.9.0/etc/hadoop
    • 将Java home的路径配置进去,如果不知道或者不记得自己的JavaHome路径可以用下面的命令,echo ${JAVA_HOME}输出javaHome的路径,得到了javaHome的路径后,添加下面代码

      export JAVA_HOME = /usr/local/java/java_1.8,这是我本人的JavaHome路径,
      *然后配置Hadoop的环境变量,和我们配置java的环境变量一样,使用以下命令
      sudo vim + /etc/profile,

    • 添加以下代码:

      export HADOOP_HOME= /usr/local/hadoop/hadoop-2.9.0/export PATH=$PATH:$HADOOP_HOME/bin复制代码
    • source /etc/profile编译让我们刚刚修改生效
    • 修改/usr/local/hadoop/hadoop-2.9.0/etc/hadoop/core-site.xml文件
      fs.defaultFS
      hdfs://localhost:9000
      hadoop.tmp.dir
      /usr/local/hadoop/hadoop-2.9.0/tmp
      复制代码
    • tmp文件夹是我自己创建的,hadoop不自带,特此说明
    • fs.defaultFS直接用localhost就行,如果重命名了主机名,也可以用重命名的。比如说你重命名为xxxx那么就用xxxx替代localhost
    • 修改/usr/local/hadoop/hadoop-2.9.0/etc/hadoop/hdfs-site.xml

      dfs.name.dir
      /usr/hadoop/hdfs/name
      namenode上存储hdfs名字空间元数据
      dfs.data.dir
      /usr/hadoop/hdfs/data
      datanode上数据块的物理存储位置
      dfs.replication
      1
      复制代码
      • SSH免密登录,这里的和SSH免密登录和前面的SSH免密登录互不影响,不冲突,如果这里不配置的话,后面启动的时候也会提示你是否要连接,所以还是配置比较好
        ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa  cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys  chmod 0600 ~/.ssh/authorized_keys复制代码
      • HDFS的启动与停止(第一次启动需要格式化)
        • 启动命令
          cd /usr/local/hadoop/hadoop-2.9.0./bin/hdfs namenode -format./sbin/start-dfs.sh复制代码
        • 停止命令
          ./sbin/stop-dfs.sh复制代码
      • 然后在浏览器中输入http://yourIP:50070就可以看到效果了,如果没有的话,证明上面没有配置好,
  • yarn配置

    在hadoop中,默认mapred-site.xml的名字是mapred-site.xm.template,所以我们要先用MV命令修改名字,

    mv /usr/local/hadoop/hadoop-2.9.0/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/hadoop-2.9.0/etc/hadoop/mapred-site.xml复制代码
    • 编辑mapred-site.xml
      sudo vim + mapred-site.xml复制代码
      mapreduce.framework.name
      yarn
      复制代码
    • 配置yarn-site.xml
      yarn.nodemanager.aux-services
      mapreduce_shuffle
      复制代码
    • 启动和停止yarn
      cd /usr/local/hadoop/hadoop-2.9.0./sbin/start-yarn.sh复制代码
    • 停止yarn
      ./sbin/stop-yarn.sh复制代码
    • 在浏览器输入

到这里Hadoop配置工作就完成了,集群的配置以后配置成功了再写成教程发出来,最后感谢志声大神,随便奉上我志声大神的里面可是满满的干货哦,对于有兴趣的朋友可以加入我们的qq群一起探讨:528776268,或者关注猿blog公众号,谢谢大家

转载于:https://juejin.im/post/5a11a7776fb9a04522071898

你可能感兴趣的文章
PHP基础笔记
查看>>
Android 音视频深入 十八 FFmpeg播放视频,有声音(附源码下载)
查看>>
扩展KMP模板
查看>>
php 分页原理+分页代码+分页类制作
查看>>
CSS选择器要点笔记
查看>>
python测试框架nose
查看>>
2017 济南综合班 Day 4
查看>>
[USACO Mar08] 牛跑步
查看>>
《呐喊》自序
查看>>
feathers ui 鼠标移出事件
查看>>
Spring Boot项目端口8080被占用的解决方法
查看>>
maven工程下get的URI中带中文名称乱码解决
查看>>
为什么内部类访问的外部变量需要使用final修饰
查看>>
【原创】40亿个数字,找出其中出现过两次的字符
查看>>
《Effective C#》快速笔记(二)- .NET 资源托管
查看>>
UVa294 Divisors
查看>>
洛谷P3406 海底高铁
查看>>
HTML学习
查看>>
Warriors of the Visual Studio, Assemble! (Visual Studio的勇士们,汇编吧!)
查看>>
使用Aouth2进行身份验证
查看>>