配置Hadoop_1

article/2025/10/8 21:35:49

配置Hadoop_1

  • 1. 配置jdk
  • 2. 配置Hadoop
  • 3.完全分布式运行环境(配置集群)
    • 3.1 编写集群分发脚本xsync
    • 3.2 rsync远程同步工具
    • 3.3 xsync集群分发脚本
    • 3.4 SSH无密登录配置
    • 3.5集群配置
      • 3.6 配置历史服务器
      • 3.7 配置日志的聚集
    • 3.8 两个常用脚本
      • asd

1. 配置jdk

上传jar包
在这里插入图片描述
[gpb@hadoop102 software]$ tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/

配置jdk环境变量
在这里插入图片描述

在这里插入图片描述

2. 配置Hadoop

tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/
在这里插入图片描述

在这里插入图片描述

hadoop文件
etc:大量的配置信息
sbin:启动集群的相关文件
lib:本地动态链接库
include :头文件.h
bin:hdfs,yarn,mapred

链接: hadoop下载

3.完全分布式运行环境(配置集群)

3.1 编写集群分发脚本xsync

1)scp(secure copy)安全拷贝
scp可以实现服务器与服务器之间的数据拷贝。(from server1 to server2)

scp    -r        $pdir/$fname             $user@$host:$pdir/$fname
命令   递归     要拷贝的文件路径/名称   目的地用户@主机:目的地路径/名称
推过去
scp -r jdk1.8.0_212/ gpb@hadoop104:/home/gpb/module
拉过来
scp -r gpb@hadoop102:/home/gpb/module/hadoop-3.1.3 ./

3.2 rsync远程同步工具

rsync主要用于备份和镜像。具有速度快、避免复制相同内容和支持符号链接的优点。
rsync和scp区别:用rsync做文件的复制要比scp的速度快,rsync只对差异文件做更新。scp是把所有文件都复制过去。
(1)基本语法

rsync    -av       $pdir/$fname            $user@$host:$pdir/$fname
命令   选项参数   要拷贝的文件路径/名称   目的地用户@主机:目的地路径/名称

选项 功能
-a 归档拷贝
-v 显示复制过程
(2)案例实操
(a)删除hadoop103中/opt/module/hadoop-3.1.3/wcinput
[atguigu@hadoop103 hadoop-3.1.3]$ rm -rf wcinput/
(b)同步hadoop102中的/opt/module/hadoop-3.1.3到hadoop103
[atguigu@hadoop102 module]$ rsync -av hadoop-3.1.3/ atguigu@hadoop103:/opt/module/hadoop-3.1.3/

rm -rf wcinput/ wcoutput/
rsync -av hadoop-3.1.3/ gpb@hadoop103:/home/gpb/module/hadoop-3.1.3/

3.3 xsync集群分发脚本

(1)需求:循环复制文件到所有节点的相同目录下
(2)需求分析:
(a)rsync命令原始拷贝:
rsync -av /opt/module atguigu@hadoop103:/opt/
(b)期望脚本:
xsync要同步的文件名称
(c)期望脚本在任何路径都能使用(脚本放在声明了全局环境变量的路径)
[atguigu@hadoop102 ~]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/atguigu/.local/bin:/home/atguigu/bin:/opt/module/jdk1.8.0_212/bin

(3)脚本实现
(a)在/home/atguigu/bin目录下创建xsync文件
[atguigu@hadoop102 opt]$ cd /home/atguigu
[atguigu@hadoop102 ~]$ mkdir bin
[atguigu@hadoop102 ~]$ cd bin
[atguigu@hadoop102 bin]$ vim xsync
在该文件中编写如下代码


#!/bin/bash#1. 判断参数个数
if [ $# -lt 1 ]
thenecho Not Enough Arguement!exit;
fi#2. 遍历集群所有机器
for host in hadoop102 hadoop103 hadoop104
doecho ====================  $host  ====================#3. 遍历所有目录,挨个发送for file in $@do#4. 判断文件是否存在if [ -e $file ]then#5. 获取父目录pdir=$(cd -P $(dirname $file); pwd)#6. 获取当前文件的名称fname=$(basename $file)ssh $host "mkdir -p $pdir"rsync -av $pdir/$fname $host:$pdirelseecho $file does not exists!fidone
done

(b)修改脚本 xsync 具有执行权限
[atguigu@hadoop102 bin]$ chmod 777 xsync
(c)测试脚本
[atguigu@hadoop102 ~]$ xsync /home/atguigu/bin
(d)将脚本复制到/bin中,以便全局调用
[atguigu@hadoop102 bin]$ sudo cp xsync /bin/
(e)同步环境变量配置(root所有者)
[atguigu@hadoop102 ~]$ sudo ./bin/xsync /etc/profile.d/my_env.sh
注意:如果用了sudo,那么xsync一定要给它的路径补全。
让环境变量生效
[atguigu@hadoop103 bin]$ source /etc/profile
[atguigu@hadoop104 opt]$ source /etc/profile

3.4 SSH无密登录配置

1)配置ssh
(1)基本语法
ssh另一台电脑的IP地址
(2)ssh连接时出现Host key verification failed的解决方法
[atguigu@hadoop102 ~]$ ssh hadoop103
如果出现如下内容
Are you sure you want to continue connecting (yes/no)?
输入yes,并回车
(3)退回到hadoop102
[atguigu@hadoop103 ~]$ exit

[gpb@hadoop102 ~]$ ssh hadoop103
gpb@hadoop103's password: 
Last login: Sat Jul 15 14:51:25 2023
[gpb@hadoop103 ~]$ exit
登出
Connection to hadoop103 closed.[gpb@hadoop102 ~]$ pwd
/home/gpb
//查看隐藏文件
[gpb@hadoop102 ~]$ ls -al
总用量 40
drwx------. 17 gpb  gpb  4096 715 15:30 .
drwxr-xr-x.  3 root root   17 714 23:25 ..
drwxr-xr-x.  4 gpb  gpb    39 714 22:25 .mozilla
drwx------.  2 gpb  gpb    25 715 15:13 .ssh
[gpb@hadoop102 ~]$ 
[gpb@hadoop102 .ssh]$ pwd
/home/gpb/.ssh
[gpb@hadoop102 .ssh]$ ssh-keygen -t rsa

生成公钥和私钥
[atguigu@hadoop102 .ssh]$ pwd
/home/atguigu/.ssh
[atguigu@hadoop102 .ssh]$ ssh-keygen -t rsa
[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop102
[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop103
[atguigu@hadoop102 .ssh]$ ssh-copy-id hadoop104
ssh hadoop 到hadoop103

3.5集群配置

在这里插入图片描述

[atguigu@hadoop102 ~]$ cd $HADOOP_HOME/etc/hadoop
[atguigu@hadoop102 hadoop]$ vim core-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!-- 指定NameNode的地址 --><property><name>fs.defaultFS</name><value>hdfs://hadoop102:8020</value></property><!-- 指定hadoop数据的存储目录 --><property><name>hadoop.tmp.dir</name><value>/opt/module/hadoop-3.1.3/data</value></property><!-- 配置HDFS网页登录使用的静态用户为atguigu --><property><name>hadoop.http.staticuser.user</name><value>atguigu</value></property>
</configuration>
[atguigu@hadoop102 hadoop]$ vim hdfs-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!-- nn web端访问地址--><property><name>dfs.namenode.http-address</name><value>hadoop102:9870</value></property><!-- 2nn web端访问地址--><property><name>dfs.namenode.secondary.http-address</name><value>hadoop104:9868</value></property>
</configuration>
[atguigu@hadoop102 hadoop]$ vim yarn-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!-- 指定MR走shuffle --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 指定ResourceManager的地址--><property><name>yarn.resourcemanager.hostname</name><value>hadoop103</value></property><!-- 环境变量的继承 --><property><name>yarn.nodemanager.env-whitelist</name><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value></property>
</configuration>
[atguigu@hadoop102 hadoop]$ vim mapred-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration><!-- 指定MapReduce程序运行在Yarn上 --><property><name>mapreduce.framework.name</name><value>yarn</value></property>
</configuration>

如果有的集群组件为启动,就多试几次(有时候没启动起来)。

链接: 解决无法启动namenode

3.6 配置历史服务器

[gpb@hadoop102 hadoop-3.1.3]$ cd $HADOOP_HOME/etc/hadoop
[gpb@hadoop102 hadoop]$ vim mapred-site.xml
[gpb@hadoop102 hadoop]$ xsync $HADOOP_HOME/etc/hadoop/mapred-site.xml[gpb@hadoop102 hadoop]$ mapred --daemon start historyserver

http://hadoop102:19888/jobhistory

3.7 配置日志的聚集

[atguigu@hadoop102 hadoop]$ vim yarn-site.xml
<!-- 开启日志聚集功能 -->
<property><name>yarn.log-aggregation-enable</name><value>true</value>
</property>
<!-- 设置日志聚集服务器地址 -->
<property>  <name>yarn.log.server.url</name>  <value>http://hadoop102:19888/jobhistory/logs</value>
</property>
<!-- 设置日志保留时间为7-->
<property><name>yarn.log-aggregation.retain-seconds</name><value>604800</value>
</property>
[atguigu@hadoop102 hadoop]$ xsync $HADOOP_HOME/etc/hadoop/yarn-site.xml
[atguigu@hadoop103 hadoop-3.1.3]$ sbin/stop-yarn.sh
[atguigu@hadoop103 hadoop-3.1.3]$ mapred --daemon stop historyserver
[atguigu@hadoop103 ~]$ start-yarn.sh
[atguigu@hadoop102 ~]$ mapred --daemon start historyserver

3.8 两个常用脚本

[atguigu@hadoop102 ~]$ cd /home/atguigu/bin
[atguigu@hadoop102 bin]$ vim myhadoop.sh
#!/bin/bashif [ $# -lt 1 ]
thenecho "No Args Input..."exit ;
ficase $1 in
"start")echo " =================== 启动 hadoop集群 ==================="echo " --------------- 启动 hdfs ---------------"ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh"echo " --------------- 启动 yarn ---------------"ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh"echo " --------------- 启动 historyserver ---------------"ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver"
;;
"stop")echo " =================== 关闭 hadoop集群 ==================="echo " --------------- 关闭 historyserver ---------------"ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver"echo " --------------- 关闭 yarn ---------------"ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh"echo " --------------- 关闭 hdfs ---------------"ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh"
;;
*)echo "Input Args Error..."
;;
esac
[atguigu@hadoop102 ~]$ cd /home/atguigu/bin
[atguigu@hadoop102 bin]$ vim jpsall
#!/bin/bashfor host in hadoop102 hadoop103 hadoop104
doecho =============== $host ===============ssh $host jps 
done
[atguigu@hadoop102 bin]$ chmod 777 myhadoop.sh
[atguigu@hadoop102 bin]$ chmod 777 jpsall
[atguigu@hadoop102 ~]$ xsync /home/gpb/bin/

asd

grep “password is” /var/log/mysqld.log
2023-06-08T08:14:35.698981Z 1 [Note] A temporary password is generated for root@localhost: q-HaZ,acq9/L

q-HaZ,acq9/L

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘000000’;

grant all privileges on . to root@‘%’ identified by ‘000000’;

systemctl restart mysqld


http://chatgpt.dhexx.cn/article/Fr7McCAU.shtml

相关文章

hadoop集群配置(保姆级教学)

目录 1 .集群配置 &#xff08;1&#xff09;集群部署规划 (2&#xff09;配置文件说明 (3&#xff09;配置集群 &#xff08;1&#xff09;核心配置文件 &#xff08;2&#xff09;HDFS配置文件 &#xff08;3&#xff09;YARN配置文件 &#xff08;4&#xff09;MapRedu…

Hadoop集群配置

一&#xff1a;集群部署规划 注意&#xff1a; ➢ NameNode和SecondaryNameNode不要安装在同一台服务器 ➢ ResourceManager也很消耗内存&#xff0c;不要和NameNode、SecondaryNameNode配置在同一台机器上。 二&#xff1a;配置文件说明 Hadoop配置文件分两类&#xff1a…

Hadoop配置环境变量(详解版)

1.运行hadoop的程序报错java.io.IOException: Could not locate executable nullinwinutils.exe in the Hadoop binaries. **这是因为windows环境变量不兼容的原因解决办法&#xff1a; 首先需要下载 hadoop的tar.gz包&#xff0c;前提是JDK必须配置成功&#xff0c;存放路径不…

hadoop配置文件

安装前的工作&#xff1a; jdk集群中节计算机互联互通关闭防火墙节点间的计算机免密码登录&#xff08;authorized_keys认证文件root用户存放在/root/.ssh/&#xff09; (User用户 /home/user/.ssh/) A计算机免密码登录B计算机&#xff0c;将A计算机的公钥存放在B计算机的认证…

4.Hadoop环境配置

4. 集群配置 4.1 集群部署规划 安装前先做好节点规划&#xff0c;完全分布式目前规划1个主节点&#xff08;Master&#xff09;和2个从节点&#xff08;Slave&#xff09;一共三个节点。 部署规划要求&#xff1a; NameNode和SecondaryNameNode不要安装在同一台服务器。Reso…

hadoop环境配置

hadoop环境配置 一、VmWare与linux版本VmWare版本&#xff1a;linux版本 二、使用VmWare来安装linux软件三、三台linux服务器环境准备1、三台机器IP设置2、三台机器关闭防火墙3、三台机器关闭selinux4、三台机器更改主机名5、三台机器更改主机名与IP地址映射6、三台机器同步时间…

hadoop详细安装及配置

一、下载 http://hadoop.apache.org/ hadoop官网 二、解压 注&#xff1a;使用管理员权限解压 三、配置环境变量 添加HADOOP_HOME配置&#xff1a;自己安装hadoop路径&#xff0c;我的是D:\hadoop-3.0.3 在Path中添加如下&#xff1a;自己安装hadoop路径/bin&#xff0c;…

Hadoop集群的配置

一.、创建虚拟机 (10条消息) CentOS 7 虚拟机的搭建_仄言2997的博客-CSDN博客 1. 创建虚拟机 2. 安装 CentOS 二、虚拟机网络设置 (10条消息) 虚拟机网络配置_仄言2997的博客-CSDN博客 三、 安装JDK (10条消息) 虚拟机安装jdk&#xff0c;运行java文件_仄言2997的博客-CSDN博客…

Hadoop集群环境配置搭建

一、简单介绍 Hadoop最早诞生于Cutting于1998年左右开发的一个全文文本搜索引擎 Lucene&#xff0c;这个搜索引擎在2001年成为Apache基金会的一个子项目&#xff0c;也是 ElasticSearch等重要搜索引擎的底层基础。 项目官方&#xff1a;https://hadoop.apache.org/ 二、Linux环…

超详解Hadoop集群环境配置,步步附有截图,一篇讲解清楚

写在最前&#xff0c;在配置Hadoop之前&#xff0c;要确定已经准备好了Hadoop的准备环境&#xff0c;并且已经在机器上安装完了Hadoop&#xff0c;以及编写了一些必要的集群脚本&#xff0c;具体操作详情见这两篇文章 Hadoop安装及集群脚本编写 Hadoop集群准备环境搭建 一、Ha…

大数据开发之Hadoop学习3--Hadoop运行模式

Hadoop运行模式 目录 Hadoop运行模式 4.1 本地运行模式&#xff08;官方wordcount&#xff09; 4.2 完全分布式运行模式 4.2.1 虚拟机准备 4.2.2 编写集群分发脚本xsync 4.2.3 SSH无密登录配置 4.2.4 集群配置 4.2.5 群起集群 4.2.6 集群启动/停止方式总结 4.2.7 配置…

Hadoop完全分布式集群——Hadoop 配置

前面已完成VMware虚拟机安装与配置&#xff08;参考前一篇Hadoop完全分布式集群——VMware虚拟机安装与配置_夏雨和阳阳的博客-CSDN博客&#xff09;&#xff0c;下面将进行Hadoop 配置。 一、slave1、slave2节点配置修改 slave1、slave2节点都需要进行以下操作&#xff1a; …

简易员工信息管理系统

这是一个虽然简单但很有代表性和借鉴性的管理系统。没有使用现有框架SSH等&#xff0c;使用自有JavaBeanJSPServlet技术。 该系统的源码经过细心打磨&#xff0c;可以作为去Spring框架的简单Web系统开发模板使用&#xff0c;从设计模式、函数式编程、Lambda表达式、业务分层、页…

基于SSH学生请假管理系统

【A-021】基于SSH学生请假管理系统 开发环境&#xff1a; Eclipse/MyEclipse、Tomcat8、Jdk1.8 数据库&#xff1a; MySQL &#xff08;1&#xff09;管理员模块 定义一个最高级管理员&#xff0c;可以对整个系统进行查询修改等操作&#xff0c;浏览修改其他管理员的相关信息…

简单的员工信息管理系统

需求&#xff1a; 做一个简易命令行版本的员工信息管理系统 现有员工&#xff1a;张三&#xff0c;年龄23&#xff0c;工号9527&#xff1b;李四&#xff0c;年龄32&#xff0c;工号&#xff0c;007&#xff1b; 王五&#xff0c;年龄22&#xff0c;工号&a…

员工考勤系统

需求&#xff1a; 一、用户管理 1、用户列表 列表字段&#xff1a;姓名、登录名、性别、手机号、薪资、岗位、角色 列表按钮&#xff1a;编辑、启用、停用、重置密码 搜索条件&#xff1a;用户名、状态&#xff08;启用停用&#xff09; 顶部按钮&#xff1a;新增用户 导入、导…

企业如何利用OA系统轻松管理员工请休假

企业的员工想请个假&#xff0c;为什么人事和员工都在喊难&#xff1f; 员工请假麻烦&#xff1a; 不知道自己还有多少年假没有休&#xff0c;每次都要去人事那里查&#xff0c;有事请假要找领导报备交接工作&#xff0c;填完单子还要找领导签字&#xff0c;如果哪天请假领导出…

JavaEE技术的员工请假管理系统的设计与实现

摘 要 近年来&#xff0c;随着网络产业的飞速发展&#xff0c;人们的日常生活和工作方式也随之发生变化。许多公司正在把常规的工作方式与因特网相融合&#xff0c;借助因特网的力量来提升管理者的工作能力。当前很多员工请假管理系统工作都有很多问题&#xff0c;所以针对员…

人事管理系统如何做好员工考勤管理?

企业考勤管理的主要难题在于考勤、排班、假勤这三块&#xff0c;对于考勤来说&#xff0c;往往存在一些漏打卡、代打卡、打卡慢的情况&#xff1b; 对于排班&#xff0c;存在着多班次混排的情况&#xff0c;对各人员调配、设备调配、轮班作业、生产计划调整等有复杂调配需求&a…

【023】Springboot+vue+mysql员工考勤管理系统(多角色登录、请假、打卡)(含源码、数据库、运行教程)

前排提示&#xff1a;项目源码已放在文末 开发环境&#xff1a;SpringbootMysqlVueNodejsMavenJDK1.8 技术栈&#xff1a;spring-boot、mysql、mybatis-plus、druid连接池。 部分功能及代码介绍&#xff1a; 1.员工类型&#xff1a;部门经理、副总经理、总经理、人事人员、财务…