一、准备条件

1.四台Linux虚拟机(1台NameNode节点,1台Secondary节点(Secondary和其中1台DataNode共用),外加2台DataNode)

2.下载Hadoop版本,本例使用Hadoop-2.5.2版本

二、安装Java  JDK 

最好安装,JDK 1.7 因为JDK 1.7的兼容性最好

#安装JDK
rpm -ivh jdk-7u79-linux-x64.rpm #配置环境变量
vi /root/.bash_profile JAVA_HOME=/usr/java/jdk1..0_79
PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/usr/local/hadoop-2.5.
PATH=$PATH:$HADOOP_HOME/bin
#HADOOP_HOME 是后面要用到的,为了方便提前写进来

配置完成以后,通过  java -version可以查看是否安装成功

三、配置hosts文件

vi /etc/hosts
#在该文件中建入
192.168.171.15 node5
192.168.171.16 node6
192.168.171.17 node7
192.168.171.18 node8

四、安装SSH 设置免密码登录

#创建密钥(一定要在NameNode节点上):
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
#将密钥添加到公钥:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

然后将公钥添加到其他节点的authorized_keys上:

$ scp ~/.ssh/id_dsa.pub root@node6:/opt
$ scp ~/.ssh/id_dsa.pub root@node7:/opt
$ scp ~/.ssh/id_dsa.pub root@node8:/opt
#然后分别登录这三台虚拟机,将公钥覆盖到公钥中
$ cat /opt/id_dsa.pub >> ~/.ssh/authorized_keys

如果在进行上述操作的时候报:

-bash: /root/.ssh/authorized_keys: No such file or directory的错误,则需要先在该节点上创建一下本地公钥,然后再把主节点上的公钥添加到该节点上,具体操作看上方NameNode操作;

配置完成以后使用nameNode 分别:ssh node6 ; ssh node7  ssh node8 ;如果在登录的时候没有显示要输入密码则说明成功了;(在ssh 登录一个节点以后,需要先退出然后才能再登录,使用exit退出);

五、安装Hadoop 

1.解压hadoop-2.5.1 并移动到/usr/local/hadoop-2.5.1

$ tar -zxvf hadoop-2.5.1.tar.gz
$ mv hadoop-2.5.1 /usr/local

2.配置Hadoop配置文件

$ cd /usr/local/hadoop-2.5.1/etc/hadoop/
$ vim hadoop-env.sh
#写入
export JAVA_HOME=/usr/java/latest $ vim etc/hadoop/core-site.xml
#写入,配置NameNode的读写入口点和目录
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://node5:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop</value>
</property>
</configuration> $ vim etc/hadoop/hdfs-site.xml
#写入,配置Secondry
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node6:50090</value>
</property>
<property>
<name>dfs.namenode.secondary.https-address</name>
<value>node6:50091</value>
</property>
</configuration>

配置DataNode节点:

$ vim etc/hadoop/slaves
#写入 配置dataNode
node6
node7
node8 $ vim etc/hadoop/masters
#写入,配置HDFS的secondry节点
node6

配置完成后将所有的配置文件在其他节点上覆盖一下:

scp -r hadoop/ root@node8:/usr/local/hadoop-2.5.1/etc/hadoop/
scp -r hadoop/ root@node6:/usr/local/hadoop-2.5.1/etc/hadoop/
scp -r hadoop/ root@node7:/usr/local/hadoop-2.5.1/etc/hadoop/

关闭防火墙,并同步时间:

$ service iptables stop
$ ntpdate s2c.time.edu.cn

3.格式化并初始化

$ bin/hdfs namenode -format

4.启动并访问

$ sbin/start-dfs.sh
#这是关闭命令
$ sbin/stop-dfs.sh

访问 nodeName:http://node5:50070/    http://node6:50070/ 如果能看到以下界面就说明成功了:

七、在HDFS上 创建上传文件

$ hdfs dfsadmin #查看帮助
$ hdfs dfs -mkdir /test #创建HDFS的根目录
$ hdfs dfs -ls / #查看hdfs的目录
$ hdfs dfs -put /root/** /test/ #上传文件到hdfs
$ hdfs dfs chmod -777 /test #放开hdfs的权限
$ hdfs dfs -help ls #查看命令帮助

Hadoop 1、在虚拟机上进行 HDFS 安装的更多相关文章

  1. 【运维技术】VM虚拟机上使用centos7安装docker启动gogs服务教程【含B站视频教程】

    VM虚拟机上使用centos7安装docker启动gogs服务视频教程 BiliBili视频教程链接飞机票,点我 使用VMware Workstation安装Centos7 MinMal系统 第一步: ...

  2. Linux 虚拟机上安装linux系统 (ip:子网掩码,网关,dns,交换机,路由知识回顾)

    一 安装虚拟机 二 虚拟机上配置好在安装linux系统 三 知识回顾 交换机:主机在局域网内的身份是MAC地址(可以通过[交换机广播:交换机通过被动学习来建立一张“接口号”和“MAC地址”的对照表]或 ...

  3. 在Windows Azure虚拟机上开发Windows 8 应用

    前提条件 Windows Azure开发者账号:如果您拥有微软MSDN Subscription账户,那么意味着您可免费申请Windows Azure开发者账号. 创建虚拟机 点击Windows Az ...

  4. 在Ubuntu虚拟机上搭建青岛OJ

    源码地址为:https://github.com/QingdaoU/OnlineJudge 可参考的文档为:https://github.com/QingdaoU/OnlineJudgeDeploy/ ...

  5. hadoop学习;大数据集在HDFS中存为单个文件;安装linux下eclipse出错解决;查看.class文件插件

    sudo apt-get install eclipse 安装后打开eclipse,提示出错 An error has occurred. See the log file /home/pengeor ...

  6. VMware虚拟机上安装linux和克隆

    虚拟机上安装好一台linux 系统后.为了高速搭建hadoop集群.须要再安装几个linux系统,比較笨的办法能够又一次用ios 镜像文件进行安装.可是又一次安装须要又一次配置一些信息并且安装时间比較 ...

  7. 在VM虚拟机上安装Microsoft Dynamics CRM 2016 步骤图解及安装注意事项

    安装Dynamics CRM 2016环境配置要求: 系统版本:Windows Server 2012 R2(必须) SQL 版本: SQLServer2014SP1-FullSlipstream-x ...

  8. 虚拟机上安装ArchLinux笔记

    安装前的自白: 想使用ArchLinux,就直接在虚拟机上先装一个玩起来先.虚拟机使用的是Vmware,下载免费的个人版本就可以了. Arch Linux的版本为2016.4.1 内核为4.4.5 在 ...

  9. 虚拟机上安装Linux操作系统

    很久之前就知道虚拟机这个东西,也都在虚拟机上安装过Windows的操作系统和Linux的操作系统,但是一直都没有去做笔记. 最近还是比较有时间,就移除了前两天刚刚安装的Linux系统,重新安装一次,做 ...

随机推荐

  1. 互联网程序设计c++

    地址:ftp.sist.stdu.edu.cn用户名:lzh_hlw20133密码:lzhstdftp端口:2014

  2. Android中AsyncTask的简单用法 .

    在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行.在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只 ...

  3. laravel敏捷应用

    App Category Recipes dealing with Laravel's App facade Checking Your Environment Checking if You're ...

  4. Linux系统中C&Cpp程序开发(一)

    之前一直在Windows系统下进行程序的设计,近期开始学习使用Linux系统,因而打算将程序开发也转移到Linux系统下.今天先简单介绍一下该系统下的C程序开发步骤. 首先要预先安装vim和gcc工具 ...

  5. redisi配置安装

    一.单机配置 http://www.codeceo.com/article/centos-redis-setup.html 二.测试安装情况 http://blog.sina.com.cn/s/blo ...

  6. css快捷方式

    本来是年前准备整理发布的,都搞定50%了,一篇万恶的<盗墓笔记:九幽将军>让我猪油蒙了心.....诶,不说了,搞一半就算了,最后还忘了保存,此刻只听得那一万只草某马呼啸而过... 言归正传 ...

  7. pd的django To do list教程-----(2)models模型的建立

    1:在models.py中建表 from django.db import models class Tcontent(models.Model): content = models.CharFiel ...

  8. ReportViewer导出功能筛选

    ReportViewer只能导出Excel,把导出Word和PDF功能去掉 <rsweb:ReportViewer ID="ReportViewer1" runat=&quo ...

  9. Android WiFiDirect 学习(二)——Service Discovery

    Service Discovery 简介 在Android WifiDirect学习(一 )中,简单介绍了如何使用WifiDirect进行搜索——连接——传输. 这样会有一个问题,那就是你会搜索到到附 ...

  10. Objective-C基础之──多态

    Objective-C语言是面向对象的高级编程语言,因此,它具有面向对象编程所具有的一些特性,即:封装性.继承性和多态性. 今天介绍一下Objective-C中的多态性. 一.什么是多态 多态:不同对 ...