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

ambari——apptimelineserver启动问题

2019独角兽企业重金招聘Python工程师标准#启动apptimelineserver在yarn的日志中无最新日志产生启动error:resource_man

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

# 启动app timeline server
在yarn的日志中无最新日志产生启动error:

```
resource_management.core.exceptions.Fail: Execution of 'curl -sS -L -w '%{http_code}' -X PUT 'http://ab-01:50070/webhdfs/v1/ats/done?op=SETPERMISSION&user.name=hdfs&permission=755'' returned status_code=403. 
{
  "RemoteException": {
    "exception": "SafeModeException", 
    "javaClassName": "org.apache.hadoop.hdfs.server.namenode.SafeModeException", 
    "message": "Cannot set permission for /ats/done. Name node is in safe mode.\nThe reported blocks 819 has reached the threshold 1.0000 of total blocks 819. The number of live datanodes 5 has reached the minimum number 0. Name node detected blocks with generation stamps in future. This means that Name node metadata is inconsistent.This can happen if Name node metadata files have been manually replaced. Exiting safe mode will cause loss of 664 byte(s). Please restart name node with right metadata or use \"hdfs dfsadmin -safemode forceExitif you are certain that the NameNode was started with thecorrect FsImage and edit logs. If you encountered this duringa rollback, it is safe to exit with -safemode forceExit."
  }
}

```

- 查看ambari-agent日志发现NameNode有一个alert:
```
ERROR 2017-03-27 10:11:23,325 script_alert.py:119 - [Alert][namenode_last_checkpoint] Failed with result CRITICAL: ['Last Checkpoint: [92 hours, 42 minutes, 1 transactions]']

```
查看HDFS状态,HDFS处于安全模式
HDFS在安全模式下,只能查看文件,不能写文件。参考:
1、http://bbs.csdn.net/topics/390657293
2、Hadoop- The Definitive Guide, 4th Edition p317

HDFS安全模式相关指令:
查看安全模式状态:
% hdfs dfsadmin -safemode get
进入安全模式:
% hdfs dfsadmin -safemode enter
退出安全模式:
% hdfs dfsadmin -safemode leave
等待退出安全模式:
% hdfs dfsadmin -safemode wait

执行推出安全模式指令后无法推出安全模式,参考:
1、http://bbs.csdn.net/topics/390657293
2、http://www.360doc.com/content/11/1201/09/3294720_168811892.shtml

原因:
1、磁盘写满;
2、HDFS里面的备份块丢失过多

由于HDFS中数据量没有写满磁盘,判断原因为HDFS中备份数据丢失导致无法退出安全模式。
修复HDFS数据:
hsfs fsck /

```
 Total symlinks:                0 (Files currently being written: 3)
 Total blocks (validated):      819 (avg. block size 852783 B) (Total open file blocks (not validated): 2)
 Minimally replicated blocks:   819 (100.0 %)
 Over-replicated blocks:        0 (0.0 %)
 Under-replicated blocks:       819 (100.0 %)
 Mis-replicated blocks:         0 (0.0 %)
 Default replication factor:    3
 Average block replication:     2.0
 Corrupt blocks:                0
 Missing replicas:              819 (33.333332 %)
 Number of data-nodes:          5
 Number of racks:               1
FSCK ended at Mon Mar 27 10:05:31 CST 2017 in 157 milliseconds
```

执行后无法退出安全模式

- 尝试通过迁移NameNode来解决HDFS的安全模式问题,迁移NameNode后,HDFS退出安全模式,但是DataNode无法启动,查看日志输出:
```
2017-03-29 10:59:45,884 WARN  common.Storage (DataStorage.java:loadDataStorage(449)) - Failed to add storage directory [DISK]file:/hadoop/hdfs/data/
java.io.IOException: Incompatible clusterIDs in /hadoop/hdfs/data: namenode clusterID = CID-5a76cc80-cf88-45ce-ac13-d96fe83e8696; datanode clusterID = CID-c9db625f-6c6e-4562-9d98-5eec95a2121f
        at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:799)
        at org.apache.hadoop.hdfs.server.datanode.DataStorage.loadStorageDirectory(DataStorage.java:322)
        at org.apache.hadoop.hdfs.server.datanode.DataStorage.loadDataStorage(DataStorage.java:438)
        at org.apache.hadoop.hdfs.server.datanode.DataStorage.addStorageLocations(DataStorage.java:417)
        at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:595)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1483)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1448)
        at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:319)
        at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:267)
        at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:740)
        at java.lang.Thread.run(Thread.java:745)
2017-03-29 10:59:45,887 ERROR datanode.DataNode (BPServiceActor.java:run(752)) - Initialization failed for Block pool (Datanode Uuid 316d12f9-5812-4d82-a71c-90e393c9452f) service to ab-05/192.168.1.105:8020. Exiting.
java.io.IOException: All specified directories are failed to load.
        at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:596)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1483)
        at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1448)
        at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:319)
        at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:267)
        at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:740)
        at java.lang.Thread.run(Thread.java:745)
2017-03-29 10:59:45,887 WARN  datanode.DataNode (BPServiceActor.java:run(776)) - Ending block pool service for: Block pool (Datanode Uuid 316d12f9-5812-4d82-a71c-90e393c9452f) service to ab-05/192.168.1.105:8020
2017-03-29 10:59:45,991 INFO  datanode.DataNode (BlockPoolManager.java:remove(103)) - Removed Block pool (Datanode Uuid 316d12f9-5812-4d82-a71c-90e393c9452f)
2017-03-29 10:59:47,992 WARN  datanode.DataNode (DataNode.java:secureMain(2637)) - Exiting Datanode
2017-03-29 10:59:47,994 INFO  util.ExitUtil (ExitUtil.java:terminate(124)) - Exiting with status 0
2017-03-29 10:59:47,997 INFO  datanode.DataNode (LogAdapter.java:info(47)) - SHUTDOWN_MSG:
```
- 原因分析:datanode的clusterID 和 namenode的clusterID 不匹配。查看NameNode的VERSION对比:
```
#原节点
namespaceID=1746540282
clusterID=CID-c9db625f-6c6e-4562-9d98-5eec95a2121f
cTime=0
storageType=NAME_NODE
blockpoolID=BP-331978251-192.168.1.105-1489657175277
layoutVersion=-63

#新节点
namespaceID=1413170473
clusterID=CID-5a76cc80-cf88-45ce-ac13-d96fe83e8696
cTime=0
storageType=NAME_NODE
blockpoolID=BP-1251469915-192.168.1.105-1490755308251
layoutVersion=-63
```
- 即对应的NameNode和DataNode实际上不属于同一个集群,因此启动NameNode后无法启动DataNode,NameNode也无法管理原有的DataNode。

- 处理方法:将ClusterID改为原来ClusterID,blockpoolID改为对应新节点的相应的ID,停止HDFS服务,执行```hadoop namenode format```指令重新初始化HDFS。

- 依次重启相关service。


转:https://my.oschina.net/u/3034870/blog/871892



推荐阅读
  • 本文介绍了在sqoop1.4.*版本中,如何实现自定义分隔符的方法及步骤。通过修改sqoop生成的java文件,并重新编译,可以满足实际开发中对分隔符的需求。具体步骤包括修改java文件中的一行代码,重新编译所需的hadoop包等。详细步骤和编译方法在本文中都有详细说明。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 在重复造轮子的情况下用ProxyServlet反向代理来减少工作量
    像不少公司内部不同团队都会自己研发自己工具产品,当各个产品逐渐成熟,到达了一定的发展瓶颈,同时每个产品都有着自己的入口,用户 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • 本文介绍了在Linux下安装和配置Kafka的方法,包括安装JDK、下载和解压Kafka、配置Kafka的参数,以及配置Kafka的日志目录、服务器IP和日志存放路径等。同时还提供了单机配置部署的方法和zookeeper地址和端口的配置。通过实操成功的案例,帮助读者快速完成Kafka的安装和配置。 ... [详细]
  • Elasticsearch1Elasticsearch入门1.1Elasticsearch术语1.1.16.0以前的Elasticsearch术语1.1.26.0以后的Elasti ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 一句话解决高并发的核心原则
    本文介绍了解决高并发的核心原则,即将用户访问请求尽量往前推,避免访问CDN、静态服务器、动态服务器、数据库和存储,从而实现高性能、高并发、高可扩展的网站架构。同时提到了Google的成功案例,以及适用于千万级别PV站和亿级PV网站的架构层次。 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
  • 大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记
    本文介绍了大数据Hadoop生态(20)MapReduce框架原理OutputFormat的开发笔记,包括outputFormat接口实现类、自定义outputFormat步骤和案例。案例中将包含nty的日志输出到nty.log文件,其他日志输出到other.log文件。同时提供了一些相关网址供参考。 ... [详细]
  • 本文讨论了在shiro java配置中加入Shiro listener后启动失败的问题。作者引入了一系列jar包,并在web.xml中配置了相关内容,但启动后却无法正常运行。文章提供了具体引入的jar包和web.xml的配置内容,并指出可能的错误原因。该问题可能与jar包版本不兼容、web.xml配置错误等有关。 ... [详细]
  • 目录浏览漏洞与目录遍历漏洞的危害及修复方法
    本文讨论了目录浏览漏洞与目录遍历漏洞的危害,包括网站结构暴露、隐秘文件访问等。同时介绍了检测方法,如使用漏洞扫描器和搜索关键词。最后提供了针对常见中间件的修复方式,包括关闭目录浏览功能。对于保护网站安全具有一定的参考价值。 ... [详细]
  • Sleuth+zipkin链路追踪SpringCloud微服务的解决方案
    在庞大的微服务群中,随着业务扩展,微服务个数增多,系统调用链路复杂化。Sleuth+zipkin是解决SpringCloud微服务定位和追踪的方案。通过TraceId将不同服务调用的日志串联起来,实现请求链路跟踪。通过Feign调用和Request传递TraceId,将整个调用链路的服务日志归组合并,提供定位和追踪的功能。 ... [详细]
  • 本文介绍了禅道作为一款国产开源免费的测试管理工具的特点和功能,并提供了禅道的搭建和调试方法。禅道是一款B/S结构的项目管理工具,可以实现组织管理、后台管理、产品管理、项目管理和测试管理等功能。同时,本文还介绍了其他软件测试相关工具,如功能自动化工具和性能自动化工具,以及白盒测试工具的使用。通过本文的阅读,读者可以了解禅道的基本使用方法和优势,从而更好地进行测试管理工作。 ... [详细]
author-avatar
JAYBRYANT-24
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有