You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by jo...@apache.org on 2014/11/13 05:21:31 UTC

[2/3] ambari git commit: AMBARI-8300 - Alerts: Remove Nagios Remnants From Ambari Server Code (jonathanhurley)

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
index eb6237d..8a05331 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/ServiceResourceProvider.java
@@ -356,8 +356,9 @@ public class ServiceResourceProvider extends AbstractControllerResourceProvider
         (String) properties.get(SERVICE_SERVICE_STATE_PROPERTY_ID));
     
     Object o = properties.get(SERVICE_MAINTENANCE_STATE_PROPERTY_ID);
-    if (null != o)
+    if (null != o) {
       svcRequest.setMaintenanceState(o.toString());
+    }
 
     return svcRequest;
   }
@@ -727,14 +728,6 @@ public class ServiceResourceProvider extends AbstractControllerResourceProvider
       throw new IllegalArgumentException("Cannot handle different desired state"
           + " changes for a set of services at the same time");
     }
-    
-    if (maintenanceCluster != null) {
-      try {
-        maintenanceStateHelper.createRequests(controller, requestProperties, maintenanceCluster);
-      } catch (Exception e) {
-        LOG.warn("Could not send maintenance state to Nagios (" + e.getMessage() + ")");
-      }
-    }
 
     Cluster cluster = clusters.getCluster(clusterNames.iterator().next());
 
@@ -914,8 +907,9 @@ public class ServiceResourceProvider extends AbstractControllerResourceProvider
       }
     }
     
-    for (Service service : removable)
+    for (Service service : removable) {
       service.getCluster().deleteService(service.getName());
+    }
     
     return null;
   }
@@ -1232,8 +1226,9 @@ public class ServiceResourceProvider extends AbstractControllerResourceProvider
             State state = State.UNKNOWN;
             for (ServiceComponentHostResponse schr : hostComponentResponses) {
               State schState = getHostComponentState(schr);
-              if (schState.ordinal() < state.ordinal())
+              if (schState.ordinal() < state.ordinal()) {
                 state = schState;
+              }
             }
             return state;
           }

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/Stack.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/Stack.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/Stack.java
index cd22340..243e282 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/Stack.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/Stack.java
@@ -18,6 +18,13 @@
 
 package org.apache.ambari.server.controller.internal;
 
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
 import org.apache.ambari.server.AmbariException;
 import org.apache.ambari.server.controller.AmbariManagementController;
 import org.apache.ambari.server.controller.StackConfigurationRequest;
@@ -30,13 +37,6 @@ import org.apache.ambari.server.controller.StackServiceResponse;
 import org.apache.ambari.server.state.AutoDeployInfo;
 import org.apache.ambari.server.state.DependencyInfo;
 
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
 /**
  * Encapsulates stack information.
  */
@@ -388,7 +388,7 @@ class Stack {
         dependencies.put(componentName, componentDependencies);
       }
     }
-    this.serviceComponents.put(service, componentSet);
+    serviceComponents.put(service, componentSet);
   }
 
   /**
@@ -430,20 +430,6 @@ class Stack {
    */
   //todo: This information should be specified in the stack definition.
   void registerConditionalDependencies() {
-    Collection<DependencyInfo> nagiosDependencies = getDependenciesForComponent("NAGIOS_SERVER");
-    for (DependencyInfo dependency : nagiosDependencies) {
-      if (dependency.getComponentName().equals("HCAT")) {
-        dependencyConditionalServiceMap.put(dependency, "HIVE");
-      } else if (dependency.getComponentName().equals("OOZIE_CLIENT")) {
-        dependencyConditionalServiceMap.put(dependency, "OOZIE");
-      } else if (dependency.getComponentName().equals("YARN_CLIENT")) {
-        dependencyConditionalServiceMap.put(dependency, "YARN");
-      } else if (dependency.getComponentName().equals("TEZ_CLIENT")) {
-        dependencyConditionalServiceMap.put(dependency, "TEZ");
-      } else if (dependency.getComponentName().equals("MAPREDUCE2_CLIENT")) {
-        dependencyConditionalServiceMap.put(dependency, "MAPREDUCE2");
-      }
-    }
     dbDependencyInfo.put("MYSQL_SERVER", "global/hive_database");
   }
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosAlert.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosAlert.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosAlert.java
deleted file mode 100644
index 1d58430..0000000
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosAlert.java
+++ /dev/null
@@ -1,209 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.ambari.server.controller.nagios;
-
-import org.apache.ambari.server.state.Alert;
-
-/**
- * Represents a Nagios alert as represented by the JSON returning from the HTTP
- * call.
- */
-public class NagiosAlert {
-  private String service_description = null;
-  private String host_name = null;
-//  private String current_attempt = null;
-  private String current_state = null;
-  private String plugin_output = null;
-  private String last_hard_state_change = null;
-  private String last_hard_state = null;
-  private String last_time_ok = null;
-  private String last_time_warning = null;
-  private String last_time_unknown = null;
-  private String last_time_critical = null;
-//  private String is_flapping = null;
-//  private String last_check = null;
-  private String service_type = null;
-  private String long_plugin_output = null;
-
-  
-  /**
-   * Use a cluster alert as the basis for this alert.  This bridge can be
-   * removed when Nagios is not longer the Source For Alerts.
-   */
-  public NagiosAlert(Alert alert) {
-    service_type = alert.getService();
-    host_name = alert.getHost();
-    switch (alert.getState()) {
-    case CRITICAL:
-      current_state = "2";
-      break;
-    case OK:
-      current_state = "0";
-      break;
-    case WARNING:
-      current_state = "1";
-      break;
-    default:
-      current_state = "3";
-      break;
-    }
-    
-    service_description = alert.getLabel();
-    plugin_output = alert.getText();
-    
-  }
-  
-  public NagiosAlert() {
-  }
-
-  /**
-   * @return the description
-   */
-  public String getDescription() {
-    return service_description;
-  }
-  
-  /**
-   * @return the host
-   */
-  public String getHost() {
-    return host_name;
-  }
-  
-  /**
-   * @return the service
-   */
-  public String getService() {
-    return service_type;
-  }
-  
-  /**
-   * @return the status
-   */
-  public int getStatus() {
-    int i = 3;
-    try {
-      i = Integer.parseInt(current_state);
-    } catch (Exception e) {
-      // don't ruin someone's day
-    }
-    return i;
-  }
-  
-  
-  /**
-   * @return the last status
-   */
-  public int getLastStatus() {
-    int i = 3;
-    try {
-      i = Integer.parseInt(last_hard_state);
-    } catch (Exception e) {
-      // don't ruin someone's day      
-    }
-    
-    return i;
-  }  
-  
-  /**
-   * @return the output
-   */
-  public String getOutput() {
-    return plugin_output;
-  }
-  
-  /**
-   * @param status the status
-   * @return a string indicating what the status means
-   */
-  public static String getStatusString(int status) {
-    switch (status) {
-      case 0:
-        return "OK";
-      case 1:
-        return "WARNING";
-      case 2:
-        return "CRITICAL";
-      default:
-        return "UNKNOWN";
-    }
-  }
-  
-  
-  /**
-   * @return the status timestamp
-   */
-  public long getStatusTime() {
-    long l = -1L;
-    
-    try {
-      switch (getStatus()) {
-        case 0:
-          l = getLong (last_time_ok);
-          break;
-        case 1:
-          l = getLong(last_time_warning);
-          break;
-        case 2:
-          l = getLong(last_time_critical);
-          break;
-        default:
-          l = getLong(last_time_unknown);
-          break;
-      }
-    } catch (Exception e) {
-      // don't ruin someone's day
-    }
-    
-    return l;
-  }
-
-  /**
-   * @return the last status timestamp
-   */
-  public long getLastStatusTime() {
-    return getLong(last_hard_state_change);
-  }
-  
-  private long getLong(String str) {
-    try {
-      return Long.parseLong(str);
-    } catch (Exception e) {
-      return 0L;
-    }
-  }
-  
-  /**
-   * @return the long output, if any
-   */
-  public String getLongPluginOutput() {
-    return long_plugin_output;
-  }
-  
-  @Override
-  public String toString() {
-    StringBuilder sb = new StringBuilder();
-    sb.append('{');
-    sb.append(this.service_type).append(',');
-    sb.append(this.host_name).append(',');
-    sb.append(this.current_state);
-    sb.append('}');
-    return sb.toString();
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosPropertyProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosPropertyProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosPropertyProvider.java
index 5b93db8..5a8c9bf 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosPropertyProvider.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/nagios/NagiosPropertyProvider.java
@@ -17,420 +17,41 @@
  */
 package org.apache.ambari.server.controller.nagios;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Comparator;
 import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
 import java.util.Set;
-import java.util.concurrent.Callable;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.CopyOnWriteArraySet;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Future;
-import java.util.concurrent.ScheduledExecutorService;
-import java.util.concurrent.ThreadFactory;
-import java.util.concurrent.TimeUnit;
-import java.util.regex.Pattern;
 
-import org.apache.ambari.server.AmbariException;
-import org.apache.ambari.server.configuration.ComponentSSLConfiguration;
-import org.apache.ambari.server.configuration.Configuration;
 import org.apache.ambari.server.controller.internal.BaseProvider;
 import org.apache.ambari.server.controller.spi.Predicate;
 import org.apache.ambari.server.controller.spi.PropertyProvider;
 import org.apache.ambari.server.controller.spi.Request;
 import org.apache.ambari.server.controller.spi.Resource;
 import org.apache.ambari.server.controller.spi.SystemException;
-import org.apache.ambari.server.controller.utilities.StreamProvider;
-import org.apache.ambari.server.state.Cluster;
-import org.apache.ambari.server.state.Clusters;
-import org.apache.ambari.server.state.Service;
-import org.apache.ambari.server.state.ServiceComponentHost;
-import org.apache.commons.io.IOUtils;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.google.gson.Gson;
-import com.google.inject.Inject;
-import com.google.inject.Injector;
 
 /**
- * Used to populate resources that have Nagios alertable properties.
+ * Deprecated. To be removed for Ambari 2.0.0 after the web client has removed
+ * references to {@code legacy_alerts}.
  */
 @Deprecated
 public class NagiosPropertyProvider extends BaseProvider implements PropertyProvider {
-  
-  private static final Logger LOG = LoggerFactory.getLogger(NagiosPropertyProvider.class);
+
   private static final Set<String> NAGIOS_PROPERTY_IDS = new HashSet<String>();
-  private static final String NAGIOS_TEMPLATE = "http://%s/ambarinagios/nagios/nagios_alerts.php?q1=alerts&alert_type=all";
-  
+
   private static final String ALERT_DETAIL_PROPERTY_ID = "legacy_alerts/detail";
   private static final String ALERT_SUMMARY_PROPERTY_ID = "legacy_alerts/summary";
-  private static final String ALERT_SUMMARY_OK_PROPERTY_ID = "legacy_alerts/summary/OK";
-  private static final String ALERT_SUMMARY_WARNING_PROPERTY_ID = "legacy_alerts/summary/WARNING";
-  private static final String ALERT_SUMMARY_CRITICAL_PROPERTY_ID = "legacy_alerts/summary/CRITICAL";
-  private static final String ALERT_SUMMARY_PASSIVE_PROPERTY_ID = "legacy_alerts/summary/PASSIVE";
-  private static final String PASSIVE_TOKEN = "AMBARIPASSIVE=";
-  
-  private static final List<String> DEFAULT_IGNORABLE_FOR_SERVICES = Collections.unmodifiableList(new ArrayList<String>(
-      Arrays.asList("NodeManager health", "NodeManager process", "TaskTracker process",
-      "RegionServer process", "DataNode process", "DataNode space",
-      "ZooKeeper Server process", "Supervisors process")));
-  
-  private static List<String> IGNORABLE_FOR_SERVICES;
-  
-  private static final List<String> IGNORABLE_FOR_HOSTS = new ArrayList<String>(
-    Collections.singletonList("percent"));
-
-  private static final Pattern COMMA_PATTERN = Pattern.compile(",");
 
-  // holds alerts for clusters.  clusterName is the key
-  private static final Map<String, List<NagiosAlert>> CLUSTER_ALERTS =
-      new ConcurrentHashMap<String, List<NagiosAlert>>();
-  private static final ScheduledExecutorService scheduler;
-  
-  private static final Set<String> CLUSTER_NAMES = new CopyOnWriteArraySet<String>();
-  
   static {
     NAGIOS_PROPERTY_IDS.add(ALERT_SUMMARY_PROPERTY_ID);
     NAGIOS_PROPERTY_IDS.add(ALERT_DETAIL_PROPERTY_ID);
-    IGNORABLE_FOR_SERVICES = new ArrayList<String>(DEFAULT_IGNORABLE_FOR_SERVICES);
-
-    scheduler = Executors.newSingleThreadScheduledExecutor(new ThreadFactory() {
-      @Override
-      public Thread newThread(Runnable r) {
-        return new Thread(r, "NagiosPropertyProvider Request Reset Thread");
-      }
-    });
   }
 
-  @Inject
-  private static Clusters clusters;
-  private Resource.Type resourceType;
-  private String clusterNameProperty;
-  private String resourceTypeProperty;
-  private StreamProvider urlStreamProvider;
-  private boolean waitOnFirstCall = false;
-  
-  @Inject
-  public static void init(Injector injector) {
-    clusters = injector.getInstance(Clusters.class);
-    Configuration config = injector.getInstance(Configuration.class);
-    
-    IGNORABLE_FOR_SERVICES = new ArrayList<String>(DEFAULT_IGNORABLE_FOR_SERVICES);
-    String ignores = config.getProperty(Configuration.NAGIOS_IGNORE_FOR_SERVICES_KEY);
-    if (null != ignores) {
-      Collections.addAll(IGNORABLE_FOR_SERVICES, COMMA_PATTERN.split(ignores));
-    }
-
-    ignores = config.getProperty(Configuration.NAGIOS_IGNORE_FOR_HOSTS_KEY);
-    if (null != ignores) {
-      Collections.addAll(IGNORABLE_FOR_HOSTS, COMMA_PATTERN.split(ignores));
-    }
-    
-  }  
-  
-  public NagiosPropertyProvider(Resource.Type type,
-      StreamProvider streamProvider,
-      String clusterPropertyId,
-      String typeMatchPropertyId) {
-    
+  @Deprecated
+  public NagiosPropertyProvider() {
     super(NAGIOS_PROPERTY_IDS);
-    
-    resourceType = type;
-    clusterNameProperty = clusterPropertyId;
-    resourceTypeProperty = typeMatchPropertyId;
-    urlStreamProvider = streamProvider;
-    
-    scheduler.scheduleAtFixedRate(new Runnable() {
-      @Override
-      public void run() {
-        for (String clusterName : CLUSTER_NAMES) {
-          List<NagiosAlert> alerts = new LinkedList<NagiosAlert>();
-          try {
-            alerts = populateAlerts(clusterName);
-          } catch (Exception e) {
-            LOG.error("Could not load Nagios alerts: " + e.getMessage());
-          }
-          CLUSTER_ALERTS.put(clusterName, alerts);
-        }
-      }
-    }, 0L, 30L, TimeUnit.SECONDS);    
   }
 
-  
-  /**
-   * Use only for testing to remove all cached alerts.
-   */
-  public void forceReset() {
-    CLUSTER_NAMES.clear();
-    CLUSTER_ALERTS.clear();
-    waitOnFirstCall = true;
-  }
-  
   @Override
   public Set<Resource> populateResources(Set<Resource> resources,
       Request request, Predicate predicate) throws SystemException {
-
-    Set<String> propertyIds = getRequestPropertyIds(request, predicate);
-    
-    for (Resource res : resources) {
-      String matchValue = res.getPropertyValue(resourceTypeProperty).toString();
-      
-      if (null == matchValue)
-        continue;
-
-      Object clusterPropertyValue = res.getPropertyValue(clusterNameProperty);
-      if (null == clusterPropertyValue)
-        continue;
-
-      final String clusterName = clusterPropertyValue.toString();
-      if (null == clusterName)
-        continue;
-      
-      if (!CLUSTER_ALERTS.containsKey(clusterName)) {
-        // prevent endless looping for the first-time collection
-        CLUSTER_ALERTS.put(clusterName, Collections.<NagiosAlert>emptyList());
-        
-        Future<List<NagiosAlert>> f = scheduler.submit(new Callable<List<NagiosAlert>>() {
-          @Override
-          public List<NagiosAlert> call() throws Exception {
-            return populateAlerts(clusterName);
-          }
-        });
-        
-        if (waitOnFirstCall) {
-          try {
-            CLUSTER_ALERTS.put(clusterName, f.get());
-          } catch (Exception e) {
-            LOG.error("Could not load metrics - Executor exception" +
-             " (" + e.getMessage() + ")");
-          }
-        }
-      }
-      
-      CLUSTER_NAMES.add(clusterName);
-      
-      List<NagiosAlert> alerts = CLUSTER_ALERTS.get(clusterName);
-      if (null != alerts) {
-        updateAlerts (res, matchValue, alerts, propertyIds);
-      }
-
-    }
-    
     return resources;
   }
-  
-  /**
-   * Aggregates and sets nagios properties on a resource.
-   * @param res the resource
-   * @param matchValue the value to match
-   * @param allAlerts all alerts from Nagios
-   * @param requestedIds the requested ids for the resource
-   */
-  private void updateAlerts(Resource res, String matchValue, List<NagiosAlert> allAlerts,
-      Set<String> requestedIds) {
-    if (null == allAlerts || 0 == allAlerts.size())
-      return;
-    
-    int ok = 0;
-    int warning = 0;
-    int critical = 0;
-    int passive = 0;
-    
-    List<Map<String, Object>> alerts = new ArrayList<Map<String, Object>>();
-
-    Set<String> processedHosts = new HashSet<String>();
-    
-    for (NagiosAlert alert : allAlerts) {
-      boolean match = false;
-
-      switch (resourceType.getInternalType()) {
-        case Service:
-          match = alert.getService().equals(matchValue);
-          if (match && null != alert.getDescription() &&
-              IGNORABLE_FOR_SERVICES.contains(alert.getDescription())) {
-            match = false;
-          }          
-          break;
-        case Host:
-          match = alert.getHost().equals(matchValue);
-          if (match && null != alert.getDescription()) {
-            String desc = alert.getDescription();
-            Iterator<String> it = IGNORABLE_FOR_HOSTS.iterator();
-            while (it.hasNext() && match) {
-              if (-1 != desc.toLowerCase().indexOf(it.next()))
-                match = false;
-            }
-          }
-          break;
-        case Cluster:
-          if (!processedHosts.contains(alert.getHost())) {
-            match = true;
-            Iterator<String> it = IGNORABLE_FOR_HOSTS.iterator();
-            String desc = alert.getDescription();
-            while (it.hasNext() && match) {
-              if (-1 != desc.toLowerCase().indexOf(it.next()))
-                match = false;
-            }
-          }
-          break;
-        default:
-          break;
-      }
-
-      if (match) {
-
-        processedHosts.add(alert.getHost());
-
-        // status = the return code from the plugin that controls
-        // whether an alert is sent out (0 when using wrapper)
-        // actual_status = the actual process result
-        
-        Map<String, Object> map = new LinkedHashMap<String, Object>();
-        
-        map.put("description", alert.getDescription());
-        map.put("host_name", alert.getHost());
-        map.put("last_status", NagiosAlert.getStatusString(alert.getLastStatus()));
-        map.put("last_status_time", Long.valueOf(alert.getLastStatusTime()));
-        map.put("service_name", alert.getService());
-        map.put("status", NagiosAlert.getStatusString(alert.getStatus()));
-        map.put("status_time", Long.valueOf(alert.getStatusTime()));
-        map.put("output", alert.getOutput());
-        map.put("actual_status", NagiosAlert.getStatusString(alert.getStatus()));
-        
-        String longOut = alert.getLongPluginOutput();
-        int index = (null == longOut) ? -1 : longOut.indexOf(PASSIVE_TOKEN);
-        if (-1 != index) {
-          int actualStatus = 3;
-          try {
-            int len = PASSIVE_TOKEN.length();
-            
-            actualStatus = Integer.parseInt(longOut.substring(
-                index + len, index + len+1));
-          } catch (Exception e) {
-            // do nothing
-          }
-          
-          map.put("status", "PASSIVE");
-          map.put("actual_status", NagiosAlert.getStatusString(actualStatus));
-          passive++;
-        } else {
-          switch (alert.getStatus()) {
-            case 0:
-              ok++;
-              break;
-            case 1:
-              warning++;
-              break;
-            case 2:
-              critical++;
-              break;
-            case 3:
-              passive++;
-              break;
-            default:
-              break;
-          }
-        }
-        
-        alerts.add(map);
-      }
-    }
-    
-    setResourceProperty(res, ALERT_SUMMARY_OK_PROPERTY_ID, Integer.valueOf(ok), requestedIds);
-    setResourceProperty(res, ALERT_SUMMARY_WARNING_PROPERTY_ID, Integer.valueOf(warning), requestedIds);
-    setResourceProperty(res, ALERT_SUMMARY_CRITICAL_PROPERTY_ID, Integer.valueOf(critical), requestedIds);
-    setResourceProperty(res, ALERT_SUMMARY_PASSIVE_PROPERTY_ID, Integer.valueOf(passive), requestedIds);
-    
-    if (!alerts.isEmpty() &&
-      (resourceType.getInternalType() != Resource.InternalType.Cluster)) {
-
-      setResourceProperty(res, ALERT_DETAIL_PROPERTY_ID, alerts, requestedIds);
-    }
-  }
-
-  /**
-   * Contacts Nagios and loads/parses the response into Nagios alert instances.
-   * @param clusterName the cluster name
-   * @return a list of nagios alerts
-   * @throws SystemException
-   */
-  private List<NagiosAlert> populateAlerts(String clusterName) throws Exception {
-    
-    String nagiosHost = null;
-    
-    List<NagiosAlert> results = new ArrayList<NagiosAlert>();
-    
-    try {
-      Cluster cluster = clusters.getCluster(clusterName);
-      Service service = cluster.getService("NAGIOS");
-      Map<String, ServiceComponentHost> hosts = service.getServiceComponent("NAGIOS_SERVER").getServiceComponentHosts();
-      
-      if (!hosts.isEmpty())
-        nagiosHost = hosts.keySet().iterator().next();
-      
-    } catch (AmbariException e) {
-      LOG.debug("Cannot find a nagios service.  Skipping alerts.");
-    }
-    
-    if (null == nagiosHost) {
-      return results;
-    } else {
-      String template = NAGIOS_TEMPLATE;
-
-      if (ComponentSSLConfiguration.instance().isNagiosSSL())
-        template = template.replace("http", "https");
-      
-      String url = String.format(template, nagiosHost);  
-
-      InputStream in = null;
-
-      try {
-        in = urlStreamProvider.readFrom(url);
-        
-        NagiosAlerts alerts = new Gson().fromJson(IOUtils.toString(in, "UTF-8"), NagiosAlerts.class);
-
-        results.addAll(alerts.alerts);
-        
-        Collections.sort(results, new Comparator<NagiosAlert>() {
-          @Override
-          public int compare(NagiosAlert o1, NagiosAlert o2) {
-            if (o2.getStatus() != o1.getStatus())
-              return o2.getStatus()-o1.getStatus();
-            else {
-              return (int)(o2.getLastStatusTime()-o1.getLastStatusTime());
-            }
-          }
-        });
-        
-        return results;
-      } catch (Exception e) {
-        throw new SystemException("Error reading HTTP response for cluster " + clusterName +
-            ", nagios=" + url + " (" + e.getMessage() + ")", e);
-      } finally {
-        if (in != null) {
-          try {
-            in.close();
-          }
-          catch (IOException ioe) {
-            LOG.error("Error closing HTTP response stream " + url);
-          }
-        }
-      }      
-    }
-  }
-  
-  private static class NagiosAlerts {
-    private List<NagiosAlert> alerts;
-  }
-
 }

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/state/Service.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/Service.java b/ambari-server/src/main/java/org/apache/ambari/server/state/Service.java
index 63d8760..4a18c69 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/Service.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/Service.java
@@ -18,12 +18,13 @@
 
 package org.apache.ambari.server.state;
 
-import com.google.inject.persist.Transactional;
+import java.util.Map;
+import java.util.concurrent.locks.ReadWriteLock;
+
 import org.apache.ambari.server.AmbariException;
 import org.apache.ambari.server.controller.ServiceResponse;
 
-import java.util.Map;
-import java.util.concurrent.locks.ReadWriteLock;
+import com.google.inject.persist.Transactional;
 
 public interface Service {
 
@@ -108,7 +109,6 @@ public interface Service {
     OOZIE,
     WEBHCAT,
     SQOOP,
-    NAGIOS,
     GANGLIA,
     ZOOKEEPER,
     PIG,

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/state/alert/AlertDefinitionHash.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/state/alert/AlertDefinitionHash.java b/ambari-server/src/main/java/org/apache/ambari/server/state/alert/AlertDefinitionHash.java
index 5d78201..da3a572 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/state/alert/AlertDefinitionHash.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/state/alert/AlertDefinitionHash.java
@@ -87,7 +87,7 @@ public class AlertDefinitionHash {
    * All clusters.
    */
   @Inject
-  private Clusters m_clusters;
+  private Provider<Clusters> m_clusters;
 
   @Inject
   private ActionQueue m_actionQueue;
@@ -157,7 +157,7 @@ public class AlertDefinitionHash {
    * @throws AmbariException
    */
   public Map<String, String> getHashes(String hostName) throws AmbariException {
-    Set<Cluster> clusters = m_clusters.getClustersForHost(hostName);
+    Set<Cluster> clusters = m_clusters.get().getClustersForHost(hostName);
     if (null == clusters || clusters.size() == 0) {
       return Collections.emptyMap();
     }
@@ -321,7 +321,7 @@ public class AlertDefinitionHash {
     Cluster cluster = null;
     String clusterName = null;
     try {
-      cluster = m_clusters.getClusterById(clusterId);
+      cluster = m_clusters.get().getClusterById(clusterId);
       if (null != cluster) {
         clusterName = cluster.getClusterName();
       }
@@ -380,7 +380,7 @@ public class AlertDefinitionHash {
     Set<String> affectedHosts = new HashSet<String>();
 
     try {
-      hosts = m_clusters.getHostsForCluster(clusterName);
+      hosts = m_clusters.get().getHostsForCluster(clusterName);
     } catch (AmbariException ambariException) {
       LOG.error("Unable to lookup hosts for cluster named {}", clusterName,
           ambariException);
@@ -460,7 +460,7 @@ public class AlertDefinitionHash {
     String clusterName = null;
 
     try {
-      Cluster cluster = m_clusters.getClusterById(clusterId);
+      Cluster cluster = m_clusters.get().getClusterById(clusterId);
       clusterName = cluster.getClusterName();
     } catch (AmbariException ae) {
       LOG.error("Unable to lookup cluster for alert definition commands", ae);
@@ -503,7 +503,7 @@ public class AlertDefinitionHash {
           hostName, hash, definitions);
 
       try {
-        Cluster cluster = m_clusters.getCluster(clusterName);
+        Cluster cluster = m_clusters.get().getCluster(clusterName);
         command.addConfigs(m_configHelper.get(), cluster);
       } catch (AmbariException ae) {
         LOG.warn("Unable to add configurations to alert definition command", ae);
@@ -594,7 +594,7 @@ public class AlertDefinitionHash {
     Set<AlertDefinitionEntity> definitions = new HashSet<AlertDefinitionEntity>();
 
     try {
-      Cluster cluster = m_clusters.getCluster(clusterName);
+      Cluster cluster = m_clusters.get().getCluster(clusterName);
       if (null == cluster) {
         LOG.warn("Unable to get alert definitions for the missing cluster {}",
             clusterName);

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
index 4339f60..5cd67f5 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/utils/StageUtils.java
@@ -120,7 +120,6 @@ public class StageUtils {
     componentToClusterInfoKeyMap.put("WEBHCAT_SERVER", "webhcat_server_host");
     componentToClusterInfoKeyMap.put("MYSQL_SERVER", "hive_mysql_host");
     componentToClusterInfoKeyMap.put("DASHBOARD", "dashboard_host");
-    componentToClusterInfoKeyMap.put("NAGIOS_SERVER", "nagios_server_host");
     componentToClusterInfoKeyMap.put("GANGLIA_SERVER", "ganglia_server_host");
     componentToClusterInfoKeyMap.put("DATANODE", "slave_hosts");
     componentToClusterInfoKeyMap.put("TASKTRACKER", "mapred_tt_hosts");

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/resources/key_properties.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/key_properties.json b/ambari-server/src/main/resources/key_properties.json
index c1a6636..14e132d 100644
--- a/ambari-server/src/main/resources/key_properties.json
+++ b/ambari-server/src/main/resources/key_properties.json
@@ -145,12 +145,6 @@
     "HostComponent": "HostComponentProcess/component_name",
     "HostComponentProcess": "HostComponentProcess/name"
   },
-  "Alert": {
-    "Cluster": "Alert/cluster_name",
-    "Service": "Alert/service_name",
-    "Host": "Alert/host_name",
-    "Alert": "Alert/id"
-  },
   "ClientConfig": {
     "Cluster": "ServiceComponentInfo/cluster_name",
     "Service": "ServiceComponentInfo/service_name",

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/main/resources/properties.json
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/properties.json b/ambari-server/src/main/resources/properties.json
index ad59922..189b70c 100644
--- a/ambari-server/src/main/resources/properties.json
+++ b/ambari-server/src/main/resources/properties.json
@@ -421,22 +421,6 @@
       "HostComponentProcess/name",
       "HostComponentProcess/status"
     ],
-    "Alert": [
-      "Alert/cluster_name",
-      "Alert/id",
-      "Alert/name",
-      "Alert/latest_timestamp",
-      "Alert/maintenance_state",
-      "Alert/original_timestamp",
-      "Alert/instance",
-      "Alert/label",
-      "Alert/state",
-      "Alert/text",
-      "Alert/component_name",
-      "Alert/host_name",
-      "Alert/service_name",
-      "Alert/scope"
-    ],
     "ClientConfig":[
         "ServiceComponentInfo/service_name",
         "ServiceComponentInfo/component_name",

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
index e1e25e0..2d898e5 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java
@@ -3963,8 +3963,6 @@ public class AmbariManagementControllerTest {
     assertEquals(1, response.getTasks().size());
     taskStatus = response.getTasks().get(0);
     Assert.assertEquals("h3", taskStatus.getHostName());
-
-    Assert.assertTrue(null != cmd.getPassiveInfo());
   }
 
   @Test
@@ -4066,9 +4064,6 @@ public class AmbariManagementControllerTest {
     Assert.assertEquals("CLIENT", roleParams.get(ExecutionCommand.KeyNames.COMPONENT_CATEGORY));
     Assert.assertTrue(hrc.getExecutionCommandWrapper().getExecutionCommand().getCommandParams().containsKey("hdfs_client"));
     Assert.assertEquals("abc", hrc.getExecutionCommandWrapper().getExecutionCommand().getCommandParams().get("hdfs_client"));
-
-    // verify passive info is not passed when not NAGIOS
-    Assert.assertNull(hrc.getExecutionCommandWrapper().getExecutionCommand().getPassiveInfo());
   }
 
   @SuppressWarnings("serial")
@@ -7611,8 +7606,7 @@ public class AmbariManagementControllerTest {
       roleToIndex.put(Role.SQOOP, 20);
       roleToIndex.put(Role.GANGLIA_SERVER, 21);
       roleToIndex.put(Role.GANGLIA_MONITOR, 22);
-      roleToIndex.put(Role.NAGIOS_SERVER, 23);
-      roleToIndex.put(Role.AMBARI_SERVER_ACTION, 24);
+      roleToIndex.put(Role.AMBARI_SERVER_ACTION, 23);
     }
   }
 
@@ -9534,21 +9528,21 @@ public class AmbariManagementControllerTest {
       null);
 
 
-    ServiceComponentHost nagiosSch = null;
+    ServiceComponentHost monitoringServiceComponentHost = null;
     for (ServiceComponentHost sch : cluster.getServiceComponentHosts(host1)) {
       if (sch.getServiceComponentName().equals(fakeServer)) {
-        nagiosSch = sch;
+        monitoringServiceComponentHost = sch;
       }
     }
-    assertFalse(nagiosSch.isRestartRequired());
+
+    assertFalse(monitoringServiceComponentHost.isRestartRequired());
 
     createServiceComponent(clusterName, hdfsService, hdfsClient,
       State.INIT);
 
     createServiceComponentHost(clusterName, hdfsService, hdfsClient, host1, null);
 
-    assertTrue(nagiosSch.isRestartRequired());
-
+    assertTrue(monitoringServiceComponentHost.isRestartRequired());
   }
 
   @Test

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/MaintenanceStateHelperTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/MaintenanceStateHelperTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/MaintenanceStateHelperTest.java
index 9b4ce29..d9c5039 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/MaintenanceStateHelperTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/MaintenanceStateHelperTest.java
@@ -17,45 +17,39 @@
  */
 package org.apache.ambari.server.controller;
 
-import com.google.inject.Injector;
+import static org.easymock.EasyMock.anyInt;
+import static org.easymock.EasyMock.anyObject;
+import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createMockBuilder;
+import static org.easymock.EasyMock.createNiceMock;
+import static org.easymock.EasyMock.createStrictMock;
+import static org.easymock.EasyMock.eq;
+import static org.easymock.EasyMock.expect;
+import static org.easymock.EasyMock.replay;
+import static org.easymock.EasyMock.verify;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Set;
+
 import org.apache.ambari.server.AmbariException;
 import org.apache.ambari.server.controller.internal.RequestOperationLevel;
 import org.apache.ambari.server.controller.internal.RequestResourceFilter;
 import org.apache.ambari.server.controller.spi.Resource;
+import org.apache.ambari.server.controller.spi.Resource.Type;
 import org.apache.ambari.server.state.Cluster;
 import org.apache.ambari.server.state.Clusters;
 import org.apache.ambari.server.state.Host;
 import org.apache.ambari.server.state.MaintenanceState;
 import org.apache.ambari.server.state.Service;
-import org.apache.ambari.server.state.ServiceComponent;
 import org.apache.ambari.server.state.ServiceComponentHost;
-import org.apache.ambari.server.controller.spi.Resource.Type;
-import org.easymock.Capture;
 import org.easymock.EasyMock;
 import org.junit.Assert;
 import org.junit.Test;
 
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import static org.easymock.EasyMock.anyInt;
-import static org.easymock.EasyMock.anyObject;
-import static org.easymock.EasyMock.capture;
-import static org.easymock.EasyMock.createMock;
-import static org.easymock.EasyMock.createMockBuilder;
-import static org.easymock.EasyMock.createNiceMock;
-import static org.easymock.EasyMock.createStrictMock;
-import static org.easymock.EasyMock.eq;
-import static org.easymock.EasyMock.expect;
-import static org.easymock.EasyMock.replay;
-import static org.easymock.EasyMock.verify;
+import com.google.inject.Injector;
 
 /**
  * Tests the {@link MaintenanceStateHelper} class
@@ -63,187 +57,6 @@ import static org.easymock.EasyMock.verify;
 public class MaintenanceStateHelperTest {
 
   @Test
-  public void testService() throws Exception {
-    testService(MaintenanceState.ON);
-    testService(MaintenanceState.OFF);
-  }
-  
-  @Test
-  public void testHost() throws Exception {
-    testHost(MaintenanceState.ON);
-    testHost(MaintenanceState.OFF);
-  }
-  
-  @Test
-  public void testHostComponent() throws Exception {
-    testHostComponent(MaintenanceState.ON);
-    testHostComponent(MaintenanceState.OFF);
-  }
-  
-  private void testHostComponent(MaintenanceState state) throws Exception {
-    AmbariManagementController amc = createMock(AmbariManagementController.class);
-    Capture<ExecuteActionRequest> earCapture = new Capture<ExecuteActionRequest>();
-    Capture<Map<String, String>> rpCapture = new Capture<Map<String, String>>();
-    expect(amc.createAction(capture(earCapture), capture(rpCapture))).andReturn(null);
-    Injector injector = createStrictMock(Injector.class);
-    MaintenanceStateHelper maintenanceStateHelper = createMockBuilder
-      (MaintenanceStateHelper.class).withConstructor(injector).createMock();
-    
-    Clusters clusters = createMock(Clusters.class);
-    Cluster cluster = createMock(Cluster.class);
-    expect(amc.getClusters()).andReturn(clusters).anyTimes();
-    expect(clusters.getClusterById(1L)).andReturn(cluster);
-    expect(cluster.getClusterName()).andReturn("c1").anyTimes();
-    
-    ServiceComponentHost sch = createMock(ServiceComponentHost.class);
-    expect(sch.getClusterName()).andReturn("c1");
-    expect(sch.getClusterId()).andReturn(1L);
-    expect(sch.getMaintenanceState()).andReturn(state);
-    expect(sch.getServiceName()).andReturn("HDFS");
-    expect(sch.getServiceComponentName()).andReturn("NAMENODE").anyTimes();
-    expect(sch.getHostName()).andReturn("h1");
-    
-    replay(amc, clusters, cluster, sch, maintenanceStateHelper);
-    
-    Map<String, String> map = new HashMap<String, String>();
-    map.put("context", "abc");
-    maintenanceStateHelper.createRequests(amc, map, sch.getClusterName());
-    
-    ExecuteActionRequest ear = earCapture.getValue();
-    map = rpCapture.getValue();
-    
-    Assert.assertEquals("nagios_update_ignore", ear.getActionName());
-    Assert.assertEquals(null, ear.getCommandName());
-    Assert.assertEquals(1, ear.getResourceFilters().size());
-    RequestResourceFilter resourceFilter = ear.getResourceFilters().get(0);
-
-    Assert.assertEquals("NAGIOS", resourceFilter.getServiceName());
-    Assert.assertEquals("NAGIOS_SERVER", resourceFilter.getComponentName());
-    Assert.assertEquals("c1", ear.getClusterName());
-    Assert.assertTrue(map.containsKey("context"));
-    Assert.assertEquals(ear.getOperationLevel().getLevel(), Type.HostComponent);
-  }
-
-  private void testHost(MaintenanceState state) throws Exception {
-    AmbariManagementController amc = createMock(AmbariManagementController.class);
-    Capture<ExecuteActionRequest> earCapture = new Capture<ExecuteActionRequest>();
-    Capture<Map<String, String>> rpCapture = new Capture<Map<String, String>>();
-    expect(amc.createAction(capture(earCapture), capture(rpCapture))).andReturn(null);
-    Injector injector = createStrictMock(Injector.class);
-    MaintenanceStateHelper maintenanceStateHelper = createMockBuilder
-      (MaintenanceStateHelper.class).withConstructor(injector).createMock();
-
-    Clusters clusters = createMock(Clusters.class);
-    Cluster cluster = createMock(Cluster.class);
-    Service service = createMock(Service.class);
-    
-    ServiceComponent sc1 = createMock(ServiceComponent.class);
-    ServiceComponent sc2 = createMock(ServiceComponent.class);
-    expect(sc1.isClientComponent()).andReturn(Boolean.FALSE).anyTimes();
-    expect(sc2.isClientComponent()).andReturn(Boolean.TRUE).anyTimes();
-
-    ServiceComponentHost sch1 = createMock(ServiceComponentHost.class);
-    Map<String, ServiceComponentHost> schMap = new HashMap<String, ServiceComponentHost>();
-    schMap.put("h1", sch1);
-    expect(sch1.getHostName()).andReturn("h1");
-    expect(sch1.getServiceName()).andReturn("HDFS").anyTimes();
-    expect(sch1.getServiceComponentName()).andReturn("NAMENODE").anyTimes();
-    
-    List<ServiceComponentHost> schList = new ArrayList<ServiceComponentHost>(schMap.values());
-    
-    expect(amc.getClusters()).andReturn(clusters).anyTimes();
-    expect(clusters.getClusterById(1L)).andReturn(cluster);
-    expect(cluster.getClusterName()).andReturn("c1").anyTimes();
-    expect(cluster.getService("HDFS")).andReturn(service).anyTimes();
-    expect(cluster.getClusterId()).andReturn(Long.valueOf(1L));
-    expect(cluster.getServiceComponentHosts("h1")).andReturn(schList);
-    expect(service.getServiceComponent("NAMENODE")).andReturn(sc1);
-    
-    Host host = createMock(Host.class);
-    expect(host.getHostName()).andReturn("h1").anyTimes();
-    expect(host.getMaintenanceState(1L)).andReturn(state);
-    
-    replay(amc, clusters, cluster, service, sch1, host, maintenanceStateHelper);
-    
-    Map<String, String> map = new HashMap<String, String>();
-    map.put("context", "abc");
-    maintenanceStateHelper.createRequests(amc, map, cluster.getClusterName());
-    
-    ExecuteActionRequest ear = earCapture.getValue();
-    rpCapture.getValue();
-    
-    Assert.assertEquals("nagios_update_ignore", ear.getActionName());
-    Assert.assertEquals(null, ear.getCommandName());
-    Assert.assertEquals(1, ear.getResourceFilters().size());
-    RequestResourceFilter resourceFilter = ear.getResourceFilters().get(0);
-    Assert.assertEquals("NAGIOS", resourceFilter.getServiceName());
-    Assert.assertEquals("NAGIOS_SERVER", resourceFilter.getComponentName());
-    Assert.assertEquals("c1", ear.getClusterName());
-    Assert.assertTrue(map.containsKey("context"));
-    Assert.assertEquals(ear.getOperationLevel().getLevel(), Type.HostComponent);
-  }
-  
-  private void testService(MaintenanceState state) throws Exception {
-    AmbariManagementController amc = createMock(AmbariManagementController.class);
-    Capture<ExecuteActionRequest> earCapture = new Capture<ExecuteActionRequest>();
-    Capture<Map<String, String>> rpCapture = new Capture<Map<String, String>>();
-    expect(amc.createAction(capture(earCapture), capture(rpCapture))).andReturn(null);
-    Injector injector = createStrictMock(Injector.class);
-    MaintenanceStateHelper maintenanceStateHelper = createMockBuilder
-      (MaintenanceStateHelper.class).withConstructor(injector).createMock();
-    
-    Clusters clusters = createMock(Clusters.class);
-    Cluster cluster = createMock(Cluster.class);
-    Service service = createMock(Service.class);
-    
-    ServiceComponent sc1 = createMock(ServiceComponent.class);
-    ServiceComponent sc2 = createMock(ServiceComponent.class);
-    expect(sc1.isClientComponent()).andReturn(Boolean.FALSE).anyTimes();
-    expect(sc2.isClientComponent()).andReturn(Boolean.TRUE).anyTimes();
-    
-    ServiceComponentHost sch1 = createMock(ServiceComponentHost.class);
-    Map<String, ServiceComponentHost> schMap = new HashMap<String, ServiceComponentHost>();
-    schMap.put("h1", sch1);
-    expect(sch1.getHostName()).andReturn("h1");
-    expect(sch1.getServiceName()).andReturn("HDFS");
-    expect(sch1.getServiceComponentName()).andReturn("NAMENODE");
-    
-    expect(sc1.getServiceComponentHosts()).andReturn(schMap);
-    
-    Map<String, ServiceComponent> scMap = new HashMap<String, ServiceComponent>();
-    scMap.put("NAMENODE", sc1);
-    scMap.put("HDFS_CLIENT", sc2);
-    
-    expect(amc.getClusters()).andReturn(clusters).anyTimes();
-    expect(clusters.getClusterById(1L)).andReturn(cluster);
-    expect(cluster.getClusterName()).andReturn("c1");
-    expect(cluster.getClusterId()).andReturn(1L);
-    expect(service.getCluster()).andReturn(cluster);
-    expect(service.getServiceComponents()).andReturn(scMap);
-    expect(service.getMaintenanceState()).andReturn(state);
-    expect(service.getName()).andReturn("HDFS");
-    
-    replay(amc, clusters, cluster, service, sc1, sc2, sch1, maintenanceStateHelper);
-    
-    Map<String, String> map = new HashMap<String, String>();
-    map.put("context", "abc");
-    maintenanceStateHelper.createRequests(amc, map, "c1");
-    
-    ExecuteActionRequest ear = earCapture.getValue();
-    map = rpCapture.getValue();
-    
-    Assert.assertEquals("nagios_update_ignore", ear.getActionName());
-    Assert.assertEquals(null, ear.getCommandName());
-    Assert.assertEquals(1, ear.getResourceFilters().size());
-    RequestResourceFilter resourceFilter = ear.getResourceFilters().get(0);
-    Assert.assertEquals("NAGIOS", resourceFilter.getServiceName());
-    Assert.assertEquals("NAGIOS_SERVER", resourceFilter.getComponentName());
-    Assert.assertEquals("c1", ear.getClusterName());
-    Assert.assertTrue(map.containsKey("context"));
-    Assert.assertEquals(ear.getOperationLevel().getLevel(), Type.HostComponent);
-  }
-
-  @Test
   public void testisOperationAllowed() throws Exception {
     // Tests that isOperationAllowed() falls
     // back to guessing req op level if operation level is not specified
@@ -540,34 +353,6 @@ public class MaintenanceStateHelperTest {
     Assert.assertTrue(ignored.contains("host3"));
   }
 
-  @Test
-  public void testcreateRequests() throws AmbariException {
-    Injector injector = createStrictMock(Injector.class);
-    MaintenanceStateHelper maintenanceStateHelper =
-            createMockBuilder(MaintenanceStateHelper.class)
-                    .withConstructor(injector)
-                    .createNiceMock();
-    replay(maintenanceStateHelper);
-
-    RequestStatusResponse rsrMock = EasyMock.createMock(RequestStatusResponse.class);
-    AmbariManagementController amcMock = EasyMock.createMock(AmbariManagementController.class);
-
-    Capture<Map<String, String>> rpCapture = new Capture<Map<String, String>>();
-    Capture<ExecuteActionRequest> actReqCapture = new Capture<ExecuteActionRequest>();
-    expect(amcMock.createAction(capture(actReqCapture), capture(rpCapture))).andReturn(rsrMock);
-    replay(amcMock, rsrMock);
-
-    Map<String, String> requestProperties = new HashMap<String, String>();
-    requestProperties.put("context", "some.request.description");
-
-    maintenanceStateHelper.createRequests(amcMock, requestProperties, "dummy_cluster");
-
-    verify(amcMock);
-
-    // Check that new request name is substituted
-    Assert.assertEquals(rpCapture.getValue().get("context"), MaintenanceStateHelper.UPDATE_NAGIOS_REQUEST_NAME);
-  }
-
   private static void injectField(MaintenanceStateHelper maintenanceStateHelper, Clusters clusters)
           throws NoSuchFieldException, IllegalAccessException {
     Class<?> maintenanceHelperClass = MaintenanceStateHelper.class;

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertDefinitionResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertDefinitionResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertDefinitionResourceProviderTest.java
index b7e8ced..c1567dc 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertDefinitionResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertDefinitionResourceProviderTest.java
@@ -92,7 +92,6 @@ public class AlertDefinitionResourceProviderTest {
     m_injector = Guice.createInjector(Modules.override(
         new InMemoryDefaultTestModule()).with(new MockModule()));
 
-    AlertDefinitionResourceProvider.init(m_injector);
     m_injector.injectMembers(m_factory);
   }
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertGroupResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertGroupResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertGroupResourceProviderTest.java
index 3d9f331..1c85aeb 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertGroupResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertGroupResourceProviderTest.java
@@ -108,10 +108,11 @@ public class AlertGroupResourceProviderTest {
     m_clusters = createMock(Clusters.class);
     m_cluster = createMock(Cluster.class);
 
+    // create an injector which will inject the mocks
     m_injector = Guice.createInjector(Modules.override(
         new InMemoryDefaultTestModule()).with(new MockModule()));
 
-    AlertGroupResourceProvider.init(m_injector);
+    assertNotNull(m_injector);
 
     expect(m_amc.getClusters()).andReturn(m_clusters).atLeastOnce();
     expect(m_clusters.getCluster((String) anyObject())).andReturn(m_cluster).atLeastOnce();

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertHistoryResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertHistoryResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertHistoryResourceProviderTest.java
index 49caffc..0367dd3 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertHistoryResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertHistoryResourceProviderTest.java
@@ -66,10 +66,11 @@ public class AlertHistoryResourceProviderTest {
   public void before() {
     m_dao = createStrictMock(AlertsDAO.class);
 
+    // create an injector which will inject the mocks
     m_injector = Guice.createInjector(Modules.override(
         new InMemoryDefaultTestModule()).with(new MockModule()));
 
-    AlertHistoryResourceProvider.init(m_injector);
+    Assert.assertNotNull(m_injector);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertNoticeResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertNoticeResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertNoticeResourceProviderTest.java
index 22c30bc..3322da6 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertNoticeResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertNoticeResourceProviderTest.java
@@ -72,10 +72,11 @@ public class AlertNoticeResourceProviderTest {
   public void before() {
     m_dao = createStrictMock(AlertDispatchDAO.class);
 
+    // create an injector which will inject the mocks
     m_injector = Guice.createInjector(Modules.override(
         new InMemoryDefaultTestModule()).with(new MockModule()));
 
-    AlertNoticeResourceProvider.init(m_injector);
+    Assert.assertNotNull(m_injector);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
index eef05f6..c1e7576 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertResourceProviderTest.java
@@ -22,6 +22,7 @@ import static org.apache.ambari.server.configuration.Configuration.JDBC_IN_MEMRO
 import static org.easymock.EasyMock.capture;
 import static org.easymock.EasyMock.captureLong;
 import static org.easymock.EasyMock.createMock;
+import static org.easymock.EasyMock.createStrictMock;
 import static org.easymock.EasyMock.expect;
 import static org.easymock.EasyMock.replay;
 import static org.easymock.EasyMock.verify;
@@ -50,6 +51,7 @@ import org.apache.ambari.server.controller.utilities.PredicateBuilder;
 import org.apache.ambari.server.controller.utilities.PropertyHelper;
 import org.apache.ambari.server.orm.DBAccessor;
 import org.apache.ambari.server.orm.DBAccessorImpl;
+import org.apache.ambari.server.orm.InMemoryDefaultTestModule;
 import org.apache.ambari.server.orm.dao.AlertsDAO;
 import org.apache.ambari.server.orm.entities.AlertCurrentEntity;
 import org.apache.ambari.server.orm.entities.AlertDefinitionEntity;
@@ -67,6 +69,7 @@ import com.google.inject.Binder;
 import com.google.inject.Guice;
 import com.google.inject.Injector;
 import com.google.inject.Module;
+import com.google.inject.util.Modules;
 
 /**
  * Test the AlertResourceProvider class
@@ -82,13 +85,16 @@ public class AlertResourceProviderTest {
   private static final String ALERT_VALUE_SERVICE = "service";
 
   private AlertsDAO m_dao;
-//  private Injector m_injector;
+  private Injector m_injector;
   private AmbariManagementController m_amc;
 
   @Before
   @SuppressWarnings("boxing")
   public void before() throws Exception {
-    Injector m_injector = Guice.createInjector(new MockModule());
+    m_dao = createStrictMock(AlertsDAO.class);
+
+    m_injector = Guice.createInjector(Modules.override(
+        new InMemoryDefaultTestModule()).with(new MockModule()));
 
     m_amc = m_injector.getInstance(AmbariManagementController.class);
 
@@ -100,10 +106,6 @@ public class AlertResourceProviderTest {
     expect(cluster.getClusterId()).andReturn(Long.valueOf(1L));
 
     replay(m_amc, clusters, cluster);
-
-    m_dao = m_injector.getInstance(AlertsDAO.class);
-
-    AlertResourceProvider.init(m_injector);
   }
 
 
@@ -119,7 +121,7 @@ public class AlertResourceProviderTest {
 
     Request request = PropertyHelper.getReadRequest(
         AlertResourceProvider.ALERT_ID,
-        AlertResourceProvider.ALERT_NAME,
+        AlertResourceProvider.ALERT_DEFINITION_NAME,
         AlertResourceProvider.ALERT_LABEL);
 
     Predicate predicate = new PredicateBuilder().property(
@@ -148,7 +150,7 @@ public class AlertResourceProviderTest {
 
     Request request = PropertyHelper.getReadRequest(
         AlertResourceProvider.ALERT_ID,
-        AlertResourceProvider.ALERT_NAME,
+        AlertResourceProvider.ALERT_DEFINITION_NAME,
         AlertResourceProvider.ALERT_LABEL);
 
     Predicate predicate = new PredicateBuilder().property(
@@ -179,7 +181,7 @@ public class AlertResourceProviderTest {
 
     Request request = PropertyHelper.getReadRequest(
         AlertResourceProvider.ALERT_ID,
-        AlertResourceProvider.ALERT_NAME,
+        AlertResourceProvider.ALERT_DEFINITION_NAME,
         AlertResourceProvider.ALERT_LABEL);
 
     Predicate predicate = new PredicateBuilder().property(
@@ -212,7 +214,7 @@ public class AlertResourceProviderTest {
     replay(m_dao);
 
     Request request = PropertyHelper.getReadRequest(
-        AlertResourceProvider.ALERT_ID, AlertResourceProvider.ALERT_NAME,
+        AlertResourceProvider.ALERT_ID, AlertResourceProvider.ALERT_DEFINITION_NAME,
         AlertResourceProvider.ALERT_LABEL, AlertResourceProvider.ALERT_STATE,
         AlertResourceProvider.ALERT_ORIGINAL_TIMESTAMP);
 
@@ -268,7 +270,7 @@ public class AlertResourceProviderTest {
     replay(m_dao);
 
     Request request = PropertyHelper.getReadRequest(
-        AlertResourceProvider.ALERT_ID, AlertResourceProvider.ALERT_NAME,
+        AlertResourceProvider.ALERT_ID, AlertResourceProvider.ALERT_DEFINITION_NAME,
         AlertResourceProvider.ALERT_LABEL, AlertResourceProvider.ALERT_STATE,
         AlertResourceProvider.ALERT_ORIGINAL_TIMESTAMP);
 
@@ -302,10 +304,7 @@ public class AlertResourceProviderTest {
   }
 
   private AlertResourceProvider createProvider() {
-    return new AlertResourceProvider(
-        PropertyHelper.getPropertyIds(Resource.Type.Alert),
-        PropertyHelper.getKeyPropertyIds(Resource.Type.Alert),
-        m_amc);
+    return new AlertResourceProvider(m_amc);
   }
 
   /**
@@ -414,7 +413,7 @@ public class AlertResourceProviderTest {
     @Override
     public void configure(Binder binder) {
       binder.bind(EntityManager.class).toInstance(EasyMock.createMock(EntityManager.class));
-      binder.bind(AlertsDAO.class).toInstance(EasyMock.createMock(AlertsDAO.class));
+      binder.bind(AlertsDAO.class).toInstance(m_dao);
       binder.bind(AmbariManagementController.class).toInstance(createMock(AmbariManagementController.class));
       binder.bind(DBAccessor.class).to(DBAccessorImpl.class);
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/291974ee/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProviderTest.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProviderTest.java
index ce623ed..7a633e7 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProviderTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/AlertTargetResourceProviderTest.java
@@ -81,10 +81,11 @@ public class AlertTargetResourceProviderTest {
     m_dao = createStrictMock(AlertDispatchDAO.class);
     m_amc = createMock(AmbariManagementController.class);
 
+    // create an injector which will inject the mocks
     m_injector = Guice.createInjector(Modules.override(
         new InMemoryDefaultTestModule()).with(new MockModule()));
 
-    AlertTargetResourceProvider.init(m_injector);
+    Assert.assertNotNull(m_injector);
   }
 
   /**