首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >0577-5.16.1-使用Cloudera Manager配置自定义csd目录异常

0577-5.16.1-使用Cloudera Manager配置自定义csd目录异常

作者头像
Fayson
发布2019-04-28 17:44:22
1.3K0
发布2019-04-28 17:44:22
举报
文章被收录于专栏:Hadoop实操Hadoop实操

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

Fayson的github: https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1

文档编写目的

自定义服务描述符(custom service descriptor,CSD)是Cloudera Manager用来描述某个产品的,比如Spark2,CDSW或者Kudu,包括Fayson在以前的文章中介绍过的自定义Livy的Parcel包,参考《0387-如何打包Livy和Zeppelin的Parcel包》。一个产品想集成到Cloudera Manager,必须具备csd文件,这样CM就可以支持该产品的配置,分发和监控。

csd文件默认放置在CM节点的/opt/cloudera/csd路径下,如果修改这个配置项,需要重启Cloudera Manager Server服务才能生效。本文主要描述修改该配置后导致CM服务起不来的异常,以及如何解决。

  • 测试环境

1.CDH5.16.1

2.Redhat7.4

3.集群已启用Kerberos

2

问题重现

1.通过CM页面进入“管理”->“设置”,搜索csd。

2.将默认的目录/opt/cloudera/csd改为/opt/cloudera,保存配置。

提示需要重启CM Server

3.重启CM Server

[root@ip-172-31-13-38 ~]# systemctl restart cloudera-scm-server

4.发现CM Server无法正常启动,查看日志发现有如下报错:

[root@ip-172-31-13-38 ~]# vim /var/log/cloudera-scm-server/cloudera-scm-server.log
2019-03-22 04:03:45,125 ERROR main:com.cloudera.csd.components.CsdLocalRepository: Failed to load CSD from /opt/cloudera/anaconda3, Error: java.io.FileNotFoundException: /opt/cloudera/anaconda3/pkgs/dbus-1.10.10-0/info/recipe/build.sh (Permission denied)
2019-03-22 04:03:45,126 WARN main:com.cloudera.csd.components.CsdLocalRepository: Skipping [/opt/cloudera/cm-agent]: { No descriptor found for csd [cm-agent] }
2019-03-22 04:03:45,128 WARN main:com.cloudera.csd.components.CsdLocalRepository: Skipping [/opt/cloudera/csd]: { No descriptor found for csd [csd] }
2019-03-22 04:03:45,138 WARN main:com.cloudera.csd.components.CsdLocalRepository: Skipping [/opt/cloudera/parcel-cache]: { No descriptor found for csd [parcel-cache] }

3

问题解决

1.登录MySQL,并进入到CM的Database,查询csd保存路径的配置信息。

[root@ip-172-31-13-38 ~]# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 19317
Server version: 5.5.60-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use cm;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [cm]> select * from CONFIGS where ATTR='csd_repo_path';

2.将VALUE更新到默认的值即/opt/cloudera/csd

MariaDB [cm]> update CONFIGS set VALUE='/opt/cloudera/csd' where ATTR='csd_repo_path';
MariaDB [cm]> select * from CONFIGS where ATTR='csd_repo_path';  

3.重启CM Server

[root@ip-172-31-13-38 ~]# systemctl restart cloudera-scm-server

4.重启成功,可以正常访问CM,问题解决。

4

总结

通过Cloudera Manager修改“自定义服务描述符”配置后,直接重启CM Server后会导致CM起不来,通过查看CM日志可以发现,CM想要加载csd所在目录的一些csd文件,但因为目录找不到这些文件导致报错。要想先解决CM启动的问题,可以通过修改CM数据库的CONFIGS表将VALUE还原回以前的默认值来实现。

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 MariaDB
腾讯云数据库 MariaDB(TencentDB for MariaDB) 让您轻松在云端部署、使用 MariaDB 数据库。MariaDB 是在 MySQL 版权被 Oracle 收购后,由 MySQL 创始人 Monty 创立,其版权授予了“MariaDB基金会(非营利性组织)”以保证 MariaDB 永远开源,良好的开源策略,是企业级应用的最优选择,主流开源社区系统/软件的数据库系统,均已默认配置 MariaDB。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档