问题:

为cdh新增节点时,在分配datanode后,启动报错

Can't open /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/config.zip: 权限不够.
Can't open /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/proc.json: 权限不够.
Can't open /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/config.zip,Permission deny
Can't open /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/proc.zip,Permission deny 以为是权限问题,chmod -R 777 /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process,重启后生成新的文件夹,权限还是有问题,推测是启动过程中root用去创建了,接着hdfs去读这个文件,所以报错 解决: 当重启时,此处将进程挂起3分钟,手动用root用户将/youdir/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process目录改为777,然后,没有然后,只需等待,3分钟后,居然就成功了,成功了。
/youdir/opt/cloudera-manager/cm-5.11.2/lib64/cmf/service/common/cloudera-config.sh
# When created, the final resting place of config files is unknown,
# so it is marked as {{CMF_CONF_DIR}}. We know what this directory will
# be here in this script, so search-replace it.
replace_conf_dir() {
echo "CONF_DIR=$CONF_DIR"
echo "CMF_CONF_DIR=$CMF_CONF_DIR" ############fix the Can't open /youdir/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/config.zip, ###################
############fix the Can't open /youdir/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/proc.json ###################
sleep 3m; ############fix end############################# # Exclude files that we don't want to be modified. (OPSAPS-37023)
EXCLUDE_CMF_FILES=('cloudera-config.sh' 'httpfs.sh' 'hue.sh' 'impala.sh' 'sqoop.sh' 'supervisor.conf' '*.log' '*.keytab' '*jceks')
find $CONF_DIR -type f ! -path "$CONF_DIR/logs/*" $(printf "! -name %s " ${EXCLUDE_CMF_FILES[@]}) -exec perl -pi -e "s#{{CMF_CONF_DIR}}#$CONF_DIR#g" {} \;
}

分析:

在日志中

中发现在find命令后,报错,那就在find命令前将进程挂起,修改目录权限,待执行find时,权限已符合要求

+ EXCLUDE_CMF_FILES=('cloudera-config.sh' 'httpfs.sh' 'hue.sh' 'impala.sh' 'sqoop.sh' 'supervisor.conf' '*.log' '*.keytab' '*jceks')
++ printf '! -name %s ' cloudera-config.sh httpfs.sh hue.sh impala.sh sqoop.sh supervisor.conf '*.log' hdfs.keytab '*jceks'
+ find /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE -type f '!' -path '/software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/logs/*' '!' -name cloudera-config.sh '!' -name httpfs.sh '!' -name hue.sh '!' -name impala.sh '!' -name sqoop.sh '!' -name supervisor.conf '!' -name '*.log' '!' -name hdfs.keytab '!' -name '*jceks' -exec perl -pi -e 's#{{CMF_CONF_DIR}}#/software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE#g' '{}' ';'
Can't open /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/config.zip: 权限不够.
Can't open /software/opt/cloudera-manager/cm-5.11.2/run/cloudera-scm-agent/process/642-hdfs-DATANODE/proc.json: 权限不够.
+ make_scripts_executable
+ find /software/opt/cloudera-manager/cm-5.11./run/cloudera-scm-agent/process/-hdfs-DATANODE -regex '.*\.\(py\|sh\)$' -exec chmod u+x '{}' ';'
+ '[' DATANODE_MAX_LOCKED_MEMORY '!=' '' ']'
+ ulimit -l

参考文章:https://blog.csdn.net/u011120550/article/details/80598653

cdh启动datanode报错的更多相关文章

  1. maven 项目启动tomcat报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    maven项目启动tomcat报错: java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderLi ...

  2. 【转】Eclipse下启动tomcat报错:/bin/bootstrap.jar which is referenced by the classpath, does not exist.

    转载地址:http://blog.csdn.net/jnqqls/article/details/8946964 1.错误: 在Eclipse下启动tomcat的时候,报错为:Eclipse下启动to ...

  3. 学习中的错误——ubuntu 14.04 LTS 启动eclipse报错

    在ubuntu中启动eclipse报错:(Eclipse:15978): GLib-GIO-CRITICAL **: g_dbus_connection_get_unique_name: assert ...

  4. tomcat7 启动项目报错 java.lang.NoSuchMethodError: javax.servlet.ServletContext.getSessionCookieConfig()

    JDK版本:jdk1.8.0_77 Tomcat 版本:apache-tomcat-7.0.47 异常重现步骤: 1.完成项目部署 2.启动Tomcat 异常头部信息:java.lang.NoSuch ...

  5. Eclipse中启动tomcat报错:A child container failed during start

    我真的很崩溃,先是workspace崩了,费了好久重建的workspace,然后建立了一个小demo项目,tomcat中启动却报错,挑选其中比较重要的2条信息如下: A child container ...

  6. Ubuntu下安装了java但启动eclipse报错说没装java

    参考资料:http://blog.csdn.net/happyteafriends/article/details/8290950 一.问题 在Ubuntu下安装了java并在~/.bashrc配置了 ...

  7. VirtualBox启动虚拟机报错0x80004005

    Unable to load R3 module C:\Program Files\Oracle\VirtualBox/VBoxDD.DLL (VBoxDD): GetLastError=1790 ( ...

  8. Eclipse启动Tomcat报错,系统缺少本地apr库

    Eclipse启动Tomcat报错,系统缺少本地apr库. Tomcat中service.xml中的设置情况. 默认情况是HTTP协议的值:protocol="HTTP/1.1" ...

  9. 启动php-fpm报错:please specify user and group other than root

    安装好PHP之后启动报错: 启动php-fpm报错:please specify user and group other than root, pool 'default 修改 php-fpm.co ...

随机推荐

  1. linux子系统ubuntu16.04安装使用xrdp当远程桌面

    参考文献:https://icytown.com/windows/windows-subsystem-for-linux-gui-xubuntu/ https://jingyan.baidu.com/ ...

  2. 使用kingshard遇到的坑

    禁止用mysqldump 连接kingshard, 会导致表锁死 读取NULL值变为文本 通过kingshard连接 select出来的null值变为文本"NULL" kingsh ...

  3. Devexpress gridview cell增加控件

    1.根据上图次序,先添加三类控件类型: 2.根据上图次序设置columnEdit 3.点开ColumnEdit , 设置 check 和 uncheck的 value

  4. C语言的抽象与函数指针--思想(转)

    一.何为抽象? 从小到大,我们接触到的抽象,最熟悉的莫过于数学了.为什么这样说呢? 比如说,在小学的时候,老师总是拿了几个苹果来引诱我们:同学们,这里有几个苹果啊?于是我们流着口水一个个地数,一个苹果 ...

  5. django template模板 母板 include导入

    一,使用{% block name %}{% endblock %}定义一个模板,在模板页面中它的内容为空,在各页面用{% block name %}自己的标签内容{% endblock %}调用. ...

  6. Linux简单线程池实现(带源码)

    这里给个线程池的实现代码,里面带有个应用小例子,方便学习使用,代码 GCC 编译可用.参照代码看下面介绍的线程池原理跟容易接受,百度云下载链接: http://pan.baidu.com/s/1i3z ...

  7. python3-可变长度参数函数(*args 和 **kwargs)

    简述: *args:    可变长度元组参数    **kwargs: 可变长度字典参数 ------------------------------------------------------- ...

  8. ABBYY FineReader 14OCR解锁

    ABBYY FineReader 14是2017年新推的文字处理编辑软件,能够将图像扫描转换成文档处理.不论是在使用群体方面还是功能特性方面都是极好的. •确保扫描仪正确地连接到电脑,并将其打开.查阅 ...

  9. 洛谷P1040 加分二叉树(树形dp)

    加分二叉树 时间限制: 1 Sec  内存限制: 125 MB提交: 11  解决: 7 题目描述 设一个n个节点的二叉树tree的中序遍历为(l,2,3,...,n),其中数字1,2,3,...,n ...

  10. MySQL 错误集-汇总

    Q&A: MySQl报错之@@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_MODE = ON 导入的时候加入-f参数即可 原因分 ...