You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by nc...@apache.org on 2013/12/16 14:28:50 UTC
[12/12] git commit: AMBARI-4072. Remove extraneous jmx and ganglia
files (ncole)
AMBARI-4072. Remove extraneous jmx and ganglia files (ncole)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/eb80c2b7
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/eb80c2b7
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/eb80c2b7
Branch: refs/heads/trunk
Commit: eb80c2b7e681beca82fe9ac034b73fbf21324130
Parents: 5629ad9
Author: Nate Cole <nc...@hortonworks.com>
Authored: Fri Dec 13 17:13:29 2013 -0500
Committer: Nate Cole <nc...@hortonworks.com>
Committed: Mon Dec 16 08:27:43 2013 -0500
----------------------------------------------------------------------
.../internal/AbstractProviderModule.java | 138 +-
.../internal/VersioningPropertyProvider.java | 115 -
.../controller/utilities/PropertyHelper.java | 33 +-
.../main/resources/ganglia_properties_2.json | 8988 -----------
.../src/main/resources/jmx_properties_2.json | 2867 ----
.../HDP/2.0.8/services/HBASE/metrics.json | 13635 +++++++++++++++++
.../stacks/HDP/2.0.8/services/HDFS/metrics.json | 7800 ++++++++++
.../HDP/2.0.8/services/MAPREDUCE2/metrics.json | 383 +
.../stacks/HDP/2.0.8/services/YARN/metrics.json | 2534 +++
.../stacks/HDP/2.0._/services/HDFS/metrics.json | 36 +-
.../ganglia/GangliaPropertyProviderTest.java | 262 +-
.../GangliaReportPropertyProviderTest.java | 2 +-
.../internal/AbstractPropertyProviderTest.java | 37 +-
.../internal/AbstractProviderModuleTest.java | 121 -
.../StackDefinedPropertyProviderTest.java | 680 +-
.../VersioningPropertyProviderTest.java | 157 -
.../controller/jmx/JMXPropertyProviderTest.java | 441 +-
.../utilities/PropertyHelperTest.java | 246 +-
.../HDP/2.0.5/services/HBASE/metrics.json | 3186 ++++
.../stacks/HDP/2.0.5/services/HDFS/metrics.json | 935 ++
.../stacks/HDP/2.0.5/services/YARN/metrics.json | 1653 ++
21 files changed, 30951 insertions(+), 13298 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/eb80c2b7/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractProviderModule.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractProviderModule.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractProviderModule.java
index 051eb31..e5e10ef 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractProviderModule.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractProviderModule.java
@@ -47,8 +47,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.*;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
/**
* An abstract provider module implementation.
@@ -59,7 +57,6 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
private static final int PROPERTY_REQUEST_READ_TIMEOUT = 10000;
private static final String CLUSTER_NAME_PROPERTY_ID = PropertyHelper.getPropertyId("Clusters", "cluster_name");
- private static final String CLUSTER_VERSION_PROPERTY_ID = PropertyHelper.getPropertyId("Clusters", "version");
private static final String HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID = PropertyHelper.getPropertyId("HostRoles", "cluster_name");
private static final String HOST_COMPONENT_HOST_NAME_PROPERTY_ID = PropertyHelper.getPropertyId("HostRoles", "host_name");
private static final String HOST_COMPONENT_COMPONENT_NAME_PROPERTY_ID = PropertyHelper.getPropertyId("HostRoles", "component_name");
@@ -119,12 +116,6 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
private AmbariManagementController managementController;
/**
- * Cluster versions.
- */
- private final Map<String, PropertyHelper.MetricsVersion> clusterVersionsMap =
- new HashMap<String, PropertyHelper.MetricsVersion>();
-
- /**
* The map of host components.
*/
private Map<String, Map<String, String>> clusterHostComponentMap;
@@ -184,11 +175,8 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
public void update(ResourceProviderEvent event) {
Resource.Type type = event.getResourceType();
- if (type == Resource.Type.Cluster) {
- resetInit();
- updateClusterVersion();
- }
- if (type == Resource.Type.Host ||
+ if (type == Resource.Type.Cluster ||
+ type == Resource.Type.Host ||
type == Resource.Type.HostComponent) {
resetInit();
}
@@ -310,18 +298,6 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
// ----- utility methods ---------------------------------------------------
- /**
- * Get the metrics version for the given cluster name.
- *
- * @param clusterName the cluster name
- *
- * @return the metrics version for the given cluster name
- */
- protected PropertyHelper.MetricsVersion getMetricsVersion(String clusterName) {
- updateClusterVersion();
- return clusterVersionsMap.get(clusterName);
- }
-
protected abstract ResourceProvider createResourceProvider(Resource.Type type);
protected void registerResourceProvider(Resource.Type type) {
@@ -462,44 +438,6 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
}
}
- /**
- * Update a map of known cluster names to version of JMX metrics. The JMX metrics version is based on the
- * HDP version of the cluster.
- */
- private void updateClusterVersion() {
- synchronized (clusterVersionsMap) {
- clusterVersionsMap.clear();
-
- ResourceProvider provider = getResourceProvider(Resource.Type.Cluster);
- Request request = PropertyHelper.getReadRequest(CLUSTER_NAME_PROPERTY_ID, CLUSTER_VERSION_PROPERTY_ID);
-
- try {
- Set<Resource> clusters = provider.getResources(request, null);
-
- for (Resource cluster : clusters) {
- String clusterVersion = (String) cluster.getPropertyValue(CLUSTER_VERSION_PROPERTY_ID);
- PropertyHelper.MetricsVersion version = PropertyHelper.MetricsVersion.HDP2;
-
- Matcher m = Pattern.compile("[0-9]+(\\.[0-9]+)+").matcher(clusterVersion);
- if (m.find()) {
- clusterVersion = m.group(0);
- if (clusterVersion.equals("1") || clusterVersion.startsWith("1.")) {
- version = PropertyHelper.MetricsVersion.HDP1;
- }
- }
-
- clusterVersionsMap.put(
- (String) cluster.getPropertyValue(CLUSTER_NAME_PROPERTY_ID),
- version);
- }
- } catch (Exception e) {
- if (LOG.isErrorEnabled()) {
- LOG.error("Caught exception while trying to get the cluster versions.", e);
- }
- }
- }
- }
-
private void initProviderMaps() throws SystemException {
ResourceProvider provider = getResourceProvider(Resource.Type.Cluster);
Request request = PropertyHelper.getReadRequest(CLUSTER_NAME_PROPERTY_ID);
@@ -651,20 +589,9 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
String componentNamePropertyId,
String statePropertyId,
Set<String> healthyStates) {
- updateClusterVersion();
-
- Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers =
- new HashMap<PropertyHelper.MetricsVersion, AbstractPropertyProvider>();
- AbstractPropertyProvider lastProvider = null;
-
- for (PropertyHelper.MetricsVersion version : PropertyHelper.MetricsVersion.values()) {
-
- lastProvider = new JMXPropertyProvider(PropertyHelper.getJMXPropertyIds(type, version), streamProvider,
+
+ return new JMXPropertyProvider(PropertyHelper.getJMXPropertyIds(type), streamProvider,
jmxHostProvider, clusterNamePropertyId, hostNamePropertyId, componentNamePropertyId, statePropertyId, healthyStates);
- providers.put(version, lastProvider);
- }
-
- return new VersioningPropertyProvider(clusterVersionsMap, providers, lastProvider, clusterNamePropertyId);
}
/**
@@ -674,20 +601,9 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
ComponentSSLConfiguration configuration,
GangliaHostProvider hostProvider,
String clusterNamePropertyId) {
- updateClusterVersion();
-
- Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers =
- new HashMap<PropertyHelper.MetricsVersion, AbstractPropertyProvider>();
- AbstractPropertyProvider lastProvider = null;
-
- for (PropertyHelper.MetricsVersion version : PropertyHelper.MetricsVersion.values()) {
-
- lastProvider = new GangliaReportPropertyProvider(PropertyHelper.getGangliaPropertyIds(type, version), streamProvider,
+
+ return new GangliaReportPropertyProvider(PropertyHelper.getGangliaPropertyIds(type), streamProvider,
configuration, hostProvider, clusterNamePropertyId);
- providers.put(version, lastProvider);
- }
-
- return new VersioningPropertyProvider(clusterVersionsMap, providers, lastProvider, clusterNamePropertyId);
}
/**
@@ -698,20 +614,8 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
GangliaHostProvider hostProvider,
String clusterNamePropertyId,
String hostNamePropertyId) {
- updateClusterVersion();
-
- Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers =
- new HashMap<PropertyHelper.MetricsVersion, AbstractPropertyProvider>();
- AbstractPropertyProvider lastProvider = null;
-
- for (PropertyHelper.MetricsVersion version : PropertyHelper.MetricsVersion.values()) {
-
- lastProvider = new GangliaHostPropertyProvider(PropertyHelper.getGangliaPropertyIds(type, version), streamProvider,
+ return new GangliaHostPropertyProvider(PropertyHelper.getGangliaPropertyIds(type), streamProvider,
configuration, hostProvider, clusterNamePropertyId, hostNamePropertyId);
- providers.put(version, lastProvider);
- }
-
- return new VersioningPropertyProvider(clusterVersionsMap, providers, lastProvider, clusterNamePropertyId);
}
/**
@@ -722,21 +626,8 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
GangliaHostProvider hostProvider,
String clusterNamePropertyId,
String componentNamePropertyId) {
- updateClusterVersion();
-
- Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers =
- new HashMap<PropertyHelper.MetricsVersion, AbstractPropertyProvider>();
- AbstractPropertyProvider lastProvider = null;
-
- for (PropertyHelper.MetricsVersion version : PropertyHelper.MetricsVersion.values()) {
- lastProvider =
- new GangliaComponentPropertyProvider(PropertyHelper.getGangliaPropertyIds(type, version),
+ return new GangliaComponentPropertyProvider(PropertyHelper.getGangliaPropertyIds(type),
streamProvider, configuration, hostProvider, clusterNamePropertyId, componentNamePropertyId);
-
- providers.put(version, lastProvider);
- }
-
- return new VersioningPropertyProvider(clusterVersionsMap, providers, lastProvider, clusterNamePropertyId);
}
@@ -749,20 +640,9 @@ public abstract class AbstractProviderModule implements ProviderModule, Resource
String clusterNamePropertyId,
String hostNamePropertyId,
String componentNamePropertyId) {
- updateClusterVersion();
-
- Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers =
- new HashMap<PropertyHelper.MetricsVersion, AbstractPropertyProvider>();
- AbstractPropertyProvider lastProvider = null;
- for (PropertyHelper.MetricsVersion version : PropertyHelper.MetricsVersion.values()) {
-
- lastProvider = new GangliaHostComponentPropertyProvider(PropertyHelper.getGangliaPropertyIds(type, version), streamProvider,
+ return new GangliaHostComponentPropertyProvider(PropertyHelper.getGangliaPropertyIds(type), streamProvider,
configuration, hostProvider, clusterNamePropertyId, hostNamePropertyId, componentNamePropertyId);
- providers.put(version, lastProvider);
- }
-
- return new VersioningPropertyProvider(clusterVersionsMap, providers, lastProvider, clusterNamePropertyId);
}
@Override
http://git-wip-us.apache.org/repos/asf/ambari/blob/eb80c2b7/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersioningPropertyProvider.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersioningPropertyProvider.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersioningPropertyProvider.java
deleted file mode 100644
index b1b1d5c..0000000
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/VersioningPropertyProvider.java
+++ /dev/null
@@ -1,115 +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.internal;
-
-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.PropertyHelper;
-
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * A property provider that delegates to other Property providers based on the
- * metrics version of the cluster associated with the resources being populated.
- */
-public class VersioningPropertyProvider extends BaseProvider implements PropertyProvider {
-
- private final Map<String, PropertyHelper.MetricsVersion> clusterVersions;
- private final Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers;
- private final AbstractPropertyProvider defaultProvider;
- private final String clusterNamePropertyId;
-
- /**
- * Create a version aware property provider.
- */
- public VersioningPropertyProvider(Map<String, PropertyHelper.MetricsVersion> clusterVersions,
- Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers,
- AbstractPropertyProvider defaultProvider,
- String clusterNamePropertyId) {
- super(getComponentMetrics(providers));
-
- this.clusterVersions = clusterVersions;
- this.providers = providers;
- this.defaultProvider = defaultProvider;
- this.clusterNamePropertyId = clusterNamePropertyId;
- }
-
- @Override
- public Set<Resource> populateResources(Set<Resource> resources, Request request, Predicate predicate)
- throws SystemException {
-
- Set<Resource> keepers = new HashSet<Resource>();
-
- // divide up the given resources according to their associated clusters
- Map<String, Set<Resource>> resourcesByCluster = new HashMap<String, Set<Resource>>();
-
- for (Resource resource : resources) {
- String clusterName = (String) resource.getPropertyValue(clusterNamePropertyId);
-
- Set<Resource> resourceSet = resourcesByCluster.get(clusterName);
-
- if (resourceSet == null) {
- resourceSet = new HashSet<Resource>();
- resourcesByCluster.put(clusterName, resourceSet);
- }
- resourceSet.add(resource);
- }
-
- // give each set of resources to the underlying provider that matches the
- // metrics version of the associated cluster
- for (Map.Entry<String, Set<Resource>> entry : resourcesByCluster.entrySet()) {
- String clusterName = entry.getKey();
- Set<Resource> resourceSet = entry.getValue();
- AbstractPropertyProvider provider = null;
-
- if (clusterName == null) {
- provider = defaultProvider;
- } else {
- PropertyHelper.MetricsVersion version = clusterVersions.get(clusterName);
-
- if (version != null) {
- provider = providers.get(version);
- }
- }
-
- if (provider != null) {
- keepers.addAll(provider.populateResources(resourceSet, request, predicate));
- }
- }
- return keepers;
- }
-
- // ----- helper methods ----------------------------------------------------
-
- private static Set<String> getComponentMetrics(Map<PropertyHelper.MetricsVersion, AbstractPropertyProvider> providers) {
-
- Set<String> propertyIds = new HashSet<String>();
-
- for (AbstractPropertyProvider provider : providers.values()) {
- propertyIds.addAll(provider.getPropertyIds());
- }
- return propertyIds;
- }
-}
http://git-wip-us.apache.org/repos/asf/ambari/blob/eb80c2b7/ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/PropertyHelper.java
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/PropertyHelper.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/PropertyHelper.java
index 8d2f495..7ba1522 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/PropertyHelper.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/utilities/PropertyHelper.java
@@ -42,17 +42,13 @@ public class PropertyHelper {
private static final String PROPERTIES_FILE = "properties.json";
private static final String GANGLIA_PROPERTIES_FILE = "ganglia_properties.json";
- private static final String GANGLIA_PROPERTIES_FILE_2 = "ganglia_properties_2.json";
private static final String JMX_PROPERTIES_FILE = "jmx_properties.json";
- private static final String JMX_PROPERTIES_FILE_2 = "jmx_properties_2.json";
private static final String KEY_PROPERTIES_FILE = "key_properties.json";
private static final char EXTERNAL_PATH_SEP = '/';
private static final Map<Resource.Type, Set<String>> PROPERTY_IDS = readPropertyIds(PROPERTIES_FILE);
private static final Map<Resource.Type, Map<String, Map<String, PropertyInfo>>> JMX_PROPERTY_IDS = readPropertyProviderIds(JMX_PROPERTIES_FILE);
- private static final Map<Resource.Type, Map<String, Map<String, PropertyInfo>>> JMX_PROPERTY_IDS_2 = readPropertyProviderIds(JMX_PROPERTIES_FILE_2);
private static final Map<Resource.Type, Map<String, Map<String, PropertyInfo>>> GANGLIA_PROPERTY_IDS = readPropertyProviderIds(GANGLIA_PROPERTIES_FILE);
- private static final Map<Resource.Type, Map<String, Map<String, PropertyInfo>>> GANGLIA_PROPERTY_IDS_2 = readPropertyProviderIds(GANGLIA_PROPERTIES_FILE_2);
private static final Map<Resource.Type, Map<Resource.Type, String>> KEY_PROPERTY_IDS = readKeyPropertyIds(KEY_PROPERTIES_FILE);
/**
@@ -60,14 +56,6 @@ public class PropertyHelper {
*/
private static final Pattern CHECK_FOR_METRIC_ARGUMENTS_REGEX = Pattern.compile(".*\\$\\d+.*");
- /**
- * Metrics versions.
- */
- public enum MetricsVersion {
- HDP1, // HDP-1.x
- HDP2 // HDP-2.x
- }
-
public static String getPropertyId(String category, String name) {
String propertyId = (category == null || category.isEmpty())? name :
(name == null || name.isEmpty()) ? category : category + EXTERNAL_PATH_SEP + name;
@@ -100,25 +88,12 @@ public class PropertyHelper {
return propertyIds;
}
- public static Map<String, Map<String, PropertyInfo>> getGangliaPropertyIds(Resource.Type resourceType, MetricsVersion version) {
- switch (version) {
- case HDP1:
- return GANGLIA_PROPERTY_IDS.get(resourceType);
- case HDP2:
- default:
- return GANGLIA_PROPERTY_IDS_2.get(resourceType);
- }
+ public static Map<String, Map<String, PropertyInfo>> getGangliaPropertyIds(Resource.Type resourceType) {
+ return GANGLIA_PROPERTY_IDS.get(resourceType);
}
- public static Map<String, Map<String, PropertyInfo>> getJMXPropertyIds(Resource.Type resourceType, MetricsVersion version) {
-
- switch (version) {
- case HDP1:
- return JMX_PROPERTY_IDS.get(resourceType);
- case HDP2:
- default:
- return JMX_PROPERTY_IDS_2.get(resourceType);
- }
+ public static Map<String, Map<String, PropertyInfo>> getJMXPropertyIds(Resource.Type resourceType) {
+ return JMX_PROPERTY_IDS.get(resourceType);
}
public static Map<Resource.Type, String> getKeyPropertyIds(Resource.Type resourceType) {