天天看點

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,如需轉載請自行聯系原作者

繼續閱讀