代码编织梦想

一、虚拟机安装与配置

​ 注意,本文不适合小白操作,查看至少需要一点儿linux操作基础,因为其中有很多命令并没有写出来。比如使用vi修改文件后,需要使用:wq来保存并退出。

安装Hadoop集群时需要多个服务器,所以需要安装多个虚拟机,请自行安装。

配置服务器的hosts文件,就是将多个服务器之间建立域名配置(这样就可以使用域名来代替ip使用)。

vi /etc/hosts

最后添加如下内容(左边为每个服务器的ip,右边为主机名)

192.168.83.3 hadoop01
192.168.83.4 hadoop02
192.168.83.5 hadoop03

服务器ssh免密登录功能配置

​ 服务器要开启ssh服务,一般的虚拟机都会自带的,如果没有,请自行安装

ssh-keygen -t rsa

输入上述命令后,不用输入任何东西,边按4次Enter键确认,会在root目录下生成一个包含有密钥文件的.ssh隐藏文件夹,进入目录可以看到有两个文件id_rsa.pub(公钥)和id_rsa。

cd /root/.ssh
ll -a

使用命令直接复制到其他服务器上

ssh-copy-id hadoop02
ssh-copy-id hadoop03

此时,在hadoop01机器上,输入ssh hadoop02或者ssh hadoop03时就可以免密登录服务器了

上述步骤需要重复,直到3个服务器之前都实现免密登录

二、Hadoop集群搭建

2.1 安装JDK,建议使用jdk1.8及以上(自行解决)

2.2 Hadoop安装

以2.10.1为例,进行安装

  • 下载
    • 可以到网页上下载 https://archive.apache.org/dist/hadoop/common
    • 也可以直接使用wget命令下载
wget https://mirrors.aliyun.com/apache/hadoop/common/hadoop-2.10.1/hadoop-2.10.1.tar.gz
  • 解压,我是直接解压到home里的
tar -zxvf hadoop-2.10.1.tar.gz /home
  • 配置hadoop环境变量
  vi /etc/profile

写入以下内容

  # 配置Hadoop系统环境变量
  export HADOOP_HOME=/home/hadoop-2.10.1
  export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

然后执行以下命令使环境变量生效(centos下修改环境变量就是这3步,记住就好了)

  source /etc/profile
  • 使用如下命令可以查看是否hadoop安装成功
  hadoop version

三、Hadoop集群配置

3.1 配置Hadoop集群主节点

在hadoop安装目录下的etc/hadoop目录下

  • 修改hadoop-env.sh文件(如果配置了JAVA_HOME环境变量,这步可跳过)
  export JAVA_HOME=/usr/local/jdk/jdk1.8.0_341
  • 修改core-site.xml文件

    主要设置主进程NameNode运行主机和Hadoop运行时生成的临时目录

  <configuration>
    <!--用于设置Hadoop的文件系统,由URI指定-->
    <property>
      <name>fs.defaultFS</name>
      <!--用于指定namenode地址,在hadoop01机器上,是可以使用80端口的-->
      <value>hdfs://hadoop01:9000</value>
    </property>
    <!--用于设置Hadoop临时目录,可以不设置,默认在/tmp/hadoop-${user.name}-->
    <property>
      <name>hadoop.tmp.dir</name>
      <!--用于指定namenode地址,在hadoop01机器上-->
      <value>/home/hadoop-2.10.1/tmp-${user.name}</value>
    </property>
  </configuration>
  • 修改hdfs-site.xml文件

    ​ 用来设置NameNode和DateNode两大进程,主要设置了Secondary NameNode 所在的服务的HTTP协议地址

  <configuration>
    <!--用于设置HDFS副本的数量,默认为3-->
    <property>
      <name>dfs.replication</name>
      <value>3</value>
    </property>
    <!--secondary namenode所在主机的ip和端口-->
    <property>
      <name>dfs.namenode.secondary.http-address</name>
      <value>hadoop02:50090</value>
    </property>
  </configuration>
  • 修改mapred-site.xml文件

    ​ 这个文件不是直接存在的需要从mapred-site.xml (1).template重命名过来。

    cp mapred-site.xml .template mapred-site.xml

  <configuration>
    <!--指定MapReduce运行时的框架,这里指定在YARN上,默认是local-->
    <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
    </property>
  </configuration>
  • 修改yarn.site.xml

    ​ 配置让YARN用来做资源管理框架

  <configuration>
    <!--指定YARN集群管理者(ResourceManager,RM)的地址-->
    <property>
      <name>yarn.resourcemanager.hostname</name>
      <value>hadoop01</value>
    </property>
    <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
    </property>
  </configuration>
  • 修改slaves文件

    ​ 用来配置hadoop中的集群,删除其中的localhost

  hadoop01
  hadoop02
  hadoop03

3.2 将集群主节点的配置方伯分发到其他子节点

3.1中完成的Hadoop集群主节点hadoop01的配置,还压根把系统配置文件、JDK安装目录和Hadoop安装目录分发到其他子节点hadoop02和hadoop03上,使用的scp命名,具体使用方法,可以自己了解下,不要直接复制下边的指令哈(如果不会用scp,自己手动把上边的步骤在每个服务器上做一遍)。

scp /etc/profile hadoop02:/etc/profile
scp /etc/profile hadoop03:/etc/profile
scp -r /usr/local/jdk/jdk1.8.0_341/ hadoop02:/usr/local/jdk/
scp -r /usr/local/jdk/jdk1.8.0_341/ hadoop03:/usr/local/jdk/
scp -r /home/hadoop-2.10.1 hadoop02:/home
scp -r /home/hadoop-2.10.1 hadoop03:/home

四、Hadoop集群测试

4.1 格式化文件系统
hdfs namenode -format

或者

hadoop namenode -format
4.2 启动或者关闭Hadoop集群

​ 可以单节点逐个启动和关闭,也可以用脚本一键启动或关闭

  • 单节点逐个启动

    • 在主节点上启动HDFS NameNode
    hadoop-daemon.sh start namenode
  • 在每个节点上使用以下指定启动HDFS DataNode 进程
    hadoop-daemon.sh start datanode
  • 在主节点上使用以下指令启动YARN ResourceManager进程:
    yarn-daemon.sh start nodemanager
  • 在每个从节点上使用以下指令启动YARN nodemanger进程:
    yarn-daemon.sh start nodemanager
  • 在hadoop02上使用以下指令启动SecondaryNameNode进程:
    hadoop-daemon.sh start secondarynamenode
  • 脚本一键启动

    ​ 要求每个节点之前开启ssh免密登录,上文中有写

    • 在主节点上使用以下命令启动HDFS进程
    start-dfs.sh
  • 在主节点上启动所有的YARN进程
    start-yarn.sh

hadoop大数据

4.3 关闭Hadoop集群

不论是单个节点启动还是一键启动,只需要把上边的start换成stop就可以停止了

4.4 通过UI 查看Hadoop运行状态

注意在windows中的hosts中配置域名映射(内容和上边在虚拟机中配置的一样)。还有虚拟机上记得关闭防火墙放行50070和8088端口

然后在浏览器输入hadoop01:50070 和hadoop01:8088
在这里插入图片描述在这里插入图片描述

更多学习内容请关注我的博客 jhacker.cn

来自小鱼吃猫的创作,关于微信公众号小鱼与Java获取更多学习资料
本文链接:https://blog.csdn.net/weixin_43605736/article/details/127151527

手把手教你搭建hadoop集群搭建(centos7+hadoop2.8.2)_死了123456789的博客-爱代码爱编程

本集群所需软件: VMwareworkstation64_12.5.7.0 Xmanager Enterprise 4 Build 0182 CentOS-7-x86_64-DVD-1708 hadoop-2.8.2.tar jdk-8u151-linux-x64.tar 三台主机 master 192.168.1.140 slave1 1

Hadoop--手把手教你使用WSL搭建hadoop实分布集群-爱代码爱编程

系统及环境 网络环境:处于局域网下的部分机器(>=4) 系统版本:win10较新版本,支持子系统 子系统版本:ubuntu18.04 其他软件:Xshell6,Xftp6 实验要求:在多台机器上安装hadoop,配置完成后,可以在完成官方demo的wordcount功能,实现其他功能 下载安装wsl(ubuntu) 系统要求:win10较新版本

手把手教你搭建hadoop集群(CentOS6.X)-爱代码爱编程

一、新建虚拟机 略(只要建立一个普通的虚拟机即可,虚拟机作为主机:hadoopmaster) 启动此虚拟机如上图所示。   二、VMware VMnet8 模式共享主机网络配置 NAT 网络模式:        宿主机可以看做一个路由器,虚拟机通过宿主机的网络来访问 Internet ;

hadoop集群图解_手把手教你通过Ambari新建Hadoop集群图解案例-爱代码爱编程

[root@node101 ~]# yum -y update ......(内容太多了我就懒得复制了~) libdrm.x86_64 0:2.4.91-3.el7 libffi.x86_640:3.0.13-18.el7 libgcc.x86_640:4.8.5-36.el7 libgcrypt.x86_640:1.5.3-14.el7 l

手把手教你hadoop集群配置(详细)-爱代码爱编程

本博客用到的虚拟机客户机已将前五步完成,从6)开始 现有三台客户机,hadoop112,hadoop113,hadoop114。其中hadoop112已完成JDK、Hadoop的安装以及环境变量的配置。所以需要将112上的两者复制到113和114上。 1、将JDK用scp方法从112复制到113上 scp -r jdk1.8.0_212/ dlw@ha

Hadoop集群搭建准备环境,手把手教你一步一步搭建,超详细-爱代码爱编程

Hadoop运行环境搭建准备环境 ​ 由于各种原因,本人决定要在实验室使用三台主机搭建一个集群,集群使用的机器是三台破旧主机,破旧到什么程度,就是去库房拔了一下午,扒到了三台勉强还能跑的动的电脑,一言难尽,但总归是找到了三台,配置不高,主要是用于平时的练手实验使用。 ​ 在主机准备好了之后,就是最开始的一步,重装系统,之前搭建系统使用的是Ubuntu2

【教程】手把手教你如何搭建Hadoop单机伪集群-爱代码爱编程

作者:幻好 来源:恒生LIGHT云社区 概述 本文将通过虚拟机搭建单机伪集群的Hadoop服务,帮助更好的学习和理解Hadoop大数据平台的运行原理。具体到每个细节,方便新手学习和理解。 环境准备 Linux centos 7(虚拟机)JDK1.8Hadoop 2.5+JDK系统环境配置 首先检查系统是否安装JDK,如果安装,确

手把手带你搭建Hadoop分布式集群-爱代码爱编程

文章目录 手把手带你搭建Hadoop集群虚拟机配置修改网络配置文件⚠ ens33找不到三台机子--关闭防火墙三台机子--关闭selinux三台机子--修改主机名三台机子--主机名与ip地址映射三台机子--时钟同步三台机子 -- 添加普通用户三台机子--定义同一目录三台机子hadoop用户免登三台机子--关机重启安装jdk环境Hadoop下载安装服务

手把手教你搭建HADOOP集群-爱代码爱编程

准备工作: 准备三台虚拟机,关闭防火墙,修改他们的主机名,第一台虚拟机为master 剩下两台分别是slave1和slave2,修改hosts文件 修改他们的主机映射,三台进行免密操作。 基础配置: 修改主机名 永久修改:vim /etc/hostname 重启 restart 零时修改: hostnamectl set-hostname na

序列化writable接口_悠然予夏的博客-爱代码爱编程

        基本序列化类型往往不能满足所有需求,比如在Hadoop框架内部传递一个自定义bean对象,那么该对象就需要实现Writable序列化接口。  实现Writable序列化步骤如下 (1)必须实现Writable接口 (2)反序列化时,需要反射调用空参构造函数,所以必须有空参构造 public CustomBean() { su

hadoop集群搭建(笔记版)手把手教你搭建hadoop3.x集群(高可用)(易错点分析)常用命令笔记_hadoop3集群-爱代码爱编程

hadoop集群搭建 相关文件下载及配置网络配置基础配置编辑hosts文件SSH免密登陆scp、xsync集群分发脚本修改核心配置文件 关于hadoop节点无法启动关于环境变量配置的说明zk的一键启动脚本

【hadoop-爱代码爱编程

文章目录 1. NN 和 2NN1.1 nn 和 2nn 工作机制1.2 查看 fsImage_xxx 和 edits_xxx 文件 2. DN2.1 dn工作机制2.2 数据完整性 1.