天天看点

ambari-如何转移HISTORYSERVER

集群在一台服务器上,有一台机器变得极其不稳定,怎么改配置都没办法使用时我的做法是直接将其从集群删除,再从服务器中将其删除最后重新部署克隆好的虚拟机。但是将这台host从ambari-server端删除时,它要求这台机器不运行任何service的server,当然在ambari的web页面中,部分server右边的下拉菜单中除了start和stop是直接有move选项的,可以通过图形化界面将server迁出至其他机器,但是我遇到一个比较坑的MAPREDUCE2的HISTORYSERVER就没有move选项,但是不迁走又无法正常删除。

通过google后,找到下面几条命令可以直接删除HISTORYSERVER

Delete Mapreduce History Server if server died

curl -u admin:admin -H "X-Requested-By: ambari" -X PUT -d '{"RequestInfo":{"context":"Stop Service"},"Body":{"ServiceInfo":{"state":"INSTALLED"}}}' http://<ambari-server-name>:8080/api/v1/clusters/<cluster-name>/services/MAPREDUCE2

curl -u admin:admin -H "X-Requested-By: ambari" -X PUT -d '{"RequestInfo":{"context":"Stop Component"},"Body":{"HostRoles":{"state":"INSTALLED"}}}' http://<ambari-server-name>:8080/api/v1/clusters/<cluster-name>/hosts/<old-host-name>/host_components/HISTORYSERVER

curl -u admin:admin -H "X-Requested-By: ambari" -X DELETE http://<ambari-server-name>:8080/api/v1/clusters/<cluster-name>/services/MAPREDUCE2/components/HISTORYSERVER

注:<ambari-server-name>是装有ambari-server的机器名。<cluster-name>是你在ambari网页中给集群起的名字。<old-host-name>是你想删除服务的那台机器名称。

本文转自 yntmdr 51CTO博客,原文链接:http://blog.51cto.com/yntmdr/1775020,如需转载请自行联系原作者

继续阅读