最近在学习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. Linux下搭建hadoop开发环境-超详细

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. 使用Ansible进行项目的自动部署(Tomcat、Weblogic)

    原文:https://github.com/x113773/testall/issues/4 问题:Weblogic/Tomcat 通过JAVA直接远程调用或者调用本地Shell还是通过Ansible ...

  2. 如何简单的实现新手引导之UGUI篇

    一个完整的游戏项目肯定是要做新手引导的,而引导做的好坏可能会影响玩家的留存.那么怎么简单的实现个简有效的引导呢!先不说废话,先看看效果,这是一个基于UGUI做的一个简单的引导! 怎么样,看着是那么回事 ...

  3. Log4Net不同日志类型写入到不同文件

    1. 一直在用log4net,从来没有自己整理过.实践出真知,只有自己整理过才能真正掌握. 2. log4net,应该读logfornet,以前一直说log4,log4............ 安装 ...

  4. java udp服务器设计源码

    根据个人理解写的,轻喷. 没什么大的逻辑,直接上代码. UDPServer.java package mySocket;/* * 服务器端 */import java.awt.GridLayout;i ...

  5. Codeforces Round #418 (Div. 2).C two points

    C. An impassioned circulation of affection time limit per test 2 seconds memory limit per test 256 m ...

  6. 原生的Ajax的实现

    <script type="text/javascript"> // Ajax固定的模版 // 第一步:创建xhr对象,使用new关键字来调用内置的构造函数 var x ...

  7. js字符串与数组的相互转换

    一.数组转字符串,通过join()拼接数组元素 var a, b,c; a = new Array(a,b,c,d,e); b = a.join('-'); c = a.join('');consol ...

  8. visual studio高效率插件及快捷键

    visual studio从2010开始支持插件安装(工具->扩展管理器),这里推荐几个插件,可以极大的提升开发效率: Visual Assist X(VAssistX) VAssistX是wh ...

  9. 扩展SQLite使其能从apk文件中读取db

    游戏中会大量使用到配置文件,每个项目组根据自己不同的需求会选择不同的存储格式,比如使用Json或者SQLite来存储数据.此处我们只对使用SQLite的情况来做讨论.一般情况下会选择把它放在可读写目录 ...

  10. php简明学习笔记

    1.变量 <?php //变量声明(php变量无需单独创建,变量会在第一次赋值时创建) $a = 1; //弱类型(php变量会根据其值自动转换为相应的数据类型) $a = "a&qu ...