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这个服务为例。其他的也一样。
Ambari里如何删除某指定的服务(图文详解)_第1张图片

解决步骤

  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的日志而已)

  这里,我就以Ambari里的Ambari Metrics这个服务为例。其他的也一样。


   Steps:2. Stop Ambari Metrics

   注意: 若是这步,关不掉Ambari  Metrics没事,去步骤三吧!

  这里,我就以Ambari里的 Ambari Metrics这个服务 为例。其他的也一样。
        Ambari里如何删除某指定的服务(图文详解)_第2张图片
     Steps:3 . Kill all the ambari metrics processes
Ambari里如何删除某指定的服务(图文详解)_第3张图片
ambari-metrics-monitor status
ambari-metrics-collector status
Ambari里如何删除某指定的服务(图文详解)_第4张图片
ambari-metrics-monitor stop
ambari-metrics-collector stop
kill -9 26554 
kill -9 46277


Ambari里如何删除某指定的服务(图文详解)_第5张图片

Steps:停止服务

 

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里如何删除某指定的服务(图文详解)_第6张图片

     执行完成后, Ambari Metrics 就从 Ambari 的 Service 里面删掉了,但是  Ambari Metrics 的 package 还存在于机器。

[root@ambari02 ~]# rpm -qa | grep ambari_metrics
Ambari里如何删除某指定的服务(图文详解)_第7张图片

如果,需要彻底清除掉 Ambari Metrics的 package,则需要到各个 Agent 机器(我这里是ambari02)执行如下命令:

yum erase ***

   比如,你是删除storm服务,则就是yum erase strom*

  执行完后,这个 Ambari Metrics的Service 就被彻底的清除掉了!

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

  关于若是删除其他的服务,一样的步骤,把服务名改下就是了。很简单。





  这里,我就以Ambari里的 Ambari Metrics这个服务 为例。其他的也一样。

   Steps:2. Stop Ambari Metrics

   注意: 若是这步,关不掉Ambari  Metrics没事,去步骤三吧!

你可能感兴趣的:(大数据,ambari)