准备:

  安装jdk和ssh。

1. 官网下载hadoop1.2.1

  hadoop-1.2.1.tar.gz

  http://hadoop.apache.org/releases.html

2. 解压到/home/hadoop/目录下

3. 伪分布式hadoop配置

  可以把伪分布式的hadoop看做只有一个节点的集群,在这个集群中,这个节点既是Master,也是Slave;既是NameNode,也是DataNode;既是JobTracker,也是TaskTracker。伪分布式的配置过程很简单,只需要修改几个文件。进入conf文件夹,修改配置文件。

  • 指定JDK的安装位置:修改hadoop-env.sh如下
#添加jdk路径
export JAVA_HOME=/usr/lib/jvm7/jdk1.7.0_79
  • 修改core-site.xml
<!-- 配置HDFS的地址及端口号-->
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
  • 修改hdfs-site.xml

  该文件用来配置hdfs,配置的默认备份方式是3,单机版的hadoop中需要改为1.

<!-- 设置HDFS备份方式 -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
  • 修改mapred-site.xml

该文件是MapReduce的配置文件,配置JobTracker的地址和端口。

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

4. 在启动hadoop之前,需要格式化hadoop的文件系统hdfs。

  hadoop namenode -format

5. 启动所有进程

  bin/start-all.sh

6. 打开浏览器输入网址

  http://localhost:50030(MapReduce的web页面)

  http://localhost:50070(HDFS的web页面)

WordCount:

1. 在file文件夹下创建两个文件

echo "hello world" > file0.txt
echo "hello hadoop" > file1.txt

2. 将新创建的两个文件上传到HDFS

hadoop dfs -put file /input

3. 编译WordCount.java

javac -classpath ~/hadoop/hadoop-1.2.1/hadoop-core-1.2.1.jar:~/hadoop/hadoop-1.2.1/lib/commons-cli-1.2.jar ~/hadoop/WordCount/WordCount.java -d ~/hadoop/WordCountJar

4. 打包class文件

jar -cvf wordcount.jar ./*.class

5. 在hadoop中运行wordcount.jar文件

hadoop jar wordcount.jar WordCount input output

6. HDFS常用命令(待编辑)

    hadoop dfs -mkdir /file              在HDFS上新建文件夹

    hadoop dfs -put input1.txt /input  把本地文件input1.txt传到HDFS的/tmp/input目录下

   hadoop dfs -get  input1.txt /tmp/input/input1.txt  把HDFS文件拉到本地

    hadoop dfs -ls /tmp/output                  列出HDFS的某目录
hadoop dfs -cat /tmp/ouput/output1.txt 查看HDFS上的文件 hadoop dfs -rmr /home/less/hadoop/tmp/output 删除HDFS上的目录 hadoop dfsadmin -report 查看HDFS状态,比如有哪些datanode,每个datanode的情况 hadoop dfsadmin -safemode leave 离开安全模式 hadoop dfsadmin -safemode enter 进入安全模式

安装hadoop1.2.1(参考hadoop实战第二版)的更多相关文章

  1. Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-2-driver

    1>使用的driver 1〉generic 使用带有SSH的现有VM/主机创建机器. 如果你使用的是机器不直接支持的provider,或者希望导入现有主机以允许Docker Machine进行管 ...

  2. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥

    1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...

  3. centos 6.4-linux环境配置,安装hadoop-1.1.2(hadoop伪分布环境配置)

    1 Hadoop环境搭建 hadoop 的6个核心配置文件的作用: core-site.xml:核心配置文件,主要定义了我们文件访问的格式hdfs://. hadoop-env.sh:主要配置我们的j ...

  4. Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-1-cli

    Docker Machine 是 Docker 官方编排(Orchestration)项目之一,负责在多种平台上快速安装 Docker 环境 Docker Machine是一种工具,它允许你在虚拟主机 ...

  5. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-1-单个host上的容器网络

    Docker 中的网络功能介绍 Docker 允许通过外部访问容器或容器互联的方式来提供网络服务 1) 外部访问容器 容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -p或 -P参数 ...

  6. Docker技术入门与实战 第二版-学习笔记-5-容器-命令及限制内存与cpu资源

    1.启动容器 启动容器有两种方式: 基于镜像新建一个容器并启动 将在终止状态(stopped)的容器重新启动 1)新建并启动——docker run 比如在启动ubuntu:14.04容器,并输出“H ...

  7. python数据分析与挖掘实战第二版pdf-------详细代码与实现

    [书名]:PYTHON数据分析与挖掘实战 第2版[作者]:张良均,谭立云,刘名军,江建明著[出版社]:北京:机械工业出版社[时间]:2020[页数]:340[isbn]:9787111640028 学 ...

  8. Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-3-Command-line completion命令补全

    Command-line completion https://docs.docker.com/machine/completion/ Installing Command Completion——实 ...

  9. Docker技术入门与实战 第二版-学习笔记-9-Docker Compose 项目-3-Django项目实例

    使用 Django 我们现在将使用 Compose 配置并运行一个 Django/PostgreSQL 应用.在此之前,先确保 Compose 已经安装. 1.通过编辑 Dockerfile文件来指定 ...

随机推荐

  1. mapreduce中控制mapper的数量

    很多文档中描述,Mapper的数量在默认情况下不可直接控制干预,因为Mapper的数量由输入的大小和个数决定.在默认情况下,最终input占据了多少block,就应该启动多少个Mapper.如果输入的 ...

  2. Visual Studio Package 插件开发(Visual Studio SDK)

    背景 这段时间公司新做了一个支付系统,里面有N个后台服务,每次有更新修改,拷贝打包发布包“不亦乐乎”...于是我想要不要自己定制个打包插件. 部分朋友可能会认为,有现成的可以去找一个,干嘛不用持续集成 ...

  3. Jq_input file标签上传图片到服务器

    引入jQuery库引入ajaxfileupload.js上传插件库(这也是jQuery的一个插件)以ASP.NET为例 <input type="file" id=" ...

  4. C# List left join

    public class Test1 { public int ID { get; set; } public string Name { get; set; } } public class Tes ...

  5. svn commit时报错 File already exists

    第一步: 删除当前文件所在文件夹,提交commit 第二步: 新建刚才删除的文件夹,并将先前需要commit的文件放到此文件夹下,再次commit 提交

  6. 如何在百度云虚拟机中配置thinkphp5,并且url去掉index.php

    第一步:将public目录下的index.php移到和public同级目录下,[或者直接在public同级目录下新建一个index.php] 第二步:那么这个新的index.php文件的内容如下: & ...

  7. 3月web前端面试小结

    说一下box-sizing的应用场景 box-sizing的属性值分为两个,border-box和content-box,其中, border-box:width=content+padding+bo ...

  8. Final阶段基于NABCD评论作品

    组名:杨老师粉丝群 组长:乔静玉 组员:吴奕瑶  刘佳瑞  公冶令鑫  杨磊  刘欣  张宇  卢帝同 一.拉格朗日2018--<飞词> 1.1  NABCD分析 N(Need,需求):该 ...

  9. Notes of Daily Scrum Meeting(12.17)

    我们会尽量安排好时间,在其他作业不受影响的情况下加快项目的进度,在Deadline之前完成Beta阶段的工作. 今天的团队工作总结如下: 团队成员 今日团队工作 陈少杰 调试网络连接,补充后端代码 王 ...

  10. 为什么HashMap不是线程安全的

    电面突然被问到这个问题,之前看到过,但是印象不深,导致自己没有答出来,现在总结一下. HashMap的内部存储结构 transient Node<K,V>[] table; static ...