热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos7搭建Hadoop集群(V3.3.4)

Centos7搭建Hadoop集群V3.3.4一、准备工作1、配置hostname2、hosts映射3、关闭防火墙4、同步时间5、关闭selinux6、配置ssh免密登陆7、重启二


Centos7搭建Hadoop集群V3.3.4


  • 一、准备工作
    • 1、配置hostname
    • 2、hosts映射
    • 3、关闭防火墙
    • 4、同步时间
    • 5、关闭selinux
    • 6、配置ssh免密登陆
    • 7、重启

  • 二、安装所需环境
    • 1、jdk安装
    • 2、hadoop安装

  • 三、修改配置
    • hadoop-env.sh
    • core-site.xml
    • hdfs-site.xml
    • mapred-site.xml
    • yarn-site.xml
    • workers

  • 四、初始化并启动
    • 1、初始化
    • 2、启动

  • 五、测试hdfs



本次安装Hadoop版本为3.3.4

安装规划(3台机器)

node01 :192.168.117.20 NameNode DataNode
node02 :192.168.117.21 DataNode
node03 :192.168.117.22 DataNode SecondaryNameNode

一、准备工作

1、配置hostname

hostname分别为node01,node02,node03

# 三台机器分别执行
hostnamectl set-hostname node01
hostnamectl set-hostname node02
hostnamectl set-hostname node03

在这里插入图片描述


2、hosts映射

# 三台机器均要执行
vim /etc/hosts
192.168.117.20 node01
192.168.117.21 node02
192.168.117.22 node03

3、关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

4、同步时间

yum install ntpdate
ntpdate ntp5.aliyun.com

在这里插入图片描述


5、关闭selinux

vim /etc/selinux/config
修改为 SELINUX=disabled

在这里插入图片描述


6、配置ssh免密登陆

# 三台机器均执行一下命令
ssh-keygen -t rsa
# 将每台机器的公钥拷贝给每台机器
ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03

测试
在这里插入图片描述


7、重启

reboot

二、安装所需环境

1、jdk安装

# 三台机器均执行
cd /etc/profile.d
vim jdk.sh
# 写入内容
export JAVA_HOME=/opt/button/jdk
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
# 使配置生效
source /etc/profile

验证

java -version

在这里插入图片描述


2、hadoop安装

下载安装包
配置环境变量

# 三台机器均执行
vim /etc/profile.d/hadoop.sh
# 写入内容
export HADOOP_HOME=/opt/button/hadoop/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
# 使配置生效
source /etc/profile

验证

hadoop version

在这里插入图片描述
创建hadoop数据目录:

mkdir /opt/button/hadoop/data
cd /opt/button/hadoop
chmod -R 777 ./data/

三、修改配置

配置位于hadoop解压目录etc/hadoop目录下,三台机器配置保持一致
在这里插入图片描述


hadoop-env.sh

vim hadoop-env.sh
# jdk修改为自己的路径
export JAVA_HOME=/opt/button/jdk

core-site.xml

<!-- 指定HADOOP所使用的文件系统schema&#xff0c;NameNode的地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://node01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/button/hadoop/data</value>
</property>
<!-- 设置HDFS web UI用户身份 -->
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<!-- 文件系统垃圾桶保存时间 -->
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>

hdfs-site.xml

<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>node03:50090</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/opt/button/hadoop/data/</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/opt/button/hadoop/data/</value>
</property>

mapred-site.xml

<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

yarn-site.xml

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- ResourceManager的地址 -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node01</value>
</property>
<!-- 关闭yarn内存检查 -->
<property>
<name>yarn.nodemanager.pmem-check-enabled</name>
<value>false</value>
</property>
<property>
<name>yarn.nodemanager.vmem-check-enabled</name>
<value>false</value>
</property>

workers

vim workers
# 写入如下内容
node01
node02
node03

四、初始化并启动

1、初始化

如果第一次启动集群需格式化NameNode&#xff0c;三个节点都操作

hdfs namenode –format

注&#xff1a;如果不是第一次&#xff0c;需要先执行stop-all.sh&#xff0c;然后删除data与logs中的文件再执行初始化命令


2、启动

在node01节点上的sbin目录找到start-all.sh并执行即可
在这里插入图片描述
执行如下操作解决此问题

vim /etc/profile.d/my_env.sh
# 添加如下内容
export HDFS_NAMENODE_USER&#61;root
export HDFS_DATANODE_USER&#61;root
export HDFS_SECONDARYNAMENODE_USER&#61;root
export YARN_RESOURCEMANAGER_USER&#61;root
export YARN_NODEMANAGER_USER&#61;root
# 使配置生效
source /etc/profile

重新执行start-all.sh
在这里插入图片描述
查看启动的服务
在这里插入图片描述
NameNode默认端口9870
http://192.168.117.20:9870/
在这里插入图片描述
ResourceManager默认端口8088
在这里插入图片描述


五、测试hdfs

hadoop fs -mkdir /hfile
hadoop fs -put input.txt /hfile
hadoop fs -ls /hfile

在这里插入图片描述







推荐阅读
  • 在使用SSH框架进行项目开发时,经常会遇到一些常见的问题。例如,在Spring配置文件中配置AOP事务声明后,进行单元测试时可能会出现“No Hibernate Session bound to thread”的错误。本文将详细探讨这一问题的原因,并提供有效的解决方案,帮助开发者顺利解决此类问题。 ... [详细]
  • 原文网址:https:www.cnblogs.comysoceanp7476379.html目录1、AOP什么?2、需求3、解决办法1:使用静态代理4 ... [详细]
  • 本文详细探讨了几种常用的Java后端开发框架组合及其具体应用场景。通过对比分析Spring Boot、MyBatis、Hibernate等框架的特点和优势,结合实际项目需求,为开发者提供了选择合适框架组合的参考依据。同时,文章还介绍了这些框架在微服务架构中的应用,帮助读者更好地理解和运用这些技术。 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 在 Android 开发中,`android:exported` 属性用于控制组件(如 Activity、Service、BroadcastReceiver 和 ContentProvider)是否可以被其他应用组件访问或与其交互。若将此属性设为 `true`,则允许外部应用调用或与之交互;反之,若设为 `false`,则仅限于同一应用内的组件进行访问。这一属性对于确保应用的安全性和隐私保护至关重要。 ... [详细]
  • Hadoop平台警告解决:无法加载本机Hadoop库的全面应对方案
    本文探讨了在Hadoop平台上遇到“无法加载本机Hadoop库”警告的多种解决方案。首先,通过修改日志配置文件来忽略该警告,这一方法被证明是有效的。其次,尝试指定本地库的路径,但未能解决问题。接着,尝试不使用Hadoop本地库,同样没有效果。然后,通过替换现有的Hadoop本地库,成功解决了问题。最后,根据Hadoop的源代码自行编译本地库,也达到了预期的效果。以上方法适用于macOS系统。 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 本文详细介绍了在CentOS 6.5 64位系统上使用阿里云ECS服务器搭建LAMP环境的具体步骤。首先,通过PuTTY工具实现远程连接至服务器。接着,检查当前系统的磁盘空间使用情况,确保有足够的空间进行后续操作,可使用 `df` 命令进行查看。此外,文章还涵盖了安装和配置Apache、MySQL和PHP的相关步骤,以及常见问题的解决方法,帮助用户顺利完成LAMP环境的搭建。 ... [详细]
  • Presto:高效即席查询引擎的深度解析与应用
    本文深入解析了Presto这一高效的即席查询引擎,详细探讨了其架构设计及其优缺点。Presto通过内存到内存的数据处理方式,显著提升了查询性能,相比传统的MapReduce查询,不仅减少了数据传输的延迟,还提高了查询的准确性和效率。然而,Presto在大规模数据处理和容错机制方面仍存在一定的局限性。本文还介绍了Presto在实际应用中的多种场景,展示了其在大数据分析领域的强大潜力。 ... [详细]
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • Linux Shell变量初探:初始值解析与使用指南
    本文探讨了Linux Shell中变量的基本概念及其在BASH中的应用。变量是用于存储可变数据的标识符,能够代表不同的值。文章详细介绍了BASH shell的主要优势,包括强大的命令编辑能力、自动补全功能、命令别名设置、作业控制以及前后台任务管理。此外,还涵盖了编程脚本编写和通配符的使用方法,为初学者提供了全面的指导。 ... [详细]
  • 在JavaWeb项目架构中,NFS(网络文件系统)的实现与优化是关键环节。NFS允许不同主机系统通过局域网共享文件和目录,提高资源利用率和数据访问效率。本文详细探讨了NFS在JavaWeb项目中的应用,包括配置、性能优化及常见问题的解决方案,旨在为开发者提供实用的技术参考。 ... [详细]
  • com.hazelcast.config.MapConfig.isStatisticsEnabled()方法的使用及代码示例 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • 本文探讨了 Kafka 集群的高效部署与优化策略。首先介绍了 Kafka 的下载与安装步骤,包括从官方网站获取最新版本的压缩包并进行解压。随后详细讨论了集群配置的最佳实践,涵盖节点选择、网络优化和性能调优等方面,旨在提升系统的稳定性和处理能力。此外,还提供了常见的故障排查方法和监控方案,帮助运维人员更好地管理和维护 Kafka 集群。 ... [详细]
author-avatar
太2真人05
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有