这几年云计算大数据非常火,借这个东风。今天開始学习apache的分布式计算框架hadoop,希望不要太落后。

Hadoop说明

对于hadoop。apache官方wiki给出的说明为

Apache Hadoop is a framework for running applications on large cluster built of commodity hardware. The Hadoop framework transparently provides applications both reliability and data motion. Hadoop implements a computational paradigm named Map/Reduce, where the application is divided into many small fragments of work, each of which may be executed or re-executed on any node in the cluster. In addition, it provides a distributed file system (HDFS) that stores data on the compute nodes, providing very high aggregate bandwidth across the cluster. Both MapReduce and the Hadoop Distributed File System are designed so that node failures are automatically handled by the framework. 

大意为:

Apache Hadoop是一个在大型集群的商品硬件上执行的应用程序的框架。Hadoop框架透明的提供了应用程序的可靠性和数据訪问的方法。Hadoop实现了Map/Reduce计算模型,每一个应用程序被切分成很多碎片化的工作段,每一个段可在不论什么急群众的节点(反复)执行。此外。它还提供了用以在计算节点中存储数据的分布式文件系统HDFS,HDFS提供了节点间的高度聚合能力。MapReduce和Hadoop分布式文件系统都设计成拥有节点故障时自己主动处理的能力。

先决条件

支持平台

  • GNU/Linux是产品开发和执行的平台。

    Hadoop已在有2000个节点的GNU/Linux主机组成的集群系统上得到验证。

  • Win32平台是作为开发平台支持的。因为分布式操作尚未在Win32平台上充分測试,所以还不作为一个生产平台被支持。

所需软件

Linux和Windows所需软件包含:

  1. JavaTM1.5.x,必须安装。建议选择Sun公司发行的Java版本号。
  2. ssh 必须安装而且保证 sshd一直执行。以便用Hadoop     脚本管理远端Hadoop守护进程

Windows下的附加软件需求

Cygwin - 提供上述软件之外的shell支持。

安装软件

假设你的集群尚未安装所需软件,你得首先安装它们。

以Ubuntu Linux为例:

$ sudo apt-get install ssh
$ sudo apt-get install rsync

linux上hadoop安装

hadoop生产环境是linux。这里我在虚拟机上进行软件的安装,系统为centos7-64bit

ssh设置及主机名改动

改动主机名

  1. 运行主机名改动(ip要与实际相应上)

    改动192.168.88.128相应机器的hostname,在该ip相应的主机运行命令

    hostname master

    对应的,对其它两台机器分别运行

    hostname slave1
    hostname slave2

    同一时候依次改动机器上的etc/host文件

    192.168.88.128	master
    192.168.88.129 slave1
    192.168.88.130 slave2
  2. 开启ssh服务

安装openssh-server:$ sudo apt-get install openssh-server

3.  建立ssh无password登录

  • 在NameNode 上实现无password登录本机:
    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

    直接回车,完毕后会在~/.ssh/生成两个文件:id_dsa 和id_dsa.pub。

    这两个是成对

    出现,类似钥匙和锁。再把id_dsa.pub 追加到授权key 里面(当前并没有authorized_keys

    文件):$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys。完毕后能够实现无password

    登录本机:$ ssh localhost。

  • 实现NameNode 无password登录其它DataNode:把NameNode 上的id_dsa.pub 文件追加到dataNode 的authorized_keys 内( 以

    192.168.88.128 节点为例):
  1. 拷贝NameNode 的id_dsa.pub 文件:

    scp ~/.ssh/id_dsa.pub root@192.168.88.129:/root
  2. 登录192.168.88.129
    cat /root/id_dsa.pub >> ~/.ssh/authorized_keys

jdk安装

  1. 首先从oracle官网下载jdk6,下载地址为http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html#jdk-6-oth-JPR。我下载的是.bin后缀的文件
  2. 第二步,改动.bin文件的可运行权限,这里我放在了桌面上
    chmod 755 *.bin
  3. 解压缩bin文件
    ./*.bin
  4. 对解压的文件重命名(这不也可省略。主要是path等设置的时候简明)
    mv jdk* jdk

设置path路径。首先打开vi编辑器

vi /etc/profile

在/etc/profile末尾加上(按insert按键)

export JAVA_HOME=/root/Desktop/jdk
exportCLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

最后保存并关闭马上应用更改

source /etc/profile

安装hadoop(hadoop版本号0.20.2)

  1. 下载hadoop-0.20.2.tar.gz文件(免积分下载地址会稍后给出)
  2. 解压
    tar -zxvf hadoop-0.20.2.tar.gz
  3. 重命名
    mv hadoop-0.20.2 hadoop
  4. 设置hadoop执行环境。进入重命名的hadoop文件夹下的conf文件夹并编辑hadoop-env.sh
    cd hadoop/conf
    
  5. 找到# export JAVA_HOME=/usr/lib/j2sdk1.5-sun

    设置JAVA_HOME
    export JAVA_HOME=/root/Desktop/jdk
  6. 配置conf/masters 和conf/slaves 文件:(仅仅在namenode 上配置)
    masters
    192.168.88.128
    slaves
    192.168.88.129
    192.168.88.130
  7. 配置core-site、mapred-site、hdfs-site三个xml文件。三台机器上配置同样

core-site.xml

<configuration>
<!--- global properties -->
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hexianghui/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<!-- file system properties -->
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.88.128:9000</value>
</property>
</configuration>

hdfs-site.xml:( replication 默觉得3,假设不改动。datanode 少于三台就会报错。改动为与系统适应的个数)

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>

mapred-site.xml

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

最后不要忘记改动path,将hadoop增加到path路径,在/etc/profile文件最后增加

export HADOOP_HOME=/root/Desktop/hadoop
export PATH=$PATH:$HADOOP_HOME/bin

格式化hadoop文件系统并启动

#格式化hadoop文件系统
hadoop namenode -format
#启动hadoop
start-all.sh
#最后用jps查看启动的进程个数
jps

在Namenode节点上结果例如以下

12091 JobTracker
12026 SecondaryNameNode
11875 NameNode
12171 Jps

DataNode结果例如以下

7274 Jps
7049 DataNode
7159 TaskTracker

至此。hadoop分布式文件系统安装完成。

最后,分享下我找的资源,虽说有点老,可是绝对具体。大体描写叙述了hadoop发展现状和hadoop安装配置。资源我已经上传了。下载地址为http://download.csdn.net/detail/wuyinggui10000/8890953

因为是最近刚開始学习 hadoop。东西须要消化。本系列的博客不能做到每天一篇,望见谅。全然是边学习边写的,大家能够相互交流。如有失误。希望大家能够提出意见。同一时候希望能够持续关注。大家共同学习交流

一步一步跟我学hadoop(1)----hadoop概述和安装配置的更多相关文章

  1. Hadoop 系列(二)安装配置

    Hadoop 系列(二)安装配置 Hadoop 官网:http://hadoop.apache.or 一.Hadoop 安装 1.1 Hadoop 依赖的组件 JDK :从 Oracle 官网下载,设 ...

  2. Hadoop集群搭建-05安装配置YARN

    Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hadoop集群搭建-01前期准备 先保证集群5台虚 ...

  3. Hadoop集群搭建-04安装配置HDFS

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

  4. Hadoop集群搭建-02安装配置Zookeeper

    Hadoop集群搭建-05安装配置YARN Hadoop集群搭建-04安装配置HDFS  Hadoop集群搭建-03编译安装hadoop Hadoop集群搭建-02安装配置Zookeeper Hado ...

  5. 一步步教你Hadoop多节点集群安装配置

    1.集群部署介绍 1.1 Hadoop简介 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台.以Hadoop分布式文件系统HDFS(Hadoop Distributed Filesys ...

  6. Hadoop在Windows下的安装配置

    由于本人近期近期一段时间 都在学习Hadoop,接触了比較多的理论,可是想要深入的去学习Hadoop整个平台,那就必须实战的训练,首先第一步,当然是先搭建好一个Hadoop平台为先.可是比較坑爹的是. ...

  7. Hadoop多节点集群安装配置

    目录: 1.集群部署介绍 1.1 Hadoop简介 1.2 环境说明 1.3 环境配置 1.4 所需软件 2.SSH无密码验证配置 2.1 SSH基本原理和用法 2.2 配置Master无密码登录所有 ...

  8. Hadoop三种模的安装配置过程

    JDK+Hadoop安装配置.单机模式配置 以下操作在SecureCRT里面完成 1.关闭防火墙 firewall-cmd --state 显示防火墙状态running/not running sys ...

  9. Linux下Hadoop集群环境的安装配置

    1)安装Ubuntu或其他Linux系统: a)为减少错误,集群中的主机最好安装同一版本的Linux系统,我的是Ubuntu12.04. b)每个主机的登陆用户名也最好都一样,比如都是hadoop,不 ...

随机推荐

  1. BZOJ3261 最大异或和 解题报告(可持久化Trie树)

    本题链接:https://www.lydsy.com/JudgeOnline/problem.php?id=3261 题目描述 给定一个非负整数序列{a},初始长度为N. 有M个操作,有以下两种操作类 ...

  2. Python开源爬虫项目代码:抓取淘宝、京东、QQ、知网数据--转

    数据来源:数据挖掘入门与实战  公众号: datadw scrapy_jingdong[9]- 京东爬虫.基于scrapy的京东网站爬虫,保存格式为csv.[9]: https://github.co ...

  3. svn回到某个历史版本的做法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 一.在选中的文件上弹出svn的右键菜单,单击"Updateto revision"菜单项,如下图: ...

  4. Android5.0之后的页面切换动画

    Android5.0之后给我们开发者剩了好多的事情,为什么这么说呢?还记得刚开始的时候,Android里面的所有的动画都要我们开发者自己来写,现在不需要了,因为5.0之后自带了好多的动画,比如:按钮点 ...

  5. c# 对用户密码加密解密

    一.使用16位.32位.64位MD5方法对用户名加密 1)16位的MD5加密 ? 1 2 3 4 5 6 7 8 9 10 11 12 /// <summary> /// 16位MD5加密 ...

  6. HDU I Hate It(线段树单节点更新,求区间最值)

    http://acm.hdu.edu.cn/showproblem.php?pid=1754 Problem Description 很多学校流行一种比较的习惯.老师们很喜欢询问,从某某到某某当中,分 ...

  7. Linux-CentOS5/6启动流程

    Linux-CentOS5/6启动流程

  8. mongodb 的查询深入剖析

           db.表名.find({goods_id:3});                     //查询出 goods_id 为 3 的数据        db.表名.find({cat_i ...

  9. caioj 1075 动态规划入门(中链式2:能量项链)(中链式dp总结)

    我又总结了一种动归模型-- 这道题和上一道题很类似,都是给一个序列,然后相邻的元素可以合并 然后合并后的元素可以再次合并 那么就可以用这两道题类似的方法解决 简单来说就是枚举区间,然后枚举断点 加上断 ...

  10. HDU——T 2647 Reward

    http://acm.hdu.edu.cn/showproblem.php?pid=2647 Time Limit: 2000/1000 MS (Java/Others)    Memory Limi ...