本次安装 hadoop版本为2.7.4,单节点安装。注意,在安装hadoop前要先安装jdk并配置好环境变量。

1. 上传hadoop压缩包文件到服务器上去(主机名centos1,ip 192.168.100.100),或者直接从官网wget方式下载

2. 将压缩文件解压缩到/home/koushengrui/app目录中,重命名为hadoop目录,修改配置文件(配置文件在etc/hadoop目录中)。

第一个:hadoop-env.sh

vi hadoop-env.sh

  修改

  export JAVA_HOME=${JAVA_HOME}

  为  

export JAVA_HOME=/home/koushengrui/app/jdk1.8.0_144

这一步是必须的,实测 如果不在hadoop-env.sh文件中显式指定JAVA_HOME的话,启动hdfs时会报找不到JAVA_HOME错误。

第二个:core-site.xml

<!-- 指定hadoop所使用的文件系统(URI格式,hdfs的主节点namenode的地址) -->
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://centos1:9000</value>
</property>

<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
    <name>hadoop.tmp.dir</name>
    <value>/home/koushengrui/app/hadoop/data</value>
</property>

第三个:hdfs-site.xml

<!-- 指定hdfs副本的数量 -->
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>

第四个:mapred-site.xml

mv mapred-site.xml.template mapred-site.xml

vi mapred-site.xml

<!-- 指定mapreduce运行在yarn上 -->
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

第五个:yarn-site.xml

<!-- 指定yarn主节点resourcemanager的地址-->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>centos1</value>
</property>

<!-- reducer获取数据的方式 -->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

第六个:salves

当前salves文件内容为localhost,表示会去localhost启动datanode,因为是单节点安装,所以localhost是可以的,也可以改为127.0.0.1或者192.168.100.100或者centos1.

如果为集群部署,则内容应为所有datanode所在的主机ip或者主机名。

3. 将hadoop添加到环境变量

vi /etc/proflie

export HADOOP_HOME=/home/koushengrui/app/hadoop

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile

4. 格式化namenode

用root身份, hdfs namenode -format

格式化之后,上面core-site.xml配置的hadoop.tmp.dir对应的/home/koushengrui/app/hadoop/data目录中会生成生成一些文件夹及文件,其中

/home/koushengrui/app/hadoop/data/dfs/name/current/fsimage.ckpt_0000000000000000000为维护元数据的文件。

注意,如果hadoop.tmp.dir值有二次更改的话,在启动hdfs之前要先格式化namenode,否则namenode起不来。当然,格式化之后之前存的元数据都会消失,所以hadoop.tmp.dir值配置好之后就别再改了。

5. 启动hdfs   start-dfs.sh

使用jps命令验证是否启动成功,如果有NameNode、SecondaryNameNode、datanode进程,则hdfs启动成功。

http://192.168.100.100:50070 (HDFS管理界面)

6.启动yarn  start-yarn.sh

使用jps命令验证是否启动成功,如果有ResourceManager、NodeManager进程,则yarn启动成功。

http://192.168.100.100:8088 (yarn管理界面)

跑一个自带的求圆周率的mapreduce小程序:

hadoop jar hadoop-mapreduce-examples-2.7.4.jar pi 3 3

7. 启动hdfs和yarn的时候要输入主机密码,集群多的话可能会超时,所以需要配置ssh免密登陆

hdfs的实现思想:

hdfs是通过分布式集群来存储文件,并对外提供一个虚拟的目录结构以供客户端访问

文件存储到hdfs集群中去的时候是被切分成block的(默认128M),文件的block存放在若干台datanode节点上

hdfs文件系统中的文件与真实的block之间有映射关系,由namenode管理

每一个block在集群中会存储多个副本(dfs.replication配置项),好处是可以提高数据的可靠性,还可以提高访问的并发能力

centos7安装hadoop的更多相关文章

  1. CentOS7 安装Hadoop集群环境

    先按照上一篇安装与配置好CentOS以及zookeeper http://www.cnblogs.com/dopeter/p/4609276.html 本章介绍在CentOS搭建Hadoop集群环境 ...

  2. Centos7安装 Hadoop(单节点)

    1.Hadoop简介 Hadoop是一个由Apache基金会所开发的开源分布式系统基础框架,使用Java开发,是处理大规模数据的软件平台. Hadoop可以从单一节点扩展到上千节点.用户可以在不了解分 ...

  3. centos7 安装hadoop 集群遇到的问题

    集群安装之后,hdfs 不能上传文件,也提示rute等错误,其实是防火墙问题,关闭防火墙即可. CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙.firewa ...

  4. centos7安装hadoop完全分布式集群

    groupadd test             //新建test工作组 useradd -g test phpq        //新建phpq用户并增加到test工作组 userdel 选项 用 ...

  5. CentOS7 搭建Ambari-Server,安装Hadoop集群(一)

    2017-07-05:修正几处拼写错误,之前没发现,抱歉! 第一次在cnblogs上发表文章,效果肯定不会好,希望各位多包涵. 编写这个文档的背景是月中的时候,部门老大希望我们能够抽时间学习一下Had ...

  6. CentOS7 分布式安装 Hadoop 2.8

    1. 基本环境 1.1 操作系统 操作系统:CentOS7.3 1.2 三台虚拟机 172.20.20.100 master 172.20.20.101 slave1 172.20.20.102 sl ...

  7. 基本环境安装: Centos7+Java+Hadoop+Spark+HBase+ES+Azkaban

    1.  安装VM14的方法在 人工智能标签中的<跨平台踩的大坑有提到> 2. CentOS分区设置: /boot:1024M,标准分区格式创建. swap:4096M,标准分区格式创建. ...

  8. Linux上安装Hadoop集群(CentOS7+hadoop-2.8.0)

    1下载hadoop 2安装3个虚拟机并实现ssh免密码登录 2.1安装3个机器 2.2检查机器名称 2.3修改/etc/hosts文件 2.4 给3个机器生成秘钥文件 2.5 在hserver1上创建 ...

  9. Linux上安装Hadoop集群(CentOS7+hadoop-2.8.3)

    https://blog.csdn.net/pucao_cug/article/details/71698903 1下载hadoop 2安装3个虚拟机并实现ssh免密码登录 2.1安装3个机器 2.2 ...

随机推荐

  1. ZROI #88

    传送门 分析 我们考虑把每个A[i]考虑为山峰的高度,每次的B考虑为海平面 于是我们知道对于A[i]和A[i-1],如果A[i-1]<A[i]则在A[i-1]<B<=A[i]时会使陆 ...

  2. ZROI2018普转提day7t2

    传送门 分析 首先我们不难想到我们一定可以将每一个点分开算,然后看这个点被几个矩形包含 于是对于位置为$(i,j)$的点它被包含的次数为$i * (n-i+1) * j * (m-j+1)$ 这个式子 ...

  3. String的字符串相加是怎么实现的?

    http://bbs.csdn.net/topics/60485130 首先看 String str = "a" + "b" + "c"; ...

  4. AutoResetEvent的使用介绍(用AutoResetEvent实现同步)

    前几天碰到一个线程的顺序执行的问题,就是一个异步线程往A接口发送一个数据请求.另外一个异步线程往B接口发送一个数据请求,当A和B都执行成功了,再往C接口发送一个请求.说真的,一直做BS项目,对线程了解 ...

  5. 一键结束port 5037占用

    输入cmd进入dos界面,进入android-sdk-windows\platform-tools目录,执行下面命令启动adb start-server出现下面错误* daemon not runni ...

  6. 市场上主流的BI产品的“答案之书”

    本文来自网易云社区. 从20世纪80年代开始,商业智能的定义出现在人们面前,早期商业智能十分基础和杂乱,不仅仅会把数据处理放进去.还包含有一些可视化方面内容等.这个时期的BI主要的功能是支持多维分析和 ...

  7. 利用excel制作二维码

    1 将想要通过扫描二维码访问的目标网址放入A1单位格 2 在excel 编辑区右击选择“自定义功能区” 3 然后将“开发者工具”选上 4 点击菜单栏的“开发者工具---插入--->其他控件” 5 ...

  8. bootstrap学习(四)输入框、导航

    输入框组: 基本用法: //form-control 占满 //input-group:输入框组//input-group-addon:输入框前加入一个前缀 <div class="i ...

  9. C++ 标准库智能指针

    整理一下c++中shared_ptr,weak_ptr,unique_ptr三种指针的使用案例和注意事项,让程序资源更加案例,在标准库中,需要包含<memory>,在boost库中, 一. ...

  10. Laplace(拉普拉斯)算子

    [摘要] Laplace算子作为边缘检测之一,和Sobel算子一样也是工程数学中常用的一种积分变换,属于空间锐化滤波操作.拉普拉斯算子(Laplace Operator)是n维欧几里德空间中的一个二阶 ...