我已将Ranger Service(Ranger Admin Server,Ranger Usersync和Ranger KMS)添加到在Ubuntu 14.04服务器上运行的现有Ambari 2.3群集(4个节点)中。所有服务都在主节点上。但是,它安装不正确,现在在Main Ambari页面上可用服务的左侧列中显示“Install Failed”,并且我相信这是使Master节点失效的原因。我在Ambari Web UI上找不到可用于删除服务的任何选项。我遵循了this教程,但没有成功。每当我尝试使用以下命令删除整个服务时
curl -u admin:admin -X DELETE http://AMBARI_SERVER_HOST:8080/api/v1/clusters/c1/services/SERVICENAME
最终出现错误:“400” ...某事...
所以根据我们的系统,我的命令是:
curl -u admin:admin -X "X-Requested-By: ambari" DELETE http://localhost:8080/api/v1/clusters/cluster1/services/ranger
我也尝试过:
curl -u admin:admin -X "X-Requested-By: ambari" DELETE http://localhost:8080/api/v1/clusters/cluster1/services/rangeradmin
最后:
curl -u admin:admin -X "X-Requested-By: ambari" DELETE http://localhost:8080/api/v1/clusters/cluster1/services/RangerAdmin
我的想法是,只要这些服务没有正确安装,系统就看不到它们。也许还有其他问题。
但是,我仍然无法弄清楚实际的命令是什么,根本可以删除该服务吗?!我知道我可以通过“打开维护模式”作为选项来隐藏此问题,在这种情况下,主节点将正常运行,但是我想完全摆脱该服务,因为我不再需要它。我花了半天的时间试图删除它,但没有任何帮助。
最佳答案
排序。如果有人有兴趣从命令行删除Ambari服务(在我的情况下是RANGER),请运行以下命令:
// get the service
curl -u admin:admin -X GET http://HOST_NAME:8080/api/v1/clusters/CLUSTER_NAME/services/RANGER
// stop the service
curl -u admin:admin -H 'X-Requested-By: ambari' -X PUT -d '{"RequestInfo":{"context":"Stop Service"},"Body":{"ServiceInfo":{"state":"INSTALLED"}}}' http://HOST_NAME:8080/api/v1/clusters/CLUSTER_NAME/services/RANGER
// delete the service
curl -u admin:admin -H 'X-Requested-By: ambari' -X DELETE http://HOST_NAME:8080/api/v1/clusters/CLUSTER_NAME/services/RANGER
附言只需输入您的主机名(而不是HOST_NAME)和您的群集名(而是CLUSTER_NAME)
希望它可以帮助遇到相同问题的任何人。