参考:Hadoop官网文档

版本:hadoop-3.2.0

安装配置jdk

因hadopp是java开发的,所以安装hadoop前需要先有java的jdk环境。

参考:https://blog.csdn.net/u013248434/article/details/70304526

因CentOS7自带java,只需找到java路径,配置环境变量即可

[cjp@centos] which java
/usr/bin/java [cjp@centos] ls /usr/bin/java
/usr/bin/java [cjp@centos] ls -l /usr/bin/java
lrwxrwxrwx. 1 root root 22 Jun 20 03:00 /usr/bin/java -> /etc/alternatives/java [cjp@centos] ls -l /etc/alternatives/java
lrwxrwxrwx. 1 root root 71 Feb 3 17:29 /etc/alternatives/java -> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/bin/java (可以看出文件是link ,是个链接) [cjp@centos] ls -l /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/bin/java
-rwxr-xr-x. 1 root root 7376 Oct 31 05:21 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre/bin/java [cjp@centos] cd /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64
[cjp@centos] ls
jre

配置环境变量

# 添加环境变量
[cjp@centos] sudo vim /etc/profile # 在/etc/profile中加入以下内容
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre
export PATH=$JAVA_HOME/bin:$PATH # 配置文件生效
[cjp@centos] source /etc/profile # 查看是否已添加生效
[cjp@centos] echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.181-7.b13.el7.x86_64/jre

安装Hadoop

本次安装是以练习为目的,使用的是伪分布式模式(只有一台机器),这台机子即是主节点namenodes,同时也有一个计算节点,所有主节点需要可以免密码登陆所有数据节点datanodes的机子;如果还为配置,可执行下面三行代码:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys

下载解压

  • 下载(清华镜像)

    wget http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.2.0/hadoop-3.2.0.tar.gz
  • 解压

    # 解压tar.gz
    tar -xzvf hadoop-3.2.0.tar.gz
    # 解压到指定文件夹:
    tar -xzvf hadoop-3.2.0.tar.gz -C /home/chenjunpeng/app

配置文件

参考:https://www.cnblogs.com/forbeat/p/8179877.html

文件路径: ~/app/hadoop-3.2.0/etc/hadoop

  • java配置

    • hadoop-env.sh

      echo $JAVA_HOME
      >>> /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64/jre

找到并修改

xml export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64/jre

  • hdfs配置

    • core-site.xml(伪分布式模式)

      <!-- 指定HDFS老大(namenode)的通信地址 -->
      <property>
      <name>fs.defaultFS</name>
      <value>hdfs://localhost:9000</value>
      </property> <!-- 指定hadoop运行时产生文件的存储路径 -->
      <!-- 如果不重新设置存储路径,默认是缓冲路径下,每次重启数据就会清空丢失-->
      <property>
      <name>hadoop.tmp.dir</name>
      <value>/home/cjp/app/hadoop-tmp</value>
      </property>
    • hdfs-site.xml

      <!-- 设置hdfs副本数量 -->
      <!-- 1个就是伪分布-->
      <property>
      <name>dfs.replication</name>
      <value>1</value>
      </property>
  • yarn配置

    • mapred-site.xml

      # 由于在配置文件目录下没有,需要复制模版:
      # 新版本已经不是模版了,直接使用
      mv mapred-site.xml.template mapred-site.xml
      <configuration>
      <!-- 通知框架MR使用YARN -->
      <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
      </property>
      </configuration>
    • yarn-site.xml

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

启动hadoop

格式化HDFS

  1. 注意:这一步操作,只是在第一次时执行,每次如果都格式化的话,那么HDFS上的数据就会被清空

  2. bin目录下

    ./hdfs namenode -format

启动hdfs和yarn

# 先启动HDFS
sbin/start-dfs.sh
# 再启动YARN
sbin/start-yarn.sh
[cjp@centos sbin]$ ./start-dfs.sh
Starting namenodes on [localhost]
Starting datanodes
Starting secondary namenodes [centos]
[cjp@centos sbin]$ ./start-yarn.sh
Starting resourcemanager
Starting nodemanagers

可以在浏览器中查看hdfs和mr的状态.

hdfs管理界面:http://localhost:50070 / http://localhost:9870(3.0版本后的端口号)

MR的管理界面:http://localhost:8088

停止hdfs和yarn

sbin/stop-yarn.sh
sbin/stop-dfs.sh

Hadoop常用命令总结

CentOS下搭建Hadoop的更多相关文章

  1. CentOS下安装hadoop

    CentOS下安装hadoop 用户配置 添加用户 adduser hadoop passwd hadoop 权限配置 chmod u+w /etc/sudoers vi /etc/sudoers 在 ...

  2. Linux 下搭建 Hadoop 环境

    Linux 下搭建 Hadoop 环境 作者:Grey 原文地址: 博客园:Linux 下搭建 Hadoop 环境 CSDN:Linux 下搭建 Hadoop 环境 环境要求 操作系统:CentOS ...

  3. CentOS下搭建LAMP环境详解

    前言:在这里将介绍如何在CentOS下搭建LAMP环境(全部使用源码编译安装),用于web服务器开发. •LAMP: Linux + Apache + PHP + Mysql. •系统: CentOS ...

  4. Centos下搭建 nginx+uwsgi+python

    python做web应用最麻烦的还是配置服务器了,此话不假,光中间件就有好几种选择,fastcgi.wsgi.uwsgi,难 免让人眼花缭乱. 而听说uwsgi的效率是fastcgi和wsgi的10倍 ...

  5. CentOS下搭建LNMP+WordPress+http2.0教程

    此文是本人CentOS下搭建WordPress的一些笔记,环境搭建时间::将看过的几篇文章总结下来,形成一条龙长文.不用大家再找来找去. 本文大概分为此几部分: 一.基础命令更新: 二.服务器加速(非 ...

  6. 在CentOS下搭建Android 开发环境

    在CentOS下搭建Android 开发环境 目录 1.环境搭建 1.1.JDK安装 1.2.Eclipse安装 1.3.ADT安装 1.4.Android SDK安装 1.5.Android NDK ...

  7. centos下搭建python双版本环境

    目录 centos下搭建python双版本环境 一.安装python3 1.理清自带python位置 2.更新用于下载编译python3的相关包 3.安装pip 4.用pip安装wget 5.用wge ...

  8. Centos下搭建LAMP+PHP

    Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管 ...

  9. Centos下搭建DNS域名解析服务器

    Centos下搭建DNS域名解析服务器 DNS  即Domain Name System(域名系统)的缩写,它是一种将ip地址转换成对应的主机名或将主机名转换成与之相对应ip地址的一种机制.其中通过域 ...

随机推荐

  1. 【转】SQL 常用关键字释义和用法

    转自: http://blog.csdn.net/iamwangch/article/details/8093933     下面 是 从网络上整理 出来的 SQL 关键字和 常用函数的 释义和简单用 ...

  2. (三)Lua脚本语言入门(数组)

    又要找工作了,变的忧虑了,唯有学习才让内心变得踏实,今天玩了一下午的王者荣耀,正事都忘了...... 如果认为所谓的毅力是每分每秒的“艰苦忍耐”式的奋斗,那这是一种很不足的心理状态.毅力是一种习惯,毅 ...

  3. Linux线程的信号量同步

    信号量和互斥锁(mutex)的区别:互斥锁只允许一个线程进入临界区,而信号量允许多个线程同时进入临界区. 不多做解释,要使用信号量同步,需要包含头文件semaphore.h. 主要用到的函数: int ...

  4. win7中mysql安装

    最近需要用到MySQL,从官网上下载了一个安装文件,但是安装时一直弹出如下提示信息: Configuration of MySQL Server 5.7 is taking longer than e ...

  5. PI monitor error process-RESOURCE_NOT_FOUND-转

    事务:sxi_monitor 状态:system error 类型:Request Message Mapping 错误简要:RESOURCE_NOT_FOUND 错误详细信息: <?xml v ...

  6. Python3入门(一)——概述与环境安装

    一.概述 1.python是什么 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节.类似于PHP和 ...

  7. go语言之行--简介与环境搭建

    一.Go简介 Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后 ...

  8. 20155204《网络对抗》Exp 6 信息搜集与漏洞扫描

    20155204<网络对抗>Exp 6 信息搜集与漏洞扫描 一.实验后回答问题 1.哪些组织负责DNS,IP的管理. 互联网名称与数字地址分配机构,简称ICANN机构,决定了域名和IP地址 ...

  9. JavaEE笔记(十)

    #Spring 为了配置bean对象和维护bean对象之间关系的一个容器框架 #三种注入方法 1 Setter注入2 构造参数注入3 注解注入(原理同1) #自动装配(autowire) 模式 说明 ...

  10. mfc 基类与子类

    基类(父类) 派生类(子类) 一.基类(父类) 基类(又称为父类,基类与派生类是相对的关系! 通过继承机制,可以利用已有的数据类型来定义新的数据类型.所定义的新的数据类型不仅拥有新定义的成员,而且还同 ...