在cloudera manager部署客户端配置的这个步骤中,老是报错:客户端配置 (id=1) 已使用1退出,而预期值为 0。java
1.首先咱们须要找到此处日志目录,并非/opt/cm-5.5.0/log。针对使用tar.gz包进行离线安装的目录,日志应该在:/opt/cm-5.5.0/run/cloudera-scm-agent/process/ccdeploy_spark-conf_etcsparkconf.cloudera.spark_-6842105649195360849/logs,由于我是在spark这一步进行部署客户端配置失败的时候出错的,因此就找的spark这一文件夹下的日志。若是是使用.bin包安装的,则有多是在/var/run/cloudera-scm-agent/process/目录下。找到日志文件以后,你应该能在日志文件中找到:export JAVA_HOME=/usr/java/default、JAVA_HOME=/usr/java/default、Error: JAVA_HOME is not set and could not be found等关键词,因此明确了是jdk没有装好,为何没装好,由于个人是使用tar.gz的jdk包安装的,没有往/usr/java中添加软连接,而这里默认是去/usr/java/default中找环境变量,才会报找不到java_home。安装jdk的方法,参考linux安装jdk的第6步,添加软连接到/usr/java/default。日志文件要仔细找,找对究竟是安装什么的时候出错了,有一次是在hadoop 分发conf文件夹里面,提示说没有perl命令。你也能够多找几个文件夹,就能找出到底哪一个地方报错了。linux
2.若是仍是不行,可是又找不到相关错误,就该考虑是否是内存不足致使无法将配置部署到客户端了。oop
3.编辑/etc/sudoers,在root后面添加以下内容:cloudera-scm ALL=(ALL) NOPASSWD:ALL。这一步没有验证,不知道有什么影响。spa
参考:deploy client configuration failed HDFS/YARN,这篇文章有点打不开,排版也很差,但却包含了最正确的方法。中文的资料搜索了很久都没有找到解决方法。.net