某一天,ambari突然无法启动服务,报错如下
File "/usr/lib/python2.6/site-packages/resource_management/core/providers/accounts.py", line 93, in user
return pwd.getpwnam(self.resource.username)
TypeError: getpwnam() argument 1 must be string, not None
Error: Error: Unable to run the custom hook script ['/usr/bin/python2.6', '/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/hooks/before-ANY/scripts/hook.py', 'ANY', '/var/lib/ambari-agent/data/command-6759.json', '/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/hooks/before-ANY', '/var/lib/ambari-agent/data/structured-out-6759.json', 'INFO', '/var/lib/ambari-agent/tmp']
根据提示,发现python脚本传入的用户为空,查看了structured-out-*.json文件,发现user_list中,有一个是null,问题已确认是有服务没有设置用户名。
继续查看json,发现*-env里都是有用户的,只有hive没有用户。
解决方法一:
使用/var/lib/ambari-server/resources/scripts/configs.sh 脚本来添加hive用户,可以输入--help来查看需要添加的参数。
解决方法二:
在第一种方法设置了却无效的情况下可以采用,卸载hive,再安装
卸载命令:
curl -u admin:admin -H "X-Requested-By: ambari" -X DELETE http:/ambari:8080/api/v1/clusters/<clustersName>/services/HIVE
转载请注明出处: http://www.julyme.com/20170720/90.html
打赏一个呗~~(微信)
Julyme
感觉还行吧。
Julyme的IT技术分享