CDH 6.3启动失败,由于日志写入权限原因导致cloudera-scm-server.log未生成

CDH 6.3启动失败,CM之前都能正常启动,服务器重启后,启动出现异常,需要排查具体错误,查看日志,发现日志cloudera-scm-server.log也未生成,不好定位具体原因。于是查看cloudera-scm-server状态,执行systemctl status cloudera-scm-server命令,发现有报错信息,但是具体信息不明显,报错如下:

1月 12 19:06:08 node01 cm-server[270628]: Caused by: java.lang.NullPointerException
1月 12 19:06:08 node01 cm-server[270628]: at java.io.File.<init>(File.java:277)
1月 12 19:06:08 node01 cm-server[270628]: at com.cloudera.server.web.cmf.logs.LogUtil.getServerLogfile(LogUtil.java:31)
1月 12 19:06:08 node01 cm-server[270628]: at com.cloudera.server.cmf.log.components.ServerLogFetcherImpl.<init>(ServerLogFetcherImpl.java:77)

1.cloudera-scm-server.log日志文件路径
cloudera-scm-server.log日志文件一般在/var/log/cloudera-scm-server目录下,于是查看该目录问题,发现无日志文件,多次重启也无日志文件生成。

解决方法:
2.修改log4j.properties配置文件,指定cloudera-scm-server.log日志文件到其他路径(此方法未成功解决问题)
既然原目录无日志文件生成,于是想到修改CM的配置文件,指定日志文件到某个目录,因此找到配置文件进行修改。配置文件目录一般在/etc/cloudera-scm-server,如下图所示:
在这里插入图片描述
备份原文件,vim log4j.properties进行修改,修改cmf.log.dir为指定目录,如下图所示:
在这里插入图片描述
重启cm,到指定目录下查看日志,发现日志文件仍然未生成。

3.修改cm-server配置文件,指定cloudera-scm-server.log日志文件到其他路径(此方法成功解决问题)
由于修改log4j.properties仍然未解决问题,因此思考,日志文件配置可能不是log4j.properties指定,于是继续寻找其他配置文件进行修改,最终找到一个目录/opt/cloudera/cm/bin,发现在cm-server下也有日志文件路径配置,备份cm-server文件,修改日志配置选项,如下图所示:
在这里插入图片描述
修改CMF_LOG_DIR选项,指定日志路径,如下图所示:
在这里插入图片描述
在这里插入图片描述
重启cm,到/opt/cloudera/log下查看日志,发现此时日志正常生成。
在这里插入图片描述
于是查看日志内容,未发现异常,再次访问cm管理页面,也能正常使用。

4.授权文件写入权限(此方法成功解决问题)
由于修改cm-server配置文件成功解决问题,于是猜测/var/log目录无写入权限导致,因此给该目录授权,还原修改配置。重启cm,发现也能成功启动,因此确认cm无法启动原因是日志无写入权限导致。授权命令:

chmod -R 777 /var/log

5.相关大数据学习demo地址:
https://github.com/carteryh/big-data

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/314620.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python流程控制语句

目录 一、分支结构 &#xff08;一&#xff09;单分支语句 &#xff08;二&#xff09;双分支语句 &#xff08;三&#xff09;多分支语句 &#xff08;四&#xff09;嵌套的分支语句 二、循环结构 循环结构概述 &#xff08;一&#xff09;for循环 &#xff08;二&am…

最佳解决方案:如何在网络爬虫中解决验证码

Captcha&#xff08;全自动区分计算机和人类的公开图灵测试&#xff09;是广泛应用的安全措施&#xff0c;用于区分合法的人类用户和自动化机器人。它通过呈现复杂的挑战&#xff0c;包括视觉上扭曲的文本、复杂的图像或复杂的拼图等方式&#xff0c;要求用户成功解决这些挑战以…

vue3+vite+ts+pinia新建项目(略详细版)

1、新建项目 npm create vite@latest 2、安装依赖 yarn add vue-router yarn add -D @types/node vite-plugin-pages sass sass-loader 3、配置别名 //vite.config.ts import { defineConfig } from vite import path from node:path export default defineConfig({ plu…

【huggingface】【pytorch-image-models】timm框架中使用albumentations库数据增广

文章目录 一、前言二、实操2.1 声明库2.2 定义你的数据增广算子2.3 加入其中 一、前言 问题是这样的&#xff0c;在使用timm框架训练时&#xff0c;发现数据增广不够&#xff0c;想用Albumentations库的数据增广&#xff0c;怎么把后者嵌入到前者的训练中。 其实也是比较简单…

JVM(字节码文件详解)

JVM的组成 类加载器运行时数据区域执行引擎&#xff08;主要理解垃圾回收器&#xff0c;及时编译器&#xff09;本地方法 字节码文件的组成 在讲解字节码文件组成前&#xff0c;可以安装使用“jclasslib”工具或idea中“jclasslib”插件进行字节码文件查看 jclasslib的Github地…

写一个简单的Java的Gui文本输入窗口,JFrame的简单使用

JFrame是指一个计算机语言-java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。 Swing的三个基本构造块:标签、按钮和文本字段;但是需要个地方安放它们,并希望用户知道如何处理它们。JFrame 类就是解决这个问题的——它是一个容器…

计算机丢失mfc140.dll怎么办?解决mfc140.dll缺失的3种方法分享

计算机丢失mfc140.dll怎么办&#xff1f;在使用微软办公软件的时候&#xff0c;可能会弹出一个错误提示框说“找不到mfc140.dll&#xff0c;无法继续执行代码”。为了不影响工作效率&#xff0c;我们可能需要亲自动手尝试修复这一问题。以下是一些mfc140.dll缺失的3种方法相关介…

代码随想录算法训练营第17天 | 110.平衡二叉树 + 257. 二叉树的所有路径 + 404.左叶子之和

今日内容 110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之和 110.平衡二叉树 - Easy 题目链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 给定一个二叉树&#xff0c;判断它是否是高度平衡的二叉树。 本题中&#xff0c;一棵高度平衡二叉树定义为&#xff1…

PMP报考条件?

一、PMP报考条件很简单&#xff1a; 年龄满足22周岁有官方授权的培训机构给的 35个PDU&#xff08;学时&#xff09; 就能报名。 是不是相当于没有条件&#xff0c;题主说的三年内累计60PDU&#xff0c;是续证时才需要的&#xff0c;网上说的4500小时、7500小时项目管理经验&…

500mA High Voltage Linear Charger with OVP/OCP

一、General Description YHM2810 is a highly integrated, single-cell Li-ion battery charger with system power path management for space-limited portable applications. The full charger function features Trickle-charge, constant current fast charge and const…

2024.1.11 关于 Jedis 库操作 Redis 基本演示

目录 引言 通用命令 SET & GET EXISTS & DEL KEYS EXPIRE & TTL TYPE String 类型命令 MGET & MSET GETRANGE & SETRANGE APPEND INCR & DECR List 类型命令 LPUSH & LRANG LPOP & LPOP BLPOP & BRPOP LLEN Set 类型命…

时间序列数据库选型: influxdb; netdiscover列出docker实例们的ip

influxdb influxdb: 有收费版本、有开源版本 influxdb 安装、启动(docker) docker run -itd --name influxdb-dev -p 8086:8086 influxdb #influxdb的web客户端(端口8003)被去掉了 #8006是web-service端口#docker exec -it influxdb-dev bashinfluxdb 自带web界面 从后面的…

【设计模式-04】Factory工厂模式

简要描述 简单工厂静态工厂工厂方法 FactoryMethod 产品维度扩展 抽象工厂 产品一族进行扩展Spring IOC 一、工厂的定义 任何可以产生对象的方法或类&#xff0c;都可以称之为工厂单例也是一种工厂不可咬文嚼字&#xff0c;死扣概念为什么有了new之后&#xff0c;还要有工厂&am…

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(七)

08.什么是模块化&#xff1f; CommonJS 标准 09.ECMAScript 标准 - 默认导出和导入 10.ECMAScript 标准 - 命名导出和导入 11.包的概念 实操&#xff1a; server.js utils/lib/index.js utils/package.json 12.npm - 软件包管理器 13.npm - 安装所有依赖 从别处&#xff08;网…

RTSP网络视频协议

一.RTSP网络视频协议介绍 RTSP是类似HTTP的应用层协议&#xff0c;一个典型的流媒体框架网络体系可参考下图&#xff0c;其中rtsp主要用于控制命令&#xff0c;rtcp主要用于视频质量的反馈&#xff0c;rtp用于视频、音频流从传输。 1、RTSP&#xff08;Real Time Streaming P…

利用gulp工具对常规web项目进行压缩打包

前言 对于一个常规的web项目&#xff0c;如下项目目录 |- imgs | - img1.png | - img2.png |- js | - user.js | - utils.js |- css | - index.css | - user.css |- html | - user.html |- index.html可以使用各种构建工具&#xff08;如webpack、gulp、grunt等&#xff09;来…

IBM X3750 M4服务器主板故障全国协助处理

2023年12月31这天中午看到有位网络朋友加我&#xff0c;通过后该用户反馈说是有一台IBM System x3750 M4服务器有故障&#xff0c;现在无法开机。希望我们工程师协助他检测 分析 定位该故障问题原因和处理方案。 如上图所示&#xff1a;经过工程师与用户排查&#xff0c;发现该…

instanceof、对象类型转化、static关键字

instanceof 与 对象类型转换 instanceof是判断一个对象是否与一个类有关系的关键字 先看引用类型&#xff0c;再看实际类型 *例子&#xff1a;obj instanceof A 先看obj的类型是否与A有关联&#xff0c;无关联则报错&#xff0c;有关联则判断obj的实际类型 因为obj的实际类…

SwiftUI之深入解析布局协议

一、什么是布局协议&#xff1f; 采用布局协议类型的任务&#xff0c;是告诉 SwiftUI 如何放置一组视图&#xff0c;需要多少空间。这类型常常被作为视图容器&#xff0c;虽然布局协议是 2022 年新推出的&#xff08;至少公开来说&#xff09;&#xff0c;但是我们在第一天使用…

【Web】token机制

&#x1f34e;个人博客&#xff1a;个人主页 &#x1f3c6;个人专栏&#xff1a;Web ⛳️ 功不唐捐&#xff0c;玉汝于成 目录 前言 正文 机制基本&#xff1a; 优势&#xff1a; 结语 我的其他博客 前言 在当今互联网时代&#xff0c;安全、高效的用户身份验证和资源授…