Centos搭建Hadoop

一、搭建Hadoop需要JDK环境,首先配置JDK

Centos下安装JDK1.8

二、下载haoop

官网地址:hadoop官网下载地址

三、在Centos服务器上解压下载好的安装包

  tar -zxvf hadoop-3.1.2.tar.gz

四、修改配置文件

进入到/hadoop/etc/hadoop目录,首先修改

4.1 hadoop-env.sh

添加export JAVA_HOME=/usr/java/jdk1.8.0.144;

添加:

# set hadoop environment virables
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"

4.2 core-site.xml

添加如下信息:

<configuration>
<property>
<name>fs.default.name</name>
# 此处可能会埋坑,也可直接根据Ip进行设置如:hdfs://192.168.x.xx:9000
<value>hdfs://alary001:9000</value>
</property>
</configuration>

4.3 hdfs-site.xml

<configuration>
<property>
<name>dfs.name.dir</name>
# 需要在目录/usr/local/处新建一个名为data的文件夹
<value>/usr/local/data/datanode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/data/tmp</value>
</property>
<property>
# hadoop的备份系数
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>

dfs.replication一般设置多大的值比较合适?

dfs.replication=3表示冗余份数,这是hdfs的容错机制,防止有磁盘受损后数据损害。

Hadoop的备份系数是指每个block在hadoop集群中有几份,系数越高,冗余性越好,占用存储也越多。备份系数在hdfs-site.xml中定义,默认值为3.

4.4 mapred-site.xml

首先,需要查看是否有该配置文件,若无该文件,可以通过重命名mv mapred-site.xml.template mapred-site.xml改成此文件名。

修改内容如下:

<configuration>
<property>
# 指的是使用yarn运行mapreduce程序
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

启动了HDFS之后,就可以启动yarn了。执行命令start-yarn.sh即可启动MapReduce集群。

4.5 yarn-site.xml

修改内容如下:

<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>alary001</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

YARN中的资源管理器(Resource Manager)负责整个系统的资源管理和调度,并内部维护了各个应用程序的ApplictionMaster信息,NodeManager信息,资源使用信息等。在2.4版本之后,Hadoop Common同样提供了HA的功能,解决了这样一个基础服务的可靠性和容错性问题。

ResourceManager (RM)负责跟踪集群中的资源,以及调度应用程序(例如,MapReduce作业)。在Hadoop 2.4之前,集群中只有一个ResourceManager,当其中一个宕机时,将影响整个集群。高可用性特性增加了冗余的形式,即一个主动/备用的ResourceManager对,以便可以进行故障转移。

YARN HA的架构如下图所示:

五、配置环节变量/etc/profile

需要配置JAVA_HOME以及HADOOP的相关配置,配置内容如下:

export JAVA_HOME=/usr/local/java/jdk1.8.0_131
export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar # set hadoop environment
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib" export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH:$HADOOP_HOME/sbin

然后执行source /etc/profile,让配置文件生效

六、格式化NameNode

在任意目录下(配置Hadoop环境变量的情况下)执行命令:

hdfs namenode -format或者hadoop namenode -format

实现格式化。

七、启动hadoop进程

执行start-dfs.sh(注意中间没有空格);没有配置ssh免密登录之前,会不停的需要输入yes和密码,最后界面如图:

八、测试访问50070端口

关闭防火墙后,

service iptables stop

打开浏览器输入:http://192.168.x.xxx:50070/

九、启动yarn

执行start-yarn.sh启动yarn计算进程。

在浏览器中:http://192.168.x.xxx:8088/打开主页面:

踩坑填坑记录:

官网下载hadoop包,切记要下载好正确的tar.gz包,第一次因为下错包,导致各种各样的错误出现。

配置文件的修改,修改配置文件时,一定要细心细心再细心,常常因为输入一个字母或符号导致出错,之前配置时,因为多输入一个:,导致排查错误很多次。

配置文件(*-site.xml)中的主机名都可以换为ip。

如果使用主机名配置时,需要注意修改系统主机名和映射文件

修改主机名称:


vi /etc/sysconfig/network HOSTNAME=xxxx

配置映射信息:

启reboot,之后就可以使用主机名访问了 ,但是使用主机名访问只能虚拟机内。若需要在外部也使用主机名访问,在windows中配置hosts即可。

启动yarn和dfs时,如果不想重复输入密码,则需要进行ssh免密码登录配置。

WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER.

adoop启动时WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER.错误。

解决方案,在$ vim sbin/start-dfs.sh $ vim sbin/stop-dfs.sh 将

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

改为:

HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

hadoop 3.x 启动过程中 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

出现这种状况是因为当前账号没有配置ssh免密登录;

hadoop 3.x 启动过程中 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

hadoop 集群开启之后datanode没有启动

这个问题困扰了我很久,Master机器的各项都成功没有问题,slave机器的datanode各种启动不出来,尝试了网上的各种说法,最后还是有问题,但怀疑还是有部分配置没设置对,待查看。

hadoop 集群开启之后datanode没有启动

Hadoop集群所有的DataNode都启动不了解决办法

Centos 搭建Hadoop的更多相关文章

  1. 基于Centos搭建 Hadoop 伪分布式环境

    软硬件环境: CentOS 7.2 64 位, OpenJDK- 1.8,Hadoop- 2.7 关于本教程的说明 云实验室云主机自动使用 root 账户登录系统,因此本教程中所有的操作都是以 roo ...

  2. Centos搭建spark

    Centos搭建spark 一.spark介绍 二.spark安装前提 三.集群规划 四.spark安装 五.修改spark环境变量 六.修改spark-env.sh 七.修改slaves 八.将安装 ...

  3. hadoop集群搭建--CentOS部署Hadoop服务

    在了解了Hadoop的相关知识后,接下来就是Hadoop环境的搭建,搭建Hadoop环境是正式学习大数据的开始,接下来就开始搭建环境!我们用到环境为:VMware 12+CentOS6.4 hadoo ...

  4. Centos搭建mysql/Hadoop/Hive/Hbase/Sqoop/Pig

    目录: 准备工作 Centos安装 mysql Centos安装Hadoop Centos安装hive JDBC远程连接Hive Hbase和hive整合 Centos安装Hbase 准备工作: 配置 ...

  5. 『实践』VirtualBox 5.1.18+Centos 6.8+hadoop 2.7.3搭建hadoop完全分布式集群及基于HDFS的网盘实现

    『实践』VirtualBox 5.1.18+Centos 6.8+hadoop 2.7.3搭建hadoop完全分布式集群及基于HDFS的网盘实现 1.基本设定和软件版本 主机名 ip 对应角色 mas ...

  6. 基于CentOS与VmwareStation10搭建hadoop环境

    基于CentOS与VmwareStation10搭建hadoop环境     目 录 1. 概述.... 1 1.1. 软件准备.... 1 1.2. 硬件准备.... 1 2. 安装与配置虚拟机.. ...

  7. Hadoop 3.0完全分布式集群搭建方法(CentOS 7+Hadoop 3.2.0)

    本文详细介绍搭建4个节点的完全分布式Hadoop集群的方法,Linux系统版本是CentOS 7,Hadoop版本是3.2.0,JDK版本是1.8. 一.准备环境 1. 在VMware worksta ...

  8. 基于Eclipse搭建Hadoop源码环境

    Hadoop使用ant+ivy组织工程,无法直接导入Eclipse中.本文将介绍如何基于Eclipse搭建Hadoop源码环境. 准备工作 本文使用的操作系统为CentOS.需要的软件版本:hadoo ...

  9. virtualbox 虚拟3台虚拟机搭建hadoop集群

    用了这么久的hadoop,只会使用streaming接口跑任务,各种调优还不熟练,自定义inputformat , outputformat, partitioner 还不会写,于是干脆从头开始,自己 ...

随机推荐

  1. springboot容器启动顺序之@Configuration ContextRefreshedEvent事件初始化 ApplicationRunner

    笔者最近遇到一个问题 我们根据自己业务需要  需要首次启动springboot项目时 把数据库数据同步至本地缓存(比如ehcache)但有一个要求 在缓存未载入成功  不允许有流量打入 一开始我们使用 ...

  2. canvas--总结一

    一.什么是Canvas? HTML5的canvas元素使用JavaScript在网页上绘制图像: 画布是一个矩形区域,可以控制其每一像素: canvas拥有多种绘制路径,矩形,圆形,字符以及添加图像的 ...

  3. @component的作用详细介绍

    最近项目要采用spring boot在学习的spring boot 的过程中第一次见到@component注解,特意在网上搜索下,摘录在此方便日后查阅. 1.@controller 控制器(注入服务) ...

  4. MySQL [ERROR] Table 'mysql.user' doesn't exist

    问题描述: 在安装MYsql时,/etc/init.d/mysqld start时报错: [root@master data]# /etc/init.d/mysqld start Starting M ...

  5. 权限管理&用户组管理

    权限管理&用户组管理 Linux用户介绍: 1.什么是用户? 用户对硬件资源的操作都需要通过操作系统,比如用户要读取硬盘中的一份关键数据 出于安全考虑,操作系统的开发者们都专门开发了安全机制, ...

  6. Modbus仿真器 Modbus Poll 和Modbus Slave详细图文教程

    Modbus Poll 是Witte Software公司开发的的Modbus主机仿真器,用于测试和调试Modbus从设备.软件支持ModbusRTU.ASCII.TCP/IP协议.支持多设备监控,可 ...

  7. TCP/IP五层模型概述

    • 为什么要分层?    ○ 协议太多,将众多协议分层解决,能提高效率,复杂问题简单化,更容易发现问题,并针对性解决问题.• OSI七层模型     ○ 同层使用相同的协议,下层为上层提供服务.   ...

  8. Redis集群搭建与简单使用【转】

    Redis集群搭建与简单使用 安装环境与版本 用两台虚拟机模拟6个节点,一台机器3个节点,创建出3 master.3 salve 环境. redis 采用 redis-3.2.4 版本. 两台虚拟机都 ...

  9. web渗透之常见shell反弹姿势

    常见反弹shell总结: 原文链接请点击:https://ruoli-s.github.io/posts/b956.html 一.bash反弹 通用 ① 在kali机里面开启端口监听: nc -lvv ...

  10. 【EXP】导出数据库dmp文件,只有几张表有数据,剩下的所有表只有表结构没有数据

    导出一个dmp,指定的表中有数据,其他的表只有表结构, 有数据的表只有几张,分别是A,B,C三张表,剩下的表都没有数据 思路: 导出一个111.dmp,所有的表都只是表结构 将111.dmp导入到新创 ...