20230604_Hadoop命令操作练习
20230604_Hadoop命令操作示例
-
再HDFS中创建文件夹:/itcast/it heima,如存在请删除(跳过回收站)。
hdfs dfs -mkdir -p /itcast/itheima -
上传/etc/hosts文件到hdfs的/itcast/itheima内。
hadoop fs -put /etc/hosts /itcast/itheima -
查看HDFS中刚刚上传的文件内容。
hdfs dfs -ls /itcast/itheima hdfs dfs -cat /itcast/itheima/hosts -
向HDFS中上传的文件追加:itheima到最后一行。
hdfs dfs -appendToFile abc.txt /itcast/itheima/hosts -
下载hdfs中上传的文件到本地任意目录。
hadoop fs -get /itcast/itheima/hosts /data/ -
再hdfs中创建文件夹:/itcast/bigdata,将/itcast/itheima/hosts文件复制到/itcast/bigdata内。
hdfs dfs -mkdir -p /itcast/bigdata/ hdfs dfs -cp /itcast/itheima/hosts /itcast/bigdata/ -
将/itcast/itheima/hosts文件重命名为/itcast/itheima/myhost.
hdfs dfs -ls /itcast/itheima/rename -
删除/itcast文件夹。
hdfs dfs rm -r /itcast # 跳过回收站 hdfs dfs -rm -r -skipTrash /itcast/itheima/rename
番外:练习的时候遇见一个问题以及解决过程中的记录
<property><name>fs.defaultFS</name><value>hdfs://node1:8020</value></property>"""key:fs.defaultFS含义:HDFS文件系统的网络通讯路径值:hdfs://node1:8020- 协议为hdfs://- namenode为node1- namenode通讯端口为8020"""# 注意:defultFS一定不要写成defultfs,大小写会影响系统读取文件内容。
解决思路:查看 vim /export/server/hadoop/logs/ hadoop-hadoop-datanode-node3.log
以下是一些错误的报警已经解决思路,感谢chatgpt:
WARN org.apache.hadoop.security.authentication.server.AuthenticationFilter: Unable to initialize FileSignerSecretProvider, falling back to use random secrets. Reason: Could not read signature secret file: /home/hadoop/hadoop-http-auth-signature-secret
'''
这个错误意味着Hadoop无法读取签名密钥文件,因此无法初始化FileSignerSecretProvider。出现这个错误的原因可能是文件不存在、权限不足或格式不正确。
解决此问题的步骤如下:
检查文件路径是否正确,确保文件存在于指定路径中
检查文件权限,确保Hadoop用户对该文件具有读取权限
检查文件格式,确保文件包含正确格式的秘密内容
如果您已经尝试了上述步骤,但仍无法解决该问题,则可以考虑执行“hadoop fs -put”命令将签名密钥文件上传到Hadoop文件系统中,并在hadoop-site.xml文件中指定密钥文件的路径。此外,您还可以考虑使用随机密钥代替签名密钥,以避免此错误。
'''
WARN org.apache.hadoop.hdfs.server.datanode.web.DatanodeHttpServer: Got null for restCsrfPreventionFilter - will not do any filtering.
'''
这个警告信息意味着HDFS数据节点的Web UI没有启用CSRF防护过滤器。CSRF防护过滤器用于保护Web应用程序免受跨站请求攻击,如果没有启用,则可能存在安全风险。
要解决此问题,您可以在hdfs-site.xml中启用restCsrfPreventionFilter,如下所示:<property><name>dfs.datanode.http.filter.initializers</name><value>org.apache.hadoop.hdfs.server.datanode.web.RestCsrfPreventionFilterInitializer</value>
</property>
如果您已经在hdfs-site.xml中启用了restCsrfPreventionFilter,但仍然收到这个警告信息,则可能是由于环境问题或版本问题导致的。您可以尝试更新Hadoop版本或检查操作系统环境是否正常。
'''
WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Unable to get NameNode addresses.
'''
这个警告信息意味着HDFS数据节点无法获取NameNode的地址。这可能是由于网络或配置问题导致的。
要解决此问题,您可以执行以下步骤:
检查网络连接:确保HDFS数据节点和NameNode之间的网络连接正常。您可以使用ping命令测试网络是否正常。
检查配置文件:检查hdfs-site.xml文件中是否指定了正确的NameNode地址。您可以尝试手动指定NameNode地址,然后重新启动HDFS数据节点。
检查NameNode状态:确保NameNode正在运行,您可以使用jps命令检查NameNode的状态。
如果您已经执行了上述步骤,但仍然无法解决该问题,则可能需要进一步检查Hadoop集群的配置和网络设置。
'''
WARN org.apache.hadoop.hdfs.server.datanode.DataNode: Unable to get NameNode addresses. java.io.IOException: Incorrect configuration: namenode address dfs.namenode.servicerpc-address.[] or dfs.namenode.rpc-address.[] is not configured.
'''
这个警告信息意味着HDFS数据节点无法获取NameNode的地址,因为在hdfs-site.xml配置文件中没有正确配置dfs.namenode.servicerpc-address和dfs.namenode.rpc-address属性。
要解决此问题,您可以在hdfs-site.xml中指定正确的NameNode地址。请确保以下属性已在hdfs-site.xml中正确配置:<property><name>dfs.namenode.servicerpc-address</name><value>namenode_hostname:8022</value><description>The address of the NameNode's service RPC server</description>
</property><property><name>dfs.namenode.rpc-address</name><value>namenode_hostname:8020</value><description>The address of the NameNode's RPC server</description>
</property>
在上面的示例中,“namenode_hostname”应替换为您的NameNode主机名或IP地址。如果您已经在hdfs-site.xml中指定了正确的dfs.namenode.servicerpc-address和dfs.namenode.rpc-address属性,但仍然收到这个警告信息,则可能是由于其他配置问题或网络问题导致的,您可以检查配置文件并确保网络连接正常。
'''
ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: Exception in secureMain
'''
这个错误信息意味着HDFS数据节点无法在安全模式下启动。这可能是由于许多问题导致的,如缺少关键库文件、文件权限不正确或配置问题。
要解决此问题,您可以执行以下步骤:
检查关键库文件:请确保Hadoop集群中的关键库文件(如ssl-server.xml、ssl-client.xml和ssl-server.xml的密钥库和信任库)已正确配置。
检查文件权限:请确保所有Hadoop集群中的文件权限正确。您可以使用chmod命令更改文件权限,以确保所有的文件对Hadoop用户和组可读可写。
检查配置问题:请确保所有Hadoop配置文件(如core-site.xml、hdfs-site.xml和yarn-site.xml)已正确配置,并且所有关键属性已设置为正确的值。您可以手动检查配置文件,或者使用Ambari、Cloudera Manager等集群管理工具来检查配置是否正常。
检查日志:如果上述步骤都没有解决该问题,则可以检查Hadoop日志文件,以查找更详细的错误信息。有时,您可以通过检查日志文件来确定问题所在。
如果您已经执行了上述步骤,但仍然无法解决该问题,则可能需要进一步检查Hadoop集群的配置和环境设置。
'''
相关文章:
20230604_Hadoop命令操作练习
20230604_Hadoop命令操作示例 再HDFS中创建文件夹:/itcast/it heima,如存在请删除(跳过回收站)。 hdfs dfs -mkdir -p /itcast/itheima上传/etc/hosts文件到hdfs的/itcast/itheima内。 hadoop fs -put /etc/hosts /itcast/itheima…...
hashCode 与 equals(重要)?
hashCode () 作用是获取哈希码,也称为散列码,实际上是返回一个int 整数,哈希码作用是确定该对象在哈希表中的索引位置;hashCode() 定义在JDK的Object.java中,意味着Java中的任何类都包含有hashCode() 函数。 散列表存…...
华为OD机试(2023.5新题) 需要打开多少监控器(java,py,c++,js)
华为OD机试真题目录:真题目录 本文章提供java、python、c++、jsNode四种代码 题目描述 某长方形停车场,每个车位上方都有对应监控器,当且仅当在当前车位或者前后左右四个方向任意一个车位范围停车时,监控器才需要打开 给出某一时刻停车场的停车分布,请统计最少需要打开…...
209.长度最小的子数组
2023.6.1 这道题的关键是滑动窗口法,滑动窗口法应设定好窗口左侧的右移条件与窗口右侧的移动条件 本例中先初始化好用到的各种值 循环的终止条件是滑动窗口右侧超出列表的范围 走来 cur_sum nums[right] 是将cur_sum的值更新为当前滑动窗口[left,right]的值之和 接…...
react antd Modal里Form设置值不起作用
问题描述: react antd Modal里Form设置值不起作用,即使用form的api。比如:编辑时带出原有的值。 造成的原因:一般设置值都是在声明周期里设置,比如:componentDidMounted里设置,hook则在useEff…...
idea连接Linux服务器
一、 介绍 配置idea的ssh会话和sftp可以实现对linux远程服务器的访问和文件上传下载,是替代Xshell的理想方式。这样我们就能在idea里面编写文件并轻松的将文件上传到linux服务器中。而且还能远程编辑linux服务器上的文件。掌握并熟练使用,能够大大提高我…...
在windows环境下使用winsw将jar包注册为服务(实现开机自启和配置日志输出模式)
前言 Windows系统使用java -jar m命令行运行Java项目会弹出黑窗。首先容易误点导致程序关闭,其次我们希望能在Windows系统做到开机自动启动。因此对于SpringBoot程序,目前主流的方法是采用winsw,简单容易配置 1.下载winsw工具 https://git…...
汽车通用款一键启动舒适进入拓展蓝牙4G网络手机控车系统
1.PKE无钥匙舒适进入功能,靠近车门自动开锁,离开车门自动上锁 2.一键启动/熄火 3.远程遥控启动/熄火 4.遥控设防盗/解除防盗 5.遥控开后尾箱锁负信号输出(需要原车自带尾箱马达和继电器) 6.静音防盗/解除防盗 7.启动车后踩脚刹自动上锁 8.熄火车辆后自动开锁…...
QSettings Class
QSettings类 QSettings类公共类型(枚举)公有成员函数静态成员函数函数作用这个类写文件的特征 QSettings类 QSettings类提供持久的独立于平台的应用程序设置。 头文件:#include< QSettings >qmake:QT core继承(父):QObje…...
【vue】关于vue中的插槽
当在Vue.js中构建可复用的组件时,有时候需要在父组件中传递内容给子组件。Vue的插槽(slot)机制提供了一种灵活的方式来实现这种组件间通信。 插槽允许你在父组件中编写子组件的内容,然后将其传递给子组件进行渲染。这样ÿ…...
Springboot整合Mybatis Plus【超详细】
文章目录 Mybatis Plus简介快速整合1,导入依赖2,yml文件中配置信息3,启动类上加上扫描mapper接口所在包的注解4,编写配置类5,实现自动注入通用字段接口(非必需)6,编写生成器工具类 使…...
接口测试-使用mock生产随机数据
在做接口测试的时候,有的接口需要进行大量的数据进行测试,还不能是重复的数据,这个时候就需要随机生产数据进行测试了。这里教导大家使用mock.js生成各种随机数据。 一、什么是mock.js mock.js是用于生成随*机数据,拦截 Ajax 请…...
Kohl‘s百货的EDI需求详解
Kohls是一家美国的连锁百货公司,成立于1962年,总部位于美国威斯康星州的门多西。该公司经营各种商品,包括服装、鞋子、家居用品、电子产品、化妆品等,并拥有超过1,100家门店,分布在美国各地。本文将为大家介绍Kohls的E…...
二叉树part6 | ● 654.最大二叉树 ● 617.合并二叉树 ● 700.二叉搜索树中的搜索 ● 98.验证二叉搜索树
文章目录 654.最大二叉树思路代码 617.合并二叉树思路代码 700.二叉搜索树中的搜索思路代码 98.验证二叉搜索树思路官方题解代码困难 今日收获 654.最大二叉树 思路 前序遍历构造二叉树。 找出数组中最大值,然后递归处理左右子数组。 时间复杂度On2 空间复杂度On …...
Linux命令记录
Shells 查看当前系统shell cat /etc/shells # 输出 # /etc/shells: valid login shells /bin/sh /bin/bash /usr/bin/bash /bin/rbash /usr/bin/rbash /bin/dash /usr/bin/dash查看正在使用的shell echo $SHELL # 输出 /bin/bashLinux文件结构 bin:系统可执行文件b…...
eBPF 入门实践教程十五:使用 USDT 捕获用户态 Java GC 事件耗时
eBPF (扩展的伯克利数据包过滤器) 是一项强大的网络和性能分析工具,被广泛应用在 Linux 内核上。eBPF 使得开发者能够动态地加载、更新和运行用户定义的代码,而无需重启内核或更改内核源代码。这个特性使得 eBPF 能够提供极高的灵活性和性能,…...
Linux :: vim 编辑器的初次体验:三种 vim 常用模式 及 使用:打开编辑、退出保存关闭vim
前言:本篇是 Linux 基本操作篇章的内容! 笔者使用的环境是基于腾讯云服务器:CentOS 7.6 64bit。 学习集: C 入门到入土!!!学习合集Linux 从命令到网络再到内核!学习合集 目录索引&am…...
Linux内核进程创建流程
本文代码基于Linux5.10 内容主要参考《Linux内核深度解析》余华兵 当Linux内核要创建一个新进程时, 流程大致如下 ret fork(); if (ret 0) {/* 子进程装载程序 */ret execve(filename, argv, envp); } else if (ret > 0) {/* 父进程 */ } 大致可以分为创建新…...
【03.04】大数据教程--HTTP协议和静态Web服务器
HTTP协议和静态Web服务器 HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的协议,它是Web上的基础通信协议。静态Web服务器是指能够提供静态内容(如HTML、CSS、JavaScript和图像文件)的服务器。 在本教程中&am…...
数据共享传输:台式机和笔记本同步文件!
为什么要在台式机和笔记本同步文件? “我想在台式机和笔记本同步文件。因为我工作时使用笔记本,在家里使用安装了Windows 10系统的台式机,我想要在笔记本和台式机之间同步应用程序、游戏、文档等。有没有一种可以在台式机和笔记本同步文件的…...
进程地址空间(比特课总结)
一、进程地址空间 1. 环境变量 1 )⽤户级环境变量与系统级环境变量 全局属性:环境变量具有全局属性,会被⼦进程继承。例如当bash启动⼦进程时,环 境变量会⾃动传递给⼦进程。 本地变量限制:本地变量只在当前进程(ba…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
Caliper 负载(Workload)详细解析
Caliper 负载(Workload)详细解析 负载(Workload)是 Caliper 性能测试的核心部分,它定义了测试期间要执行的具体合约调用行为和交易模式。下面我将全面深入地讲解负载的各个方面。 一、负载模块基本结构 一个典型的负载模块(如 workload.js)包含以下基本结构: use strict;/…...
数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)
名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 原创笔记:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 上一篇:《数据结构第4章 数组和广义表》…...
基于开源AI智能名片链动2 + 1模式S2B2C商城小程序的沉浸式体验营销研究
摘要:在消费市场竞争日益激烈的当下,传统体验营销方式存在诸多局限。本文聚焦开源AI智能名片链动2 1模式S2B2C商城小程序,探讨其在沉浸式体验营销中的应用。通过对比传统品鉴、工厂参观等初级体验方式,分析沉浸式体验的优势与价值…...
Windows 下端口占用排查与释放全攻略
Windows 下端口占用排查与释放全攻略 在开发和运维过程中,经常会遇到端口被占用的问题(如 8080、3306 等常用端口)。本文将详细介绍如何通过命令行和图形化界面快速定位并释放被占用的端口,帮助你高效解决此类问题。 一、准…...
Tauri2学习笔记
教程地址:https://www.bilibili.com/video/BV1Ca411N7mF?spm_id_from333.788.player.switch&vd_source707ec8983cc32e6e065d5496a7f79ee6 官方指引:https://tauri.app/zh-cn/start/ 目前Tauri2的教程视频不多,我按照Tauri1的教程来学习&…...
StarRocks 全面向量化执行引擎深度解析
StarRocks 全面向量化执行引擎深度解析 StarRocks 的向量化执行引擎是其高性能的核心设计,相比传统行式处理引擎(如MySQL),性能可提升 5-10倍。以下是分层拆解: 1. 向量化 vs 传统行式处理 维度行式处理向量化处理数…...
