1_安装JDK和Hadoop
一、解压jdk和hadoop安装包
下载
通过百度网盘分享的文件:jdk-8u172-linux-x64.tar.gz
链接:https://pan.baidu.com/s/1VjhdpfyqdC7ivEBIjTn8tA
提取码:iz25
二、配置环境变量
vi /root/.bashrc
添加
#set java environment
export JAVA_HOME=/usr/local/src/jdk1.8.0_181
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:#{JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
#set hadoop environment
export HADOOP_HOME=/usr/local/src/hadoop-2.6.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
三、修改Hadoop配置文件
在Hadoop解压文件夹内
cd etc/hadoop/
1.修改slaves
vi slaves
添加
slave1
slave2
2.修改hdfs-site.xml
vi hdfs-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--关注微信公众号:阿布的进击-->
<!--文件:hdfs-site.xml -->
<!--参考地址 http://hadoop.apache.org/docs/r2.6.5/-->
<configuration><property><name>dfs.namenode.secondary.http-address</name><value>master:9001</value><description>secondaryNamenode地址和端口</description></property><property><name>dfs.namenode.name.dir</name><value>file:/usr/local/src/hadoop-2.6.1/dfs/name</value><description>保存FsImage镜像的目录,作用是存放hadoop的名称节点namenode里的metadata</description></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/src/hadoop-2.6.1/dfs/data</value><description>存放HDFS文件系统数据文件的目录,作用是存放hadoop的数据节点datanode里的多个数据块</description></property><property><name>dfs.replication</name><value>2</value><description>block块副本数,默认值3</description></property>
</configuration>
3.修改core-site.xml
vi core-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--关注微信公众号:阿布的进击-->
<!--文件:core-site.xml -->
<!--参考地址 http://hadoop.apache.org/docs/r2.6.5/-->
<configuration><property><name>fs.defaultFS</name><value>hdfs://master:9000</value><description>用来指定默认的文件系统</description></property><property><name>hadoop.tmp.dir</name><value>file:/usr/local/src/hadoop-2.6.1/tmp</value><description>hadoop临时文件存放目录</description></property>
</configuration>
4.修改yarn-site.xml
vi yarn-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--关注微信公众号:阿布的进击-->
<!--文件:yarn-site.xml -->
<!--参考地址 http://hadoop.apache.org/docs/r2.6.5/-->
<configuration><!--日志聚合相关--><property><name>yarn.log-aggregation-enable</name><value>true</value><description>开启日志聚合功能,开启后日志保存在hdfs上</description></property><property><name>yarn.log-aggregation.retain-seconds</name><value>86400</value><description>聚合后的日志在hdfs上的保存时间,单位为秒</description></property><property><name>yarn.log.server.url</name><value>http://master:19888/jobhistory/logs</value><description>日志聚合服务器URL</description></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value><description>NodeManager上运行的附属服务,需配置成mapreduce_shuffle,才可运行MapReduce程序</description></property><property><name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name><value>org.apache.hadoop.mapred.ShuffleHandler</value></property><property><name>yarn.resourcemanager.address</name><value>master:8032</value><description>RM 对客户端暴露的地址。客户端通过该地址向RM提交应用程序,杀死应用程序</description></property><property><name>yarn.resourcemanager.scheduler.address</name><value>master:8030</value><description>RM 对ApplicationMaster暴露的访问地址。AM通过该地址向RM申请资源、释放资源</description></property><property><name>yarn.resourcemanager.resource-tracker.address</name><value>master:8035</value><description>RM 对NodeManager暴露的地址,NM通过该地址向RM汇报心跳,领取任务</description></property><property><name>yarn.resourcemanager.admin.address</name><value>master:8033</value><description>RM 对管理员暴露的访问地址。管理员通过该地址向RM发送管理命令等</description></property><property><name>yarn.resourcemanager.webapp.address</name><value>master:8088</value><description>RM对外web ui地址。用户可通过该地址在浏览器中查看集群各类信息</description></property><!-- 关闭虚拟内存检查--><property><name>yarn.nodemanager.pmem-check-enabled</name><value>false</value><description>是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认为true</description></property><property><name>yarn.nodemanager.vmem-check-enabled</name><value>false</value><description>是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true</description></property>
</configuration>
5.修改mapred-site.xml
vi mapred-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--关注微信公众号:阿布的进击-->
<!--文件:mapred-site.xml -->
<!--参考地址 http://hadoop.apache.org/docs/r2.6.5/-->
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value><description>指定运行mapreduce的环境是yarn</description></property><!--hadoop历史服务器--><property><name>mapreduce.jobhistory.address</name><value>master:10020</value><description>MR JobHistory服务器进程间通信地址</description></property><property><name>mapreduce.jobhistory.webapp.address</name><value>master:19888</value><description>MR JobHistory服务器的用户界面地址</description></property><property><name>mapreduce.jobhistory.done-dir</name><value>/mr-history/done</value><description>已执行完毕作业信息存储位置</description></property><property><name>mapreduce.jobhistory.intermediate-done-dir</name><value>/mr-history/tmp</value><description>正在运行的作业信息存储位置</description></property><property><name>yarn.app.mapreduce.am.staging-dir</name><value>/mr-history/hadoop-yarn/</value><description>MR作业在提交时所使用的临时目录, 是一个本地路径</description></property><property><name>mapreduce.map.memory.mb</name><value>2048</value><description>调度器为每个map task申请的内存数,各Job也可以单独指定,如果实际使用的资源量超过该值,则会被强制杀死</description></property><property><name>mapreduce.reduce.memory.mb</name><value>2048</value><description>调度器为每个reduce task申请的内存数,同map task,超出强制杀死</description></property><property><name>mapreduce.job.reduce.slowstart.completedmaps</name><value>0.8</value><description>当map task完成80%时,为reduce申请资源,reduce开始进行拷贝map结果数据和做reduce shuffle操作,默认0.05</description></property>
</configuration>
6.修改hadoop-env.sh
vim hadoop-env.sh
# 添加
export JAVA_HOME=/usr/local/src/jdk1.8.0_181
7.修改yarn-env.sh
vim yarn-env.sh
# 添加
export JAVA_HOME=/usr/local/src/jdk1.8.0_181
8.创建文件夹
cd …/…/
mkdir -p dfs/data
mkdir -p dfs/name
mkdir tmp
检验配置
# 刷新配置文件
source /root/.bashrc
# 验证jdk
java -version
# 验证Hadoop
echo $HADOOP_HOME
相关文章:
1_安装JDK和Hadoop
一、解压jdk和hadoop安装包 下载 通过百度网盘分享的文件:jdk-8u172-linux-x64.tar.gz 链接:https://pan.baidu.com/s/1VjhdpfyqdC7ivEBIjTn8tA 提取码:iz25 二、配置环境变量 vi /root/.bashrc添加 #set java environment export JAVA_H…...
angular简易计算器
说明: 用angular实现计算器效果,ui风格为暗黑 效果图: step1: C:\Users\Administrator\WebstormProjects\untitled4\src\app\calnum\calnum.component.ts import { Component } from angular/core;Component({selector: app-calnum,import…...
python 程序
gif调整尺寸.py import sys from PIL import Image,ImageSequence import os ##print(sys.argv[0]) ##print(sys.argv[1]) def gifresize(file_name): gf Image.open(file_name) ## lifetime gf.info[duration] imglist [] imgnew [] for i in ImageSequence.…...
vue3响应式数据原理
Vue 3 的响应式系统与 Vue 2 有显著不同,Vue 3 使用了 Proxy 替代了 Vue 2 中的 Object.defineProperty,这使得 Vue 3 的响应式系统更加灵活和强大 Vue 3 响应式原理的核心 Proxy: Vue 3 使用 Proxy 来拦截对象的操作(如读取、赋值…...
【Godot4.3】自定义圆角容器
概述 Godot控件想要完全实现现代UI风格,需要进行大量的自定义组件设计。本篇就依托于笔者自己对现代UI设计中的圆角面板元素模仿来制作圆角容器组件。 圆角容器 圆角元素在现代的扁平UI设计中非常常见,在Godot中可以通过改进PanelContainer来或者自定…...
远程部署 Qt 应用程序套件错误原因
构建套件报红色警告错误: 图一: 改图二:...
vue3学习4-pinia+组件通信
集中式状态管理,vue2用vuex,vue3用pinia,相当于react中的redux 引入pinia pinia的具体存储都放到src/store目录下,每个store.js具体存储实现如下: 修改pinia中的数据 3种方式: 1、可以直接修改从pinia中读…...
GEE中的Map对象
在Google Earth Engine (GEE) 中,Map 是一个非常重要的对象,它用于显示地理数据和控制地图的交互。Map 对象提供了一系列函数,允许你操作和控制地图显示。以下是一些常用的 Map 函数及其使用方法: 1. Map.addLayer() 功能&#x…...
【AI学习笔记】2月10日李飞飞巴黎AI峰会演讲:探索 AI 的历史、现状与未来
【AIGC学习笔记】2月10日李飞飞巴黎AI峰会演讲:探索 AI 的历史、现状与未来 AI 的历史根基与发展历程 生命起源与智能诞生:5 亿年前视觉概念的出现推动了智能的诞生。最初的感知仅仅是被动的体验,只是但随着神经系统的活跃,视觉…...
Vue.js组件开发:从基础到进阶
在现代前端开发中,Vue.js因其简洁、灵活和易上手的特点,成为了众多开发者首选的框架之一。组件化是Vue.js的核心思想之一,它让我们能够更高效、模块化地开发应用。在本文中,我们将从Vue.js的组件开发的基础知识开始,逐…...
Elasticsearch索引设计与分片策略深度优化-手记
一、索引设计的黄金法则(从踩坑到精通的必经之路) 1. 字段类型显式声明原则 动态映射是新手最易踩的坑,某金融平台曾因金额字段被自动识别为text类型,导致聚合查询时触发OOM。正确做法应显式声明核心字段: PUT /fin…...
嵌入式学习|C语言篇进程间通信(IPC)全面解析与示例
一、进程通信基础概念 1.1 进程隔离原理 现代操作系统通过虚拟内存技术为每个进程创建独立的地址空间,这种隔离机制保障了系统的安全性,但也导致进程无法直接访问彼此的内存数据。进程间通信(IPC)正是为解决这一矛盾而设计的核心…...
2020年蓝桥杯Java B组第二场题目+部分个人解析
#A:门牌制作 624 解一: public static void main(String[] args) {int count0;for(int i1;i<2020;i) {int ni;while(n>0) {if(n%102) {count;}n/10;}}System.out.println(count);} 解二: public static void main(String[] args) {…...
3. Spring Cloud LoadBalancer 入门与使用
一、什么是 LoadBalancer? LoadBalancer(负载均衡器)是一种网络设备或软件机制,用于分发传入的网络流量负载(请求)到多个后端目标服务器上,从而实现系统资源的均衡利用和提高系统的可用性和性能。 1.1 负载均衡分类 服务器负载均衡是在服务端通过硬件…...
基于TensorFlow.js与Web Worker的智能证件照生成方案
功能简介 本文基于TensorFlow.js与Web Worker实现了常用的“证件照”功能,可以对照片实现抠图并替换背景。值得一提的是,正常抠图的操作应该由后端进行,这里只是主要演示该功能实现步骤,并不建议该功能由前端全权处理。 限于个人技…...
jupyterhub on k8s 配置用户名密码 简单版
如果只是小组内使用 不想共用密码 也不想搞复杂认证方案 那么就直接通过map(用户名,密码md5值)来制定密码 config.yaml部分内容 hub:config:JupyterHub:shutdown_on_logout: true # 用户logout 自动stop jupyter pod,家目录下所有文件会被保存到pvc 即启动后之前家目录下…...
Logic-RL:Unleashing LLM Reasoning with Rule-Based Reinforcement learning
1.Introduction deepseek-r1,kimi-k1.5和openai-o1效果都很好。deepseek-r1引入了一种简单而有效的基于规则的强化学习,无需依赖传统的支撑技术,如蒙特卡洛书树搜索MCTS或者过程奖励模型PRM,便能出现新兴的推理模式。deepseek-r1开源了权重,但是并未发布训练或数据集,这…...
算法-数据结构-图的构建(邻接矩阵表示)
数据定义 //邻接矩阵表示图 //1.无向图是对称的 //2.有权的把a,到b 对应的位置换成权的值/*** 无向图* A B* A 0 1* B 1 0*/ /*** 有向图* A B* A 0 1* B 0 0*/import java.util.ArrayList; import java.util.List;/*** 带权图* A B* A 0 1* B 0 0*/ p…...
使用 Grafana 监控 Spring Boot 应用
随着软件开发领域的不断发展,监控和可观测性已成为确保系统可靠性和性能的关键实践。Grafana 是一个功能强大的开源工具,能够为来自各种来源的监控数据提供丰富的可视化功能。在本篇博客中,我们将探讨如何将 Grafana 与 Spring Boot 应用程序…...
使用S32DS部署Tensorflow lite到S32K3
一、概述 1、本文主要介绍如何用S32DS在NXP S32K344 中部署Tensorflow; 2、示例使用了Tensorflow入门代码,主要功能是识别28 * 28 的手写图片的数字; 3、在MCU上开启DSP功能后,最终运行时间在 7ms(64神经元…...
AWS S3深度解析:十大核心应用场景与高可用架构设计实践
摘要:作为全球领先的对象存储服务,Amazon S3凭借其高扩展性、持久性和安全性,已成为企业云原生架构的核心组件。本文将深入探讨S3的典型技术场景,并揭秘其背后的架构设计逻辑。 一、AWS S3核心技术特性解析 Amazon Simple Storag…...
系统学习算法:专题十二 记忆化搜索
什么是记忆化搜索,我们先用一道经典例题来引入,斐波那契数 题目一: 相信一开始学编程语言的时候,就一定碰到过这道题,在学循环的时候,我们就用for循环来解决,然后学到了递归,我们又…...
Redis基操
redis 存储在内存中 key-value存储 主要存储热点数据(短时间大量的访客去访问) 启动命令 redis-server.exe redis.windows.conf 客户端链接redis服务器 redis-cli.exe redis-cli.exe -h localhost -p 6379 redis-cli.exe -h localhost -p 6379 -a 123456 退出 exit keys * 命…...
基于 GEE 计算并下载研究区年均叶面积指数 LAI 和光合有效辐射分量 FPAR
目录 1 完整代码 2 运行结果 1 完整代码 var table table; var collection ee.ImageCollection(MODIS/061/MOD15A2H).filterDate(2023-01-01, 2023-12-30).filterBounds(table); // LAI配色 var colorLai {min: 0,max: 100,palette: [ffffff, fde0d4, fcc4ac, faa784, f…...
软考——WWW与HTTP
1.万维网(world wide web) 是一个规模巨大的、可以资源互联的资料空间。由URL进行定位,通过HTTP协议传送给使用者,又由HTML来进行文件的展现。 它的主要组成部分是:URL、HTTP、HTML。 (1)URL…...
sqli-labs-master第46关
目录 报错注入 直接注入 数据库名 数据库中的表名 users表结构: users表数据: python脚本注入 直接注入 获取数据库名 获取表名 获取表结构 获取数据 布尔盲注 获取数据库名 获取表名 获取表结构 获取数据 报错注入 直接注入 数据库名…...
opencv交叉编译报错:undefined reference to `png_riffle_palette_neon
序偶NEON 概述 NEON(Nested Enhanced Vector Instruction Set)是 ARM 架构中的一种高级 SIMD(Single Instruction, Multiple Data,单指令多数据)扩展技术。它专为加速多媒体和信号处理任务而设计,允许在单…...
代码随想录算法训练day63---图论系列7《prim算法kruskal算法》
代码随想录算法训练 —day63 文章目录 代码随想录算法训练前言一、53. 寻宝—prim算法打印出来最小生成树的每条边 二、53. 寻宝—kruskal算法打印出来最小生成树的每条边 总结 前言 今天是算法营的第63天,希望自己能够坚持下来! 今天继续图论part&…...
算法日常刷题笔记(2)
为保持刷题的习惯 计划一天刷3-5题 然后一周总计汇总一下 这是第二篇笔记 笔记时间为2月17日到2月23日 第一天 找到初始输入字符串 找到初始输入字符串 Ihttps://leetcode.cn/problems/find-the-original-typed-string-i/ Alice 正在她的电脑上输入一个字符串。但是她打字技…...
C# httpclient 和 Flurl.Http 的测试
关于C#调用接口或Post,Flurl封装了httpclient, CSDN有哥们提供了一个公网的测试网站,可以测试Post调用,我写了2个函数,测试httpclient和Flurl使用Post: async 和 await 是成对使用的,为了接受web异步返回的数据,winfor…...
关于ES中text类型时间字段范围查询的结构化解决方案
前言 有关es中text类型的时间字段范围查询的问题,比如: {"query": {"range": {"insertTime": {"gte": "2025-02-01T00:00:00","lte": "2025-11-30T23:59:59","format&quo…...
四元数 欧拉角
orientation 是表示物体在三维空间中的 旋转姿态 的数据结构。它通常使用 四元数(Quaternion) 来表示旋转。四元数是一种数学工具,用于描述三维空间中的旋转,相比欧拉角(Euler Angles)和旋转矩阵࿰…...
Linux项目自动化构建工具-make/Makefile (linux第六课)
目录 背景 介绍 依赖关系的格式 依赖方法的格式 原理 背景 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定…...
Java 登录框架
Java框架中常用的几种成熟的token生成框架对比 - 白露~ - 博客园 SpringBoot整合sa-token,jwt登录及拦截器鉴权Demo_只有在集成 sa-token-jwt 插件后才可以使用 extra 扩展参数-CSDN博客 推荐一款轻量级权限认证框架Sa-Token,集成JWT和Redis轻松实现认…...
人工智能、机器学习、深度学习和大语言模型之间的关系
人工智能(AI)、机器学习(ML)、深度学习(DL)和大语言模型(LLM)之间是逐层包含且技术递进的关系,具体如下: 1. 层级关系 人工智能(AI)…...
项目组合管理:优化项目选择与资源分配——从战略到实战的全流程指南
在复杂的商业环境中,企业往往需要同时推进多个项目以支撑战略目标。然而,资源有限、目标冲突、优先级模糊等问题常导致项目失败或资源浪费。项目组合管理(Project Portfolio Management, PPM) 正是解决这一痛点的系统性方法。它通…...
zabbix排障-zabbix监控的主机出现可用性灰色或者红色问题
目录 解决zabbix-agent可用性灰色的办法: 解决zabbix可用性红色的方法: 在zabbix日常的使用中 我们会遇到很多的问题 就比如今天我做好zabbix-server和zabbix-agent两台机器的配置 然后在wen页面上发现两台主机都有可用性的问题 如下图 解决zabbix-agent可用性灰色的办法: …...
C语言(13)------------>do-while循环
1.do-while循环的语法 我们知道C语言有三大结构,顺序、选择、循环。我们可以使用while循环、for循环、do-while循环实现循环结构。之前的博客中提及到了前两者的技术实现。可以参考: C语言(11)------------->while循…...
2025-spring boot 之多数据源管理
1、是使用Spring提供的AbstractRoutingDataSource抽象类 注入多个数据源。 创建 DataSourceConfig 配置类 通过spring jdbc 提供的带路由的抽象数据源 AbstractRoutingDataSource import org.springframework.beans.factory.annotation.Autowired; import org.springframew…...
自动驾驶两个传感器之间的坐标系转换
有两种方式可以实现两个坐标系的转换。 车身坐标系下一个点p_car,需要转换到相机坐标系下,旋转矩阵R_car2Cam,平移矩阵T_car2Cam。点p_car在相机坐标系下记p_cam. 方法1:先旋转再平移 p_cam T_car2Cam * p_car T_car2Cam 需要注…...
DeepSeek 细节之 MoE
DeepSeek 细节之 MoE DeepSeek 团队通过引入 MoE(Mixture of Experts,混合专家) 机制,以“分而治之”的思想,在模型容量与推理成本之间找到了精妙的平衡点,其中的技术实现和细节值得剖思 Transformer 演变…...
SeaCMS V9海洋影视管理系统报错注入
漏洞背景 SQL 注入攻击是当前网络安全中最常见的一种攻击方式,攻击者可以利用该漏洞访问或操作数据库,造成数据泄露或破坏。通常发生在开发人员未能正确处理用户输入时。 在 SeaCMS V9 中,用户输入(如登录、评论、分页、ID 等&a…...
Cannot deserialize instance of java.lang.String out of START_ARRAY token
这个错误 Cannot deserialize instance of java.lang.String out of START_ARRAY token 表示 Jackson 正在尝试将一个 JSON 数组反序列化成一个 String 类型的字段,但是 JSON 中传递的是一个数组而不是单一的字符串。 具体来说,这段堆栈信息:…...
LeetCode 解题思路 1(Hot 100)
解题思路: 使用哈希表优化查找:利用哈希表存储已遍历元素的值及其索引,将查找时间从O(n)降至O(1)。一次遍历:遍历数组,对每个元素计算其补数(target - nums[i]),若补数存在于哈希表…...
js中的await与async的使用
以下两个方法,区别只在有没有catch,使用的时候却要注意 // 封装请求方法,同步loading状态出去 export const fetchWithLoading async (fn: Function, params: any, loading: Ref) > {loading.value true;try {return await fn(params);…...
蓝耘科技上线 DeepSeek 满血版,500万tokens免费送
🌟 嗨,我是Lethehong!🌟 🌍 立志在坚不欲说,成功在久不在速🌍 🚀 欢迎关注:👍点赞⬆️留言收藏🚀 🍀欢迎使用:小智初学…...
【入门音视频】音视频基础知识
🌈前言🌈 这个系列在我学习过程中,对音视频知识归纳总结的笔记。因为音视频相关讲解非常稀少,所以我希望通过这个音视频系列,跟大家一起学习音视频,希望减少初学者在学习上的压力。同时希望也欢迎指出文章的…...
w~视觉~合集13
我自己的原文哦~ https://blog.51cto.com/whaosoft/13384038 #xxx w视觉合集13~17没了.... #ViTAR 作者提出了一种新颖的架构:任意分辨率的视觉 Transformer (ViTAR)。ViTAR中的自适应标记合并功能使模型能够自适应地处理可变分辨率图像…...
DeepSeek+Kimi 一键生成100种PPT
一 简介 PPT在工作中经常用到,无论是给老板汇报,还是同事、朋友之间的分享,或是去见投资人:) ,都离不开它,然而写PPT经常让人感觉不胜其烦,无论是逻辑的展开、还是页面的布局、字体、配图,都像个…...
【Qt之QQuickWidget】QML嵌入QWidget中
由于我项目开始使用Widgets,换公司后直接使用QML开发,没有了解过如何实现widget到qml过渡,恰逢面试时遇到一家公司希望从widget迁移到qml开发,询问相关实现,一时语塞,很尴尬,粗略研究并总结下。 对qwidget嵌…...