【大数据入门核心技术-Hadoop】Hadoop非高可用集群搭建
创始人
2024-03-16 08:23:49
0

目录

目录

一、Hadoop部署的三种方式

1、Standalone mode(独立模式)

2、Pseudo-Distributed mode(伪分布式模式)

3、Cluster mode(集群模式)

二、准备工作

1、/etc/hosts

2、关闭防火墙和禁用swap交换分区

3、三台机器间免密

4、安装jdk

5、下载好hadoop安装包

三、开始安装Hadoop

1、解压

2、配置hadoop

3、初始化和启动操作

四、集群的页面访问 

1、查看NameNode页面地址

2、YARN访问

3、JobHistory访问

五、测试

1、查看目录

2、创建目录

3、上传文件


一、Hadoop部署的三种方式

1、Standalone mode(独立模式)

独立模式又称为单机模式,仅1个机器运行1个java进程,主要用于调试。

2、Pseudo-Distributed mode(伪分布式模式)

伪分布模式也是在1个机器上运行HDFS的NameNode和DataNode、YARN的 ResourceManger和NodeManager,但分别启动单独的java进程,主要用于调试。

3、Cluster mode(集群模式)

单Namenode节点模式-高可用HA模式

集群模式主要用于生产环境部署。会使用N台主机组成一个Hadoop集群。这种部署模式下,主节点和从节点会分开部署在不同的机器上。

本教程主要安装 单Namenode 节点 非高可用集群模式

二、准备工作

集群组建MasterSlave1Slave2
NameNode

Secondary

Namenode

DataNode
ResourceManager
NodeManager

1、/etc/hosts

172.30.1.56 master
172.30.1.57 slave1
172.30.1.58 slave2

2、关闭防火墙和禁用swap交换分区

1)关闭防火墙和SeLinux

systemctl stop firewalld && systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/sysconfig/selinux

2)禁用swap交换分区

swapoff -a && sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/sysconfig/selinux

3、三台机器间免密

生成密钥

ssh-keygen -t rsa

将密钥复制到其他机器

ssh-copy-id slave1
ssh-copy-id slave2

4、安装jdk

将jdk目录复制到/usr/local

vim /etc/profile

export JAVA_HOME=/usr/local/jdk1.8.0_131
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

source /etc/profile

java -version

查看结果

 java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

5、下载好hadoop安装包

下载地址

Apache Hadoop

三、开始安装Hadoop

1、解压

tar zxvf hadoop-3.2.1.tar.gz -C /usr/local

vim /etc/profile

export HADOOP_HOME=/usr/local/hadoop-3.2.1
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

source /etc/profile

测试

hadoop version

Hadoop 3.2.1
Source code repository https://gitbox.apache.org/repos/asf/hadoop.git -r b3cbbb467e22ea829b3808f4b7b01d07e0bf3842
Compiled by rohithsharmaks on 2019-09-10T15:56Z
Compiled with protoc 2.5.0
From source with checksum 776eaf9eee9c0ffc370bcbc1888737
This command was run using /usr/local/hadoop-3.2.1/share/hadoop/common/hadoop-common-3.2.1.jar

2、配置hadoop

创建数据目录

mkdir -p /data/bigdata/hadoop/tmp

mkdir -p /data/bigdata/hadoop/var

mkdir -p /data/bigdata/hadoop/dfs/name

mkdir -p /data/bigdata/hadoop/dfs/data

cd /usr/local/hadoop-3.2.1/etc/hadoop

修改配置hadoop-env.sh

JAVA_HOME 和 HADOOP_HOME改为真实路径

在最后面添加

export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

修改core-site.xml

fs.defaultFShdfs://master:9000HDFS 的 URI,文件系统://namenode标识:端口hadoop.tmp.dir/data/bigdata/hadoop/tmpnamenode 上传到 hadoop 的临时文件夹

修改works

master

slave1
slave2

修改hdfs-site.xml

dfs.namenode.name.dir/data/bigdata/hadoop/dfs/namedatanode 上存储 hdfs 名字空间元数据dfs.datanode.data.dir/data/bigdata/hadoop/dfs/datadatanode 上数据块的物理存储位置dfs.replication2副本个数,默认配置是 3,应小于 datanode 机器数量dfs.webhdfs.enabledtruedfs.permissions.enabledfalse

先将mapred-site.xml.template copy 一份命名为mapred-site.xml

再修改mapred-site.xml为


mapred.job.trackermaster:49001

mapred.local.dir/data/bigdata/hadoop/var

mapreduce.framework.nameyarn

修改yarn-site.xml

yarn.resourcemanager.hostnamemasterThe address of the applications manager interface in the RM.yarn.resourcemanager.address${yarn.resourcemanager.hostname}:8032The address of the scheduler interface.yarn.resourcemanager.scheduler.address${yarn.resourcemanager.hostname}:8030The http address of the RM web application.yarn.resourcemanager.webapp.address${yarn.resourcemanager.hostname}:8088The https adddress of the RM web application.yarn.resourcemanager.webapp.https.address${yarn.resourcemanager.hostname}:8090yarn.resourcemanager.resource-tracker.address${yarn.resourcemanager.hostname}:8031The address of the RM admin interface.yarn.resourcemanager.admin.address${yarn.resourcemanager.hostname}:8033yarn.nodemanager.aux-servicesmapreduce_shuffleyarn.scheduler.maximum-allocation-mb8192每个节点可用内存,单位MB,默认8182MByarn.nodemanager.vmem-pmem-ratio2.1yarn.nodemanager.resource.memory-mb2048yarn.nodemanager.vmem-check-enabledfalseyarn.application.classpath/usr/local/hadoop-3.2.1/etc/hadoop,/usr/local/hadoop-3.2.1/share/hadoop/common/*,/usr/local/hadoop-3.2.1/share/hadoop/common/lib/*,/usr/local/hadoop-3.2.1/share/hadoop/hdfs/*,/usr/local/hadoop-3.2.1/share/hadoop/hdfs/lib/*,/usr/local/hadoop-3.2.1/share/hadoop/mapreduce/*,/usr/local/hadoop-3.2.1/share/hadoop/mapreduce/lib/*,/usr/local/hadoop-3.2.1/share/hadoop/yarn/*,/usr/local/hadoop-3.2.1/share/hadoop/yarn/lib/*

注意:端口号与里面的值,后期优化配置需要修改,第一次配可以全复制。

说明:yarn.nodemanager.vmem-check-enabled这个的意思是忽略虚拟内存的检查,如果你是安装在虚拟机上,这个配置很有用,配上去之后后续操作不容易出问题。如果是实体机上,并且内存够多,可以将这个配置去掉

再将配置好的hadoop文件和/etc/pofile直接copy到另外的节点,并source /etc/profile,相当于在另外两个节点重复以上操作

3、初始化和启动操作

主节点在启动之前需要先格式化namenode,生成初始目录.

hadoop namenode -format

有如下提示即成功。

启动hadoop

/usr/local/hadoop-3.2.1/sbin/start-all.sh

或者使用: start-dfs.sh 启动HDFS 和 start-yarn.sh 启动Yarn

启动历史任务服务进程

mr-jobhistory-daemon.sh start historyserver

检查各个节点进程是否启动成功

停止集群:

stop-dfs.sh、stop-yarn.sh、mr-jobhistory-daemon.sh stophistoryserver

启动之后,使用jps命令查看相关服务是否启动,jps是显示Java相关的进程命令。

四、集群的页面访问 

1、查看NameNode页面地址

一旦Hadoop集群启动并运行,可以通过web-ui进行集群查看,如下所述:

http://master:9870/   

旧版本端口为50070,新版本3.2.1为9870

当然也可以在hdfs-site.xml中配置dfs.namenode.http-address项

2、YARN访问

http://master:8088/cluster

3、JobHistory访问

http://master:19888/jobhistory

五、测试

1、查看目录

hadoop fs -ls /

2、创建目录

hadoop fs  -mkdir /test

3、上传文件

hadoop fs -put a.txt /test/a.txt

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...