久等了,近期公司比较忙,学习的时间都没有啊,到今日才有时间呢!!!好了,下面就跟着笔者开始配置Hadoop集群吧。

  hosts文件和SSH免密码登录配置好了之后,现在进入Hadoop安装目录,修改一些配置文件,修改配置还是相对简单的,一下是需要修改的文件内容(当然这里只是学习时的配置,更加深入的配置笔者也不会了,嘿嘿嘿),四台机相同配置,以下是一些修改的文件(红色为修改部分):

  conf/hadoop-env.sh:

  export JAVA_HOME=/usr/local/java/jdk1.6.0_45   ##原本是注释的,解开注释,修改一下路径即可

  conf/core-site.xml:

   <?xml version="1.0"?>

  <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

  <!-- Put site-specific property overrides in this file. -->

  <configuration>
    <property>

      <!-- 用户DFS命令模块中指定默认的文件系统协议 -->
      <name>fs.default.name</name>
      <value>hdfs://hadoop.master:9000</value>
    </property>
    <property>
      <name>hadoop.tmp.dir</name>
      <value>/usr/local/temp</value>
    </property>
  </configuration>

  conf/hdfs-site.xml:

  <?xml version="1.0"?>

  <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

  <!-- Put site-specific property overrides in this file. -->

  <configuration>
    <property>
      <!-- 默认Block副本数,设置为副节点个数,这里为3个 -->
      <name>dfs.replication</name>
      <value>3</value>
    </property>
  </configuration>

  conf/mapred-site.xml(配置JobTracker):

  <?xml version="1.0"?>

  <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

  <!-- Put site-specific property overrides in this file. -->

  <configuration>
    <property>
      <name>mapred.job.tracker</name>
      <value>hadoop.master:9001</value>
    </property>
  </configuration>

  conf/masters(填写主节点主机名即可):

  hadoop.master

  conf/slaves(填写从节点主机名,一行一个):

  hadoop.slave1

  hadoop.slave2

  hadoop.slave3

  

  至此,配置已经修改完了,接下来是启动。在首次启动之前,先格式化NameNode,之后启动就不需要格式化了,命令如下:

  hadoop namenode -format

  接下来,启动Hadoop集群:

  start-all.sh

  启动后截图如下:

  

  在启动过程中由于配置了SSH免密码登录,是不会询问slaves机器上的密码的。

  集群测试:

  接下来我们运行一下hadoop-example.jar中自带的wordCount程序,用户统计单词出现次数,步骤如下:

  1.新建一个test.txt,内容可自行填写:

  

  2.在HDFS系统中创建一个文件夹input,命令如下:

    hadoop fs -mkdir /user/hadoop/input1

  3.上传刚刚创建的test.txt至HDFS系统中的input文件夹,命令如下:
    hadoop fs -put /usr/local/hadoop/test.txt /user/hadoop/input1/

  4.查看文件是否已经上传至HDFS中,命令如下:

    hadoop fs -ls /user/hadoop/input1/

  5.运行hadoop-example.jar,命令如下:

    cd /usr/local/hadoop

    hadoop -jar hadoop-example-1.2.1.jar wordcount /user/hadoop/input1/test.txt /user/hadoop/output1

  6.过程截图:

        

    

   7.运行完毕后,可以查看结果了,键入以下命令,结果截图也在下面:

    hadoop fs -text /user/hadoop/output1/part-r-00000

    

    OK!至此Hadoop集群就安装结束了,而且也测试过了,就先写到这里了。

    

Hadoop自学系列集(四) ---- Hadoop集群的更多相关文章

  1. golang 自学系列(四)——debug for vscode

    golang 自学系列(四)--(调试)VSCode For Debug 这里如何装 vscode 我就不说了 这里如何在 vscode 正常写代码我也不说了 在能正常用 vscode 写 go 语言 ...

  2. Hadoop自学系列集(三) ---- Hadoop安装

    这节就开始讲述Hadoop的安装吧.在这之前先配置下SSH免密码登录,为什么需要配置这个呢?大家都知道Hadoop集群中可能有几十台机器甚至是上千台机器,而每次启动Hadoop都需要输入密码才能够登录 ...

  3. Hadoop概念学习系列之谈hadoop/spark里为什么都有,YARN呢?(四十一)

    在Hadoop集群里,有三种模式: 1.本地模式 2.伪分布模式 3.全分布模式 在Spark集群里,有四种模式: 1.local单机模式 结果xshell可见: ./bin/spark-submit ...

  4. Hadoop自学系列集(二) ---- CentOS下安装JDK

    上篇我们讲述了如何使用VMware安装CentOS系统,接下来就看如何安装我们最为熟悉的jdk吧!安装前先看看系统上有没有安装过jdk,输入java -version,如果查询出了其他版本的jdk版本 ...

  5. Hadoop自学系列集(一) ---- 使用VMware安装CentOS

     1.概述 笔者的学习环境--在VMware虚拟机下安装四个CentOS系统(搭建Hadoop集群用),其中一个为Master,三个为Slave,Master作为Hadoop集群中的NameNode, ...

  6. Hadoop概念学习系列之谈hadoop/spark里分别是如何实现容错性?(四十二)

    Hadoop使用数据复制来实现容错性(I/O高) Spark使用RDD数据存储模型来实现容错性.  RDD是只读的.分区记录的集合.如果一个RDD的一个分区丢失,RDD含有如何重建这个分区的相关信息. ...

  7. Hadoop概念学习系列之谈hadoop/spark里为什么都有,键值对呢?(四十)

    很少有人会这样来自问自己?只知道,以键值对的形式处理数据并输出结果,而没有解释为什么要以键值对的形式进行. 包括hadoop的mapreduce里的键值对,spark里的rdd里的map等. 这是为什 ...

  8. Hadoop笔记系列 一 用Hadoop进行分布式数据处理(1)

    学习资料参考地址: 1.http://blog.csdn.net/zhoudaxia/article/details/8801769 1.先说说什么是Hadoop? 个人理解:一个分布式文件存储系统+ ...

  9. Hadoop概念学习系列之为什么hadoop/spark执行作业时,输出路径必须要不存在?(三十九)

    很多人只会,但没深入体会和想为什么要这样? 拿Hadoop来说,当然,spark也一样的道理. 输出路径由Hadoop自己创建,实际的结果文件遵守part-nnnn的约定. 如何指定一个已有目录作为H ...

随机推荐

  1. 接口测试中读取excel中的请求数据含有中文问题,UnicodeEncodeError: 'latin-1' codec can't encode character '\u5c0f' in position

    错误信息:UnicodeEncodeError: 'latin-1' codec can't encode character '\u5c0f' in position 31: Body ('小') ...

  2. 布隆过滤器 - 如何在100个亿URL中快速判断某URL是否存在?

    题目描述 一个网站有 100 亿 url 存在一个黑名单中,每条 url 平均 64 字节.这个黑名单要怎么存?若此时随便输入一个 url,你如何快速判断该 url 是否在这个黑名单中? 题目解析 这 ...

  3. Kafka 学习之路(三)—— Kafka生产者详解

    一.生产者发送消息的过程 首先介绍一下Kafka生产者发送消息的过程: Kafka会将发送消息包装为ProducerRecord对象, ProducerRecord对象包含了目标主题和要发送的内容,同 ...

  4. Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装

    Kali Linux Web渗透测试手册(第二版) - 1.3 - 靶机的安装  一.配置KALI Linux和渗透测试环境 在这一章,我们将覆盖以下内容: 在Windows和Linux上安装Virt ...

  5. 透视BlueStore存储结构:如何根据文件名从裸盘提取文件内容

    在FileStore下,用户文件经过切分对象块后最终存放在了单机文件系统(xfs .ext4等)中,我们可以较容易地找到这些对象块对应的文件,然后提取这些对象块文件后组装成用户文件.然而,BlueSt ...

  6. Codeforces Gym101161E:ACM Tax(主席树+LCA)

    题目链接 题意 给出一棵有边权的树,然后给出q个查询,每次查询问两个结点的路径上的边的长度的中位数是多少. 思路 这道题目是用主席树(用权值当结点)和LCA来做的. 和之前做过的区间第K大类似,这道题 ...

  7. SPOJ MINSUB - Largest Submatrix(二分+单调栈)

    http://www.spoj.com/problems/MINSUB/en/ 题意:给出一个n*m的矩阵M,和一个面积k,要使得M的子矩阵M'的最小元素最大并且面积大于等于k,问子矩阵M'的最小元素 ...

  8. HashMap源码分析(一):JDK源码分析系列

    正文开始 注:JDK版本为1.8 HashMap1.8和1.8之前的源码差别很大 目录 简介 数据结构 类结构 属性 构造方法 增加 删除 修改 总结 1.HashMap简介 HashMap基于哈希表 ...

  9. java 及 Jquery中的深复制 浅复制

    发现问题:最近 遇到由于复制对象之后,改变复制后的新变量,原先被复制的对象居然会跟着变. EX:java中: //holidayConfig.getEnd_time()会随着sTime的改变而改变 s ...

  10. Java第五次作业--面向对象高级特性(抽象类与接口)

    Java第五次作业--面向对象高级特性(抽象类与接口) (一)学习总结 1.在上周完成的思维导图基础上,补充本周的学习内容,对Java面向对象编程的知识点做一个全面的总结. 2.汽车租赁公司,出租汽车 ...