对cdh搭建过程错误总结及解决方法


1、cdh安装是parcel包下载完毕卡在分配环节

查看agent.log一下错误;

MainThread agent        ERROR    Caught unexpected exception in main loop.
Traceback (most recent call last):
  File "/opt/cm-5.8.3/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.8.3-py2.7.egg/cmf/agent.py", line 710, in __issue_heartbeat
    self._init_after_first_heartbeat_response(resp_data)
  File "/opt/cm-5.8.3/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.8.3-py2.7.egg/cmf/agent.py", line 947, in _init_after_first_heartbeat_response
    self.client_configs.load()
  File "/opt/cm-5.8.3/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.8.3-py2.7.egg/cmf/client_configs.py", line 682, in load
    new_deployed.update(self._lookup_alternatives(fname))
  File "/opt/cm-5.8.3/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.8.3-py2.7.egg/cmf/client_configs.py", line 432, in _lookup_alternatives
    return self._parse_alternatives(alt_name, out)
  File "/opt/cm-5.8.3/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.8.3-py2.7.egg/cmf/client_configs.py", line 444, in _parse_alternatives
    path, _, _, priority_str = line.rstrip().split(" ")
ValueError: too many values to unpack
解决方案是修改 /usr/lib64/cmf/agent/build/env/lib/python2.7/site-packages/cmf-5.10.0-py2.7.egg/cmf/client_configs.py 这个脚本的 第444行
for line in output.splitlines():
      if line.startswith("/"):
        if len(line.rstrip().split(" "))<=4:
          path, _, _, priority_str = line.rstrip().split(" ")

          # Ignore the alternative if it's not managed by CM.
          if CM_MAGIC_PREFIX not in os.path.basename(path):
            continue

          try:
            priority = int(priority_str)
          except ValueError:
            THROTTLED_LOG.info("Failed to parse %s: %s", name, line)

          key = ClientConfigKey(name, path)
          value = ClientConfigValue(priority, self._read_generation(path))
          ret[key] = value

        else:
          pass
    return ret

  其实就是添加 if len(line.rstrip().split(" "))<=4:  和  else:  pass;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM