Ambari里如何刪除某指定的服務(圖文詳解)


 

 不多說,直接干貨!

 

   Ambari 借鑒了很多成熟分布式軟件的 API 設計。Rest API 就是一個很好地體現。通過 Ambari 的 Rest API,可以在腳本中通過 curl 維護整個集群。並且,我們可以用 Rest API 實現一些無法在 Ambari GUI 上面做的操作。

  目前 Ambari 不支持在 GUI 上面卸載已安裝的 Service。所以當一個 Service 不再需要的時候,用戶沒法刪除掉該 Service。幸運的是 Ambari 提供了 DELETE 的 Rest API,我們可以通過該 API 來刪除 Ambari 中 Service。不過這里需要注意,這個方法只是從 Ambari Service 中刪除了 Service。這樣一來,Ambari 的 GUI 界面中不再顯示這個 Service。但是 Service 本身還安裝在 Agent 所在的機器。如果用戶需要徹底的清除掉這個 Service,仍需要手工的到每個機器卸載(例如,在每個機器執行 yum erase)。

 

 

 

 

  這里,我就以Ambari里的Ambari Metrics這個服務為例。其他的也一樣。

 

 

 

 

解決步驟

  Steps:1. tail -f /var/log/ambari-metrics-collector/ambari-metrics-collector.log  (這一也可以跳過,說白了就是查看對應的ambari-metrics-collector的日志而已)

         tail -f /var/log/ambari-metrics-collector/ambari-metrics-monitor.log  (這一也可以跳過,說白了就是查看對應的ambari-metrics-monitor的日志而已)

 

 

   Steps:2. Stop Ambari Metrics

   注意: 若是這步,關不掉Ambari  Metrics沒事,去步驟三吧!

 

 

  Steps:3. Kill all the ambari metrics processes

 

ambari-metrics-monitor status
ambari-metrics-collector status

 

 

ambari-metrics-monitor stop
ambari-metrics-collector stop
kill -9 26554 
kill -9 46277

 

 

 

 

 

 

Steps:4 停止服務

 

curl -u admin:admin -H "X-Requested-By: ambari" -X PUT -d '{"RequestInfo": {"context":"Stop Service"},"Body":{"ServiceInfo":{"state":"INSTALLED"}}}' http://192.168.80.144:8080/api/v1/clusters/hdpCluster/services/AMBARI_METRICS

 

注意:

192.168.80.144是我這台機器ambari01(即搭建了ambari)的ip,你注意改為你自己的!

hdpCluster是我集群的名字,你注意改為你自己的!

AMBARI_METRICS這里是停止該服務並要從ambari里刪除它。

 

 

 

Steps:5 刪除服務(快速立即執行)

curl -u admin:admin -H "X-Requested-By: ambari" -X DELETE http://192.168.80.144:8080/api/v1/clusters/hdpCluster/services/AMBARI_METRICS

 

注意:

192.168.80.144是我這台機器ambari01(即搭建了ambari)的ip,你注意改為你自己的!

hdpCluster是我集群的名字,你注意改為你自己的!

AMBARI_METRICS這里是停止該服務並要從ambari里刪除它。

 

 

 

 

 

 

  執行完成后,Ambari Metrics就從 Ambari 的 Service 里面刪掉了,但是 Ambari Metrics的 package 還存在於機器。

 

 

[root@ambari02 ~]# rpm -qa | grep ambari_metrics

 

 

 

  如果,需要徹底清除掉 Ambari Metrics的 package,則需要到各個 Agent 機器(我這里是ambari02)執行如下命令:

yum erase ***

   比如,你是刪除storm服務,則就是yum erase strom*

 

 

  執行完后,這個 Ambari Metrics的Service 就被徹底的清除掉了!

  OK,成功!Ambari里如何刪除某指定的服務Ambari Metrics.

  關於若是刪除其他的服務,一樣的步驟,把服務名改下就是了。很簡單。

 

 

 

 

 

 

 

參考優秀博客

https://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari2/

   Ambari——大數據平台的搭建利器之進階篇

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM