搭建hadoop、hdfs环境--ubuntu

时间:2020-12-02 01:11:44

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

软件准备

>  虚拟机(VMware)

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

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

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

搭建hadoop、hdfs环境--ubuntu

>  Java环境

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

搭建hadoop、hdfs环境--ubuntu

>  WinScp

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

  安装啦!

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

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

搭建hadoop、hdfs环境--ubuntu

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

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

搭建hadoop、hdfs环境--ubuntu

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

搭建hadoop、hdfs环境--ubuntu   --->搭建hadoop、hdfs环境--ubuntu

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

搭建hadoop、hdfs环境--ubuntu

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    --->将压缩文件解压到指定目录中(同上)

搭建hadoop、hdfs环境--ubuntu

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

第二步:配置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

搭建hadoop、hdfs环境--ubuntu

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

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

同chap2

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

搭建hadoop、hdfs环境--ubuntu

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

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

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

搭建hadoop、hdfs环境--ubuntu

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

搭建hadoop、hdfs环境--ubuntu

第一次登录,会问要不要。当然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(同上)

搭建hadoop、hdfs环境--ubuntu

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

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

搭建hadoop、hdfs环境--ubuntu

没有问题!

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

第四步:配置hadoop的site文件

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

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

文件: core-site.xml

搭建hadoop、hdfs环境--ubuntu

文件:mapred-site.xml.template

搭建hadoop、hdfs环境--ubuntu

文件:hdfs-site.xml

搭建hadoop、hdfs环境--ubuntu

文件:hadoop-env.sh

搭建hadoop、hdfs环境--ubuntu

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

>chap2:写主机名文件

vim masters

搭建hadoop、hdfs环境--ubuntu

vim slaves

搭建hadoop、hdfs环境--ubuntu

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

搭建hadoop、hdfs环境--ubuntu

完成所有机器相同配置

 第四步:启动hadoop

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

>  chap1:格式化

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

搭建hadoop、hdfs环境--ubuntu

>  cha2:启动

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

在master节点执行jps

搭建hadoop、hdfs环境--ubuntu

在node节点执行jps

搭建hadoop、hdfs环境--ubuntu

搭建hadoop、hdfs环境--ubuntu

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

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

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

搭建hadoop、hdfs环境--ubuntu

注意事项/个人经验

  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. 【The final】软件工程实践总结

    软件工程就这么告一段落了,竟然有那么一丢丢的舍不得-- 一.为拖延找的种种借口     [首先声明]以下纯粹是个人吐槽,仅作记录以便日后自己可以回顾一下往昔罢了,可以直接忽略,跳到第二大点:我的拖延之 ...

  2. 跟Google学习Android开发-起始篇-与其它应用程序交互(1)

    6 与其它应用程序交互 一个Android应用程序通常有多个活动.每一项活动都将显示一个用户界面,允许用户执行某种特定任务(如查看地图或者照片).为了把用户从一个活动带到另一个,你的应用必须使用Int ...

  3. dedecms模板中使用php代码

    {dede:php} echo “test”: {/dede:php} 使用这段代码之前要在后台的系统--系统基本参数--其它选项 里找到 模板引擎禁用标签: php  将其删除

  4. 用Python学分析 - 正态分布

    正态分布(Normal Distribution) 1.正态分布是一种连续分布,其函数可以在实线上的任何地方取值. 2.正态分布由两个参数描述:分布的平均值μ和方差σ2 . 3.正态分布的取值可以从负 ...

  5. appium 手势

    1.2 appium玩转安卓手机 智能手机发展到今天,形成了一整套有关手势操作的操作习惯,如手指左右上下滑动,及双指缩放,还有手指的滑动解锁,摇晃手机等动作.那么我们怎么在python中利用appiu ...

  6. pycharm 运行py文件一直updating indexing

    1.解决一直索引python目录下的文件 File - Settings - Project: yourprojectname - Project Structure - Right click on ...

  7. 使用标准C读取文件遇到的结构体对齐问题及其解决办法

    作者:朱金灿 来源:http://blog.csdn.net/clever101 同事使用标准C库读取文件,发现总是读取不对,让我帮忙看一下. 原来他定义了如下一个结构体: // 定义块的结构 typ ...

  8. bash shell seq的用法

    seq 1 3 100 , 表示起始值为1, 间隔为3,终点值为100 #!/bin/bash aa=(1 2 3 17) #for i in 1 2 3 13 for i in ${aa[*]} d ...

  9. VS2010调试多进程

    http://msdn.microsoft.com/zh-cn/library/ms123401.aspx 选择启动项目 在“解决方案资源管理器”中,右击项目名,然后在快捷菜单上单击“设为启动项目”. ...

  10. Mysql 知识(1)

    1. 请简洁地描述下MySQL中InnoDB支持的四种事务隔离级别名称,以及逐级之间的区别? 答: SQL标准定义的四个隔离级别为:read uncommited,read committed,rep ...