之前看了很多理论上的知识,感觉云里雾里的,所以赶紧着手搭建个单机版的hadoop跑一跑,开启自学大数据技术的第一步~~

1.在开源的世界里,我就是个土豪,要啥有啥,所以首先你得有个jdk,有钱所以用最新的java8,hadoop使用的是hadoop2.6.0。

2.配置好java后,可以在/etc/profile里配置好环境变量,方便之后使用,紧接着解压hadoop2.6.0.tar.gz。

3.接下来配置hadoop,所有的配置文件都在hadoop文件夹下的etc/hadoop中:

 (1)hadoop-env.sh :这个脚本只需要修改最上面的JavaHome即可,修改为自己的java路径

 (2)core-site.xml,mapred-site.xml,hdfs-site.xml这几个配置完事再补上吧~~~,网上挺多的,不过要找自己对应的版本,不然会出很多奇怪的问题。

4.配置好之后就要启动了

  (1)启动之前首先要把namenode格式化一下,这是第一次启动hadoop需要做的动作,他会把hdfs中所有的东西全部清空掉的,所以要慎用~~

[qiang@localhost hadoop-2.6.]$  bin/hadoop namenode -format
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it. // :: INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = localhost/127.0.0.1
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.6.0
.....
.....
.....
15/08/11 08:25:46 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at localhost/127.0.0.1
************************************************************/

  格式化会出现一大堆信息,如果没有报错,那么说明之前的配置应该是可以滴~~~

  (2)启动的时候,可以直接使用sbin/start-all.sh,但是这种方式太low,如果集群启动出现错误,那么不会知道是那一部分的问题,不便于问题的排查,所以我们来一个一个启动它

启动namenode:

[qiang@localhost hadoop-2.6.]$ sbin/hadoop-daemon.sh start namenode
starting namenode, logging to /home/qiang/hadoop-2.6./logs/hadoop-qiang-namenode-localhost.localdomain.out

启动datanode:

[qiang@localhost hadoop-2.6.]$ sbin/hadoop-daemon.sh start datanode
starting datanode, logging to /home/qiang/hadoop-2.6./logs/hadoop-qiang-datanode-localhost.localdomain.out

可以用jps命令查看是否启动

[qiang@localhost ~]$ jps
Jps
NameNode
DataNode

当然也可以使用开放的端口在web浏览器上查看:(hdfs开放的端口为50070)

开了当然要用用他了,看看是不是唬人的,所以我们向hdfs中上传点东西试试:

[qiang@localhost hadoop-2.6.]$ bin/hadoop fs -mkdir /home
[qiang@localhost hadoop-2.6.]$ bin/hadoop fs -mkdir /home/qiangweikang
[qiang@localhost hadoop-2.6.]$ bin/hadoop fs -put README.txt /home/qiangweikang

点击uitilites中的system source会看到我们之前传进去的东东:

好开森~~

完事我们继续启动yarn

[qiang@localhost hadoop-2.6.]$ sbin/start-yarn.sh

在web上就可以看到传说中的那只大象....  ,而且我们可以看到有一个活动的节点(yarn的ResourceManager的默认端口号是8088)

接下来我们再跑一个demo,看看hadoop是怎么去运行的(在share下有自带的demo可供测试)这个pi的计算很有意思,是对一个圆做投掷飞镖的动作,第一个参数是map操作的次数

第二个参数是每次投掷多少个飞镖,好高大上啊,pi还可以这样算~~~,难道这就是传说中的概率统计?

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6..jar pi  
Number of Maps  =
Samples per Map =
Wrote input for Map #
Wrote input for Map #
Starting Job
// :: INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:
// :: INFO input.FileInputFormat: Total input paths to process :
// :: INFO mapreduce.JobSubmitter: number of splits:
// :: INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1439308289430_0001
// :: INFO impl.YarnClientImpl: Submitted application application_1439308289430_0001
// :: INFO mapreduce.Job: The url to track the job: http://localhost:8088/proxy/application_1439308289430_0001/
// :: INFO mapreduce.Job: Running job: job_1439308289430_0001
// :: INFO mapreduce.Job: Job job_1439308289430_0001 running in uber mode : false
// :: INFO mapreduce.Job: map % reduce %
// :: INFO mapreduce.Job: map % reduce %
// :: INFO mapreduce.Job: map % reduce %
// :: INFO mapreduce.Job: map % reduce %
// :: INFO mapreduce.Job: Job job_1439308289430_0001 completed successfully
// :: INFO mapreduce.Job: Counters:
File System Counters
FILE: Number of bytes read=
FILE: Number of bytes written=
FILE: Number of read operations=
FILE: Number of large read operations=
FILE: Number of write operations=
HDFS: Number of bytes read=
HDFS: Number of bytes written=
HDFS: Number of read operations=
HDFS: Number of large read operations=
HDFS: Number of write operations=
Job Counters
Launched map tasks=
Launched reduce tasks=
Data-local map tasks=
Total time spent by all maps in occupied slots (ms)=
Total time spent by all reduces in occupied slots (ms)=
Total time spent by all map tasks (ms)=
Total time spent by all reduce tasks (ms)=
Total vcore-seconds taken by all map tasks=
Total vcore-seconds taken by all reduce tasks=
Total megabyte-seconds taken by all map tasks=
Total megabyte-seconds taken by all reduce tasks=
Map-Reduce Framework
Map input records=
Map output records=
Map output bytes=
Map output materialized bytes=
Input split bytes=
Combine input records=
Combine output records=
Reduce input groups=
Reduce shuffle bytes=
Reduce input records=
Reduce output records=
Spilled Records=
Shuffled Maps =
Failed Shuffles=
Merged Map outputs=
GC time elapsed (ms)=
CPU time spent (ms)=
Physical memory (bytes) snapshot=
Virtual memory (bytes) snapshot=
Total committed heap usage (bytes)=
Shuffle Errors
BAD_ID=
CONNECTION=
IO_ERROR=
WRONG_LENGTH=
WRONG_MAP=
WRONG_REDUCE=
File Input Format Counters
Bytes Read=
File Output Format Counters
Bytes Written=
Job Finished in 42.318 seconds
Estimated value of Pi is 3.12000000000000000000

最后记得把yarn关掉~~

[qiang@localhost hadoop-2.6.]$ sbin/stop-yarn.sh 

1.单机部署hadoop测试环境的更多相关文章

  1. Hadoop单机Hadoop测试环境搭建

    Hadoop单机Hadoop测试环境搭建: 1. 安装jdk,并配置环境变量,配置ssh免密码登录 2. 下载安装包hadoop-2.7.3.tar.gz 3. 配置/etc/hosts 127.0. ...

  2. 在ubuntu机器上部署php测试环境

    在ubuntu机器上部署php测试环境 一.部署环境 Ubuntu11.10_X86_32,编译安装相应的软件:nginx+mysql+php. 二.软件安装 2.1 软件下载 libiconv-1. ...

  3. 开发环境无错,部署至测试环境报错“NoSuchMethodError”OR"NoSuchClassError"

    背景: 实现一个简单的功能,需要用到jedis的jar包连接Redis.在之前便已经有使用jedis,它的版本比较旧,是2.1的.而新实现的功能,在编码的时候使用的是2.8的.在开发环境完成单元测试后 ...

  4. Windows 下部署 hadoop spark环境

    一.先在本地安装jdk 我这里安装的jdk1.8,具体的安装过程这里不作赘述 二.部署安装maven 下载maven安装包,并解压 设置环境变量,MAVEN_HOME=D:\SoftWare\Mave ...

  5. hadoop测试环境主配置简例

    1,mapred-site.xml 此配置文件主要是针对mapreduce的配置文件,配置的是jobtracker的地址和端口; <configuration> <property& ...

  6. Docker部署Jenkins测试环境

    安装docker环境 yum install epel-release -y && yum install docker -y 如果是高手需要docker-compose的话就再装个d ...

  7. CM 部署bigdata测试环境群集机器报错

    CM repo库info;

  8. Hadoop系列之(一):Hadoop单机部署

    1. Hadoop介绍 Hadoop是一个能够对海量数据进行分布式处理的系统架构. Hadoop框架的核心是:HDFS和MapReduce. HDFS分布式文件系统为海量的数据提供了存储, MapRe ...

  9. Hadoop2-认识Hadoop大数据处理架构-单机部署

    一.Hadoop原理介绍 1.请参考原理篇:Hadoop1-认识Hadoop大数据处理架构 二.centos7单机部署hadoop 前期准备 1.创建用户 [root@web3 ~]# useradd ...

随机推荐

  1. FU-A 分包

    FU-A分包方式,以及从RTP包里面得到H.264数据和AAC数据的方法 [原创] RFC3984是H.264的baseline码流在RTP方式下传输的规范,这里只讨论FU-A分包方式,以及从RTP包 ...

  2. 遍历并批量删除容器中元素出现ConcurrentModificationException原因及处置

    在以下四种遍历过程中,前两种会抛出ConcurrentModificationException,而后两种方法是正确的. Department类: package com.sitinspring; i ...

  3. [转]Oracle 连接dll

    https://www.nuget.org/packages/Oracle.ManagedDataAccess

  4. UE4 代码总结

    1.创建关卡类 1.创建C++类继承LevelScriptActor 2.打开关卡蓝图 Class Settings->Parent Class 选择你之前创建好的C++类 遇到的问题: 1.T ...

  5. solr解决访问安全

    Tomcat7,solr3.6,mmseg1.8 1:环境的搭建 1:解压tomcat,solr,mmseg4j 2:复制dist文件夹下apache-solr.war到tomcat的webapp文件 ...

  6. MyBatis单个参数的动态语句引用

    参考:http://blog.csdn.net/viviju1989/article/details/17071909 是当我们的参数为String时,在sql语句中#{name} 会去我们传进来的参 ...

  7. python‘s third day for me 字符串方法

    基 础 数 据 类 型 初 始   int  运算.+  -  *  /  **  %... bool: 判断,真假,作为条件. str:  存储少量的数据.操作简单,便于传输. list:  列表[ ...

  8. Dev使用技巧汇总

    C# XtraGrid的行指示器(RowIndicator)行号以及图标设置 参考网址:https://www.cnblogs.com/xuliangxing/p/6775438.html DateE ...

  9. Configuring Transitive IPMP on Solaris 11

    http://www.tokiwinter.com/configuring-transitive-ipmp-on-solaris-11/ We all know the pain of configu ...

  10. zookeeper的概念和基础

    1.1ZooKeeper的使命 当开发人员使用ZooKeeper进行开发时,开发人员设计的那些应⽤往往可以看成成组连接到ZooKeeper服务器端的客户端,它们通过ZooKeeper的客户端API连接 ...