【大数据入门核心技术-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

相关内容

热门资讯

AWSECS:访问外部网络时出... 如果您在AWS ECS中部署了应用程序,并且该应用程序需要访问外部网络,但是无法正常访问,可能是因为...
AWSElasticBeans... 在Dockerfile中手动配置nginx反向代理。例如,在Dockerfile中添加以下代码:FR...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...
北信源内网安全管理卸载 北信源内网安全管理是一款网络安全管理软件,主要用于保护内网安全。在日常使用过程中,卸载该软件是一种常...
AWR报告解读 WORKLOAD REPOSITORY PDB report (PDB snapshots) AW...
AWS管理控制台菜单和权限 要在AWS管理控制台中创建菜单和权限,您可以使用AWS Identity and Access Ma...
​ToDesk 远程工具安装及... 目录 前言 ToDesk 优势 ToDesk 下载安装 ToDesk 功能展示 文件传输 设备链接 ...
群晖外网访问终极解决方法:IP... 写在前面的话 受够了群晖的quickconnet的小水管了,急需一个新的解决方法&#x...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
Azure构建流程(Power... 这可能是由于配置错误导致的问题。请检查构建流程任务中的“发布构建制品”步骤,确保正确配置了“Arti...