最近在学习hadoop相关知识,就在本机上安装了hadoop,遇到了一些坑,也学到了不少。仅此记录我的安装过程,及可能遇到的问题。供参考。交流沟通见页末。

软件准备

>  虚拟机(VMware)

个人情况下,不太可能有多台电脑,装一个虚拟机来进行实验。虚拟机中我用的是Linux的ubuntu版本。

具体安装就不在这里说明了,提示的是:安装的网络模式选bridged,如果出现无法上网或者不能与本机链接,可以使用多网卡,增加NAT模式(如工作网络导致这种情况)。

>hadoop:去apache下载hadoop(http://hadoop.apache.org/releases.html),我选的是2.6.5版本;

>  Java环境

JDK:去(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html)下载jdk,我选的是tar.gz,这样就知道解压到哪里了。

>  WinScp

后期三台虚拟机之间需要进行文件的互通,这里使用winscp可能会更方便(当然也有其他方式,比如wget下载网络文件,scp进行虚拟机之间的文件传输。)

  安装啦!

 >第一步:装好VMware,创建三个虚拟机(hadoop至少需要三个,一个master,两个node。为什么需要以后再说啦!)并将下载的hadoop2.6.5和jdk导入到VMware中

chap1:VMware:有master、nod1、nod2,使用的是个人创建账号(shj,网络上都是创建了hadoop账号来进行管理,我这里就不费那个事了。)

通过WinScp导入文件时,提示虚拟机没有开启SFTP服务。这时需要对虚拟机做一些配置。

chap2:开通SSH服务:进入虚拟机的命令行(CRTL+ALT+T),使用root账号(sudo su )

首先更新源文件(atp-get update)-->下载/安装yum文件(apt-get install -y yum)-->下载/安装ssh服务(apt-get install -y openssh-server)-->启动服务(service ssh start,默认开启 )

   --->

chap3:文件传输:使用WinScp成功登陆到虚拟机中,将hadoop和jdk文件导入。我放到/home/shj/Documents中

chap4:解压文件到指定目录

切换回shj账号(su shj)

hadoop解压:tar -xzvf /home/shj/Documents/hadoop-2.6.5.tar.gz -C ~/hadoop     --->将压缩文件解压到指定目录中(没有该目录则创建,mkdir -p ~/hadoop)

jdk解压:tar -xzvf /home/shj/Documents/jdk-8u144linux-x64.tar.gz -C~/jdk    --->将压缩文件解压到指定目录中(同上)

另外两台机器,重复上述操作。

第二步:配置SSH秘钥

我们使用的shj账号,配置的目的使得三台虚拟机能够通过该账号相互进行通信。(对root账号,不可行)

chap1:生成ssh密钥对(私钥和公钥)

mkdir -p ~/.ssh(如果没有.ssh则生成一个,ubuntu的好像是没有的) -->ssh-keygen -t dsa -p '' -f ~/.ssh/key_id(生成ssh密钥对,放在~/.ssh目录下)

 将生成的key_id.pub写入文件(authorized_keys)中,确保文件名没有问题。

chap2:进行本机的免密登录:ssh localhost

如果报错,要求输入密码,则有问题(一般重启一下就可以了,如果还有问题,则可能是你的家目录和私钥的权限不对,导致系统不允许免密登录)

chap3:另外两台机器同等操作

同chap2

chap4:汇总三台虚拟机的key_id.pub,三个公钥追加到同一个authorized_keys

通过scp命令(WinScp也可以)将三个公钥并共享该公钥。也就是三台虚拟机的公钥是相同的。

chap5:配置/etc/hosts、/etc/hostname文件

将ip对应的主机名进行映射

chap6:三台虚拟机之间的免密登录(修改了配置文件,服务需要重启。)

第一次登录,会问要不要。当然yes啦!!!完成这一步了。

第三步:配置系统环境

这一步我们需要告诉Linux,我们装的东西在哪里,装了哪些命令

配置系统环境变量(vim /etc/bash.bashrc)

在文件末尾追加:

export JAVA_HOME=/home/shj/jdk(这里我做了一些变化,解压后的地址应该不是这些。以实际为准)

export HADOOP_INSTALL=/home/shj/hadoop(同上)

export PATH=$PATH:/home/shj/hadoop/bin:/home/shj/jdk/bin(同上)

完成后,激活一下配置。执行命令:source /etc/bash.bashrc

验证jdk是否完成配置:java -version

没有问题!

另外两台机器,重复上述(也可以后期拷贝到另外两台机器上。见仁见智!)

第四步:配置hadoop的site文件

>chap1:四个文件(地址:~/hadoop/etc/hadoop)

core-site.xml(全局配置)、mapred-site.xml(MR配置)、hdfs-site.xml(hdfs配置)、hadoop-env.sh(...)

文件: core-site.xml

文件:mapred-site.xml.template

文件:hdfs-site.xml

文件:hadoop-env.sh

需要绝对路径,要不然会有问题的!

>chap2:写主机名文件

vim masters

vim slaves

>chap3:将配置的文件同步到另外两台机器

完成所有机器相同配置

 第四步:启动hadoop

如果这些事情都做完了(当然系统配置不要忘了,这个用scp不好使。)那么我们开始启动我们的hadoop吧(如果困难,重启试试

>  chap1:格式化

  在master节点上格式化:hadoop namenode -format

>  cha2:启动

  cd ~/hadoop/sbin  -->source start-all.sh -->没有问题,则执行命令:jps

在master节点执行jps

在node节点执行jps

这样就结束了。成功的启动了你的hadoop。

hadoop支持web界面,可以在浏览器中输入http://192.168.74.134:50070

你可以在web界面中查看你的hadoop运行情况。是不是很爽?!

注意事项/个人经验

  1、由于是dhcp网络配置,如果重启可能会导致ip地址的变化,这个时候要么将网络设置成静态网络要么重新配置一些/etc/hosts文件

  2、不同的阶段问题的的原因可能不一样,其中ssh配置出的问题会多一点。基本上重启一下就能解决。

  3、在启动hadoop时,如果遇到问题就查看对应目录下的/hadoop/logs文件。master和node哪个错了,查看哪个的日志,直接翻到最后一行,往上捋

转载请注明出处!欢迎邮件沟通:shj8319@sina.com

搭建hadoop、hdfs环境--ubuntu(完全分布式)的更多相关文章

  1. Ubuntu 12.04搭建hadoop单机版环境

    前言: 本文章是转载的,自己又加上了一些自己的笔记整理的 详细地址请查看Ubuntu 12.04搭建hadoop单机版环境 Hadoop的三种运行模式 独立模式:无需任何守护进程,所有程序都在单个JV ...

  2. 【Hadoop】:Windows下使用IDEA搭建Hadoop开发环境

    笔者鼓弄了两个星期,终于把所有有关hadoop的环境配置好了,一是虚拟机上的完全分布式集群,但是为了平时写代码的方便,则在windows上也配置了hadoop的伪分布式集群,同时在IDEA上就可以编写 ...

  3. 在ubuntu下使用Eclipse搭建Hadoop开发环境

    一.安装准备1.JDK版本:jdk1.7.0(jdk-7-linux-i586.tar.gz)2.hadoop版本:hadoop-1.1.1(hadoop-1.1.1.tar.gz)3.eclipse ...

  4. 基于Eclipse搭建hadoop开发环境

    一.基础环境准备 1.Eclipse 下载地址:http://pan.baidu.com/s/1slArxAP 2.JDK1.8  下载地址:http://pan.baidu.com/s/1i5iNy ...

  5. 详解Window10下使用IDEA搭建Hadoop开发环境

    前言 经过三次重装,查阅无数资料后成功完成hadoop在win10上实现伪分布式集群,以及IDEA开发环境的搭建.一步一步跟着本文操作可以避免无数天坑. 下载安装Hadoop 下载安装包 进入官网下载 ...

  6. Linux下搭建hadoop开发环境-超详细

    先决条件:开发机器需要联网 已安装java 已安装Desktop组 1.上传安装软件到linux上: 2.安装maven,用于管理项目依赖包:以hadoop用户安装apache-maven-3.0.5 ...

  7. 从零单排Hadoop——1.搭建Hadoop开发环境

    Hadoop环境准备:ubuntu 12.05.Hadoop 2.4 一.安装ssh 由于hadoop可以配置为集群运行,因此系统需要安装ssh工具保证集群中各节点可以互相访问. 获取ssh软件: s ...

  8. 在Eclipse下搭建Hadoop开发环境

    在前面的博文中博主展示了如何在虚拟机中搭建Hadoop的单节点伪分布集群,今天给大家介绍一下如何在Eclipse环境中搭建Hadoop的管理和开发环境,话不多说,下面我们就进入正题吧! 1.JDK安装 ...

  9. 使用VirtualBox虚拟机搭建hadoop运行环境,

    最近学了一下大数据,包括hadoop环境的搭建,搭建工具:centos6.5,hadoop2.6.4,eclipse Mars.1 Release (4.5.1),jdk1.8 第一步.网络与ip地址 ...

  10. Hadoop学习之路(八)在eclispe上搭建Hadoop开发环境

    一.添加插件 将hadoop-eclipse-plugin-2.7.5.jar放入eclipse的plugins文件夹中 二.在Windows上安装Hadoop2.7.5 版本最好与Linux集群中的 ...

随机推荐

  1. vc++如何创建窗口

    创建一个mfc工程,AppWizard可以用来增加和选择一些特性 可以发现一共有五个类,每一个类都有一个基类,都是mfc基础类库中的类 例如将一个类拷贝一下,将CFrameWnd到msdn中查找一下, ...

  2. python编写简单的html登陆页面(3)

    1  在python编写简单的html登陆页面(2)的基础上在延伸一下: 可以将静态分配数据,建立表格,存放学生信息 2  加载到静态数据 3  html的编写直接在表格里添加一组数据就行了 4  V ...

  3. 自己对WEBGL坐标系的转换过程的理解【如图】

  4. BZOJ 2716/2648 SJY摆棋子 (三维偏序CDQ+树状数组)

    题目大意: 洛谷传送门 这明明是一道KD-Tree,CDQ分治是TLE的做法 化简式子,$|x1-x2|-|y1-y2|=(x1+y1)-(x2+y2)$ 而$CDQ$分治只能解决$x1 \leq x ...

  5. Zend 官方框架增加 Swoole 协程支持 !

    前言 Zend Framework 是 PHP 的官方框架,随着 Zend-Expressive-Swoole 0.2.2 的发布,率先支持了 Swoole 4 的协程功能,现在可以仅通过一个配置即可 ...

  6. 移植Mplayer到OK6410开发板

    移植Mplayer到OK6410开发板 作者:vasage 项目需要,需要将Mplayer移植到开发板上,所以今天花了一下下午成功移植,其中参考很多文档,后发现许多文档陈旧,些许文档有少量错误,所以这 ...

  7. Python - 采用 contextmanage 简化代码

    contextlib.contextmanage Python 2.7 documents: https://docs.python.org/2.7/library/contextlib.html?h ...

  8. ZOJ 3891 K-hash

    K-hash Time Limit: 2000ms Memory Limit: 131072KB This problem will be judged on ZJU. Original ID: 38 ...

  9. test/exec/match

    1) test  检查指定的字符串是否存在var data = “123123″;var reCat = /123/gi;alert(reCat.test(data));  //true//检查字符是 ...

  10. 【前端福利】用grunt搭建自己主动化的web前端开发环境-完整教程

    jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发者.假设你如今还不知道grunt或者听说过. ...