首页 > 其他分享 >【Flink系列十八】HDFS_DELEGATION_TOKEN过期的问题解决汇总

【Flink系列十八】HDFS_DELEGATION_TOKEN过期的问题解决汇总

时间:2023-09-12 12:22:41浏览次数:51  
标签:HDFS DistributedFileSystem java Flink hadoop DELEGATION apache org

问题类别

  • Spark框架自身的问题
  • Hadoop全家桶的问题
  • 开发者通过Hive,HDFS,HBASE访问HDFS的问题

排查

  1. 已知Hadoop-common-2.6.0的UGI存在bug,代码为HADOOP-10786,该问题在CDH发行版中已经修复,但Apache版本存在问题。
  2. 已知HDFS也存在一个HDFS_DELEGATION_TOKEN过期的bug,代码为HDFS-9276,问题在CDH发行版中已经修复,但Apache版本存在问题。
  3. 已知Spark还存在一个HDFS_DELEGATION_TOKEN过期的bug,代码为SPARK-23361,该问题会导致Driver重启后,如果超过7天,就会挂掉一次。

以上CDH发行版特指 2.6.0-CDH5.12.1,相对的Apache发行版版本为2.6.0

方法

  • 首先,确保用的Apache库没有问题,才能安全地长期运行Spark,Flink等 long-running applications,其次再排查手动使用Hadoop HDFS库的方式,才能访问HDFS,Hbase, Hive等,才能确保程序不会挂掉
  • 确保使用 Hadoop-common-2.6.0-CDH5.12.1以及其他Hadoop有关的包,保证框架层面不会有问题
  • 要么升级版本到没有BUG的hadoop库的版本,才能继续使用Apache全家桶

案例

org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.security.token.SecretManager$InvalidToken): token (token for research: HDFS_DELEGATION_TOKEN [email protected], renewer=yarn, realUser=, issueDate=1690268368213, maxDate=1690873168213, sequenceNumber=211804054, masterKeyId=2078) is expired, current time: 2023-08-01 15:00:20,416+0800 expected renewal time: 2023-08-01 14:59:28,213+0800
	at org.apache.hadoop.ipc.Client.call(Client.java:1504)
	at org.apache.hadoop.ipc.Client.call(Client.java:1441)
	at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:230)
	at com.sun.proxy.$Proxy10.getFileInfo(Unknown Source)
	at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:771)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:260)
	at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:104)
	at com.sun.proxy.$Proxy11.getFileInfo(Unknown Source)
	at org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:2126)
	at org.apache.hadoop.hdfs.DistributedFileSystem$20.doCall(DistributedFileSystem.java:1262)
	at org.apache.hadoop.hdfs.DistributedFileSystem$20.doCall(DistributedFileSystem.java:1258)
	at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
	at org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1258)
	at org.apache.hadoop.fs.FilterFileSystem.getFileStatus(FilterFileSystem.java:425)
	at org.apache.hadoop.fs.viewfs.ChRootedFileSystem.getFileStatus(ChRootedFileSystem.java:226)
	at org.apache.hadoop.fs.viewfs.ViewFileSystem.getFileStatus(ViewFileSystem.java:379)

标签:HDFS,DistributedFileSystem,java,Flink,hadoop,DELEGATION,apache,org
From: https://www.cnblogs.com/slankka/p/17695853.html

相关文章

  • Flink CDC 原理、实践和优化
    本文转载自:https://zhuanlan.zhihu.com/p/430182083 CDC变更数据捕获技术可以将源数据库的增量变动记录,同步到一个或多个数据目的。本文基于腾讯云Oceanus提供的FlinkCDC引擎,着重介绍Flink在变更数据捕获技术中的应用。一、CDC是什么?CDC是变更数据捕获(ChangeData......
  • 在VMware虚拟机集群上部署HDFS集群
    本篇博客跟大家分享一下如何在VMware虚拟机集群上部署HDFS集群一·、下载hadoop安装包进入官网:https://hadoop.apache.org 下载hadoop安装包由于ApacheHadoop是国外网址,下载安装包对于网络要求较高 二、上传压缩包,进行解压在进行解压之前,保证自己已经完成vmwa的黄静配置 三、......
  • Iceberg从入门到精通系列之十一:Flink DataStream读取Iceberg表
    Iceberg从入门到精通系列之十一:FlinkDataStream读取Iceberg表一、完整代码二、效果如下所示一、完整代码importorg.apache.flink.api.common.typeinfo.Types;importorg.apache.flink.api.java.tuple.Tuple2;importorg.apache.flink.streaming.api.datastream.DataStream;i......
  • Iceberg从入门到精通系列之九:flink sql修改Iceberg表和删除Iceberg表
    Iceberg从入门到精通系列之九:flinksql修改Iceberg表一、修改表属性二、修改表名三、删除表一、修改表属性ALTERTABLE`hive_catalog`.`default`.`sample`SET('write.format.default'='avro');二、修改表名ALTERTABLE`hive_catalog`.`default`.`sample`RENAMETO`hive_cat......
  • Iceberg从入门到精通系列之八:flink sql 创建Iceberg表
    Iceberg从入门到精通系列之八:flinksql创建Iceberg表一、创建数据库二、创建表三、创建分区表四、使用LIKE语法建表五、创建主键表一、创建数据库createdatabaseiceberg_db;useiceberg_db;二、创建表createtable`hive_catalog`.`default`.`sample`(idbigintcomment'un......
  • Iceberg从入门到精通系列之七:Flink SQL创建Catalog
    Iceberg从入门到精通系列之七:FlinkSQL创建Catalog一、语法说明二、flink集成hivejar包三、放到指定目录四、启动hivemetastore服务五、创建hivecatalog六、查看catalog七、HadoopCatalog八、创建sql-client初始化文件九、启动flinksql指定初始化文件一、语法说明createcat......
  • Iceberg从入门到精通系列之六:Flink集成Iceberg
    Iceberg从入门到精通系列之六:Flink集成Iceberg一、下载Flink二、解压Flink安装包三、配置环境变量四、激活环境变量五、下载Icebergflinkjar包六、部署Icebergflinkjar包七、修改flink配置八、启动flink九、启动flinksqlclient一、下载Flink下载Flink:https://www.apache.o......
  • hdfs批量上传下载文件和删除指定目录下文件
    hdfs批量上传下载文件和删除指定目录下文件一、hdfs批量下载文件hdfsdfs-gets3a://bigdata/infra/zeppelin/notebook/二、hdfs批量上传文件hdfsdfs-put./*/bigdata/infr/zeppelin/notebook/三、hdfs删除指定目录hdfsdfs-rm-r/bigdata/infra/zeppelin/notebook/wei.ji10......
  • 在flink-1.17中测试执行流处理版本的单词计数程序时,出现"Exception in thread "Thread
    场景描述采用单作业模式提交作业后发现报错了 报错内容Exceptioninthread“Thread-5”java.lang.IllegalStateException:Tryingtoaccessclosedclassloader.Pleasecheckifyoustoreclassloadersdirectlyorindirectlyinstaticfields.Ifthestacktrace......
  • Flink 1.17教程:聚合算子(Aggregation)之按键分区(keyBy)
    聚合算子(Aggregation)计算的结果不仅依赖当前数据,还跟之前的数据有关,相当于要把所有数据聚在一起进行汇总合并——这就是所谓的“聚合”(Aggregation),类似于MapReduce中的reduce操作。按键分区(keyBy)对于Flink而言,DataStream是没有直接进行聚合的API的。因为我们对海量数据做聚合肯定要......