Repository: ambari Updated Branches: refs/heads/branch-2.4 95279139f -> a83311897
AMBARI-16807 After enabling HTTPS for HDFS, Data Node JVM Metrics on HDFS Heatmaps show NA (qinliu via dsen) Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/a8331189 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/a8331189 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/a8331189 Branch: refs/heads/branch-2.4 Commit: a83311897c1d16c673e196daf435b7b15fc7d439 Parents: 9527913 Author: Dmytro Sen <[email protected]> Authored: Thu Jun 2 22:09:39 2016 +0300 Committer: Dmytro Sen <[email protected]> Committed: Thu Jun 2 22:09:39 2016 +0300 ---------------------------------------------------------------------- .../controller/internal/AbstractProviderModule.java | 7 ++++++- .../controller/internal/JMXHostProviderTest.java | 15 +++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/a8331189/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 c5e497d..23517fd 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 @@ -135,6 +135,7 @@ public abstract class AbstractProviderModule implements ProviderModule, initPropMap.put("NAMENODE-HA", new String[]{"dfs.namenode.http-address.%s.%s"}); initPropMap.put("NAMENODE-HTTPS-HA", new String[]{"dfs.namenode.https-address.%s.%s"}); initPropMap.put("DATANODE", new String[]{"dfs.datanode.http.address"}); + initPropMap.put("DATANODE-HTTPS", new String[]{"dfs.datanode.https.address"}); initPropMap.put("JOURNALNODE-HTTPS", new String[]{"dfs.journalnode.https-address"}); initPropMap.put("JOURNALNODE", new String[]{"dfs.journalnode.http-address"}); serviceDesiredProperties.put(Service.Type.HDFS, initPropMap); @@ -161,6 +162,10 @@ public abstract class AbstractProviderModule implements ProviderModule, jmxDesiredProperties.put("NAMENODE", initPropMap); initPropMap = new HashMap<String, String[]>(); + initPropMap.put("DATANODE", new String[]{"dfs.http.policy"}); + jmxDesiredProperties.put("DATANODE", initPropMap); + + initPropMap = new HashMap<String, String[]>(); initPropMap.put("JOURNALNODE", new String[]{"dfs.http.policy"}); jmxDesiredProperties.put("JOURNALNODE", initPropMap); @@ -1175,7 +1180,7 @@ public abstract class AbstractProviderModule implements ProviderModule, String jmxProtocolString = clusterJmxProtocolMap.get(clusterName); try { - if (componentName.equals("NAMENODE") || componentName.equals("RESOURCEMANAGER") || componentName.equals("JOURNALNODE") || componentName.equals("HISTORYSERVER")) { + if (componentName.equals("NAMENODE") || componentName.equals("DATANODE") || componentName.equals("RESOURCEMANAGER") || componentName.equals("NODEMANAGER") || componentName.equals("JOURNALNODE") || componentName.equals("HISTORYSERVER")) { Service.Type service = componentServiceMap.get(componentName); String config = serviceConfigTypes.get(service); String newSiteConfigVersion = getDesiredConfigVersion(clusterName, config); http://git-wip-us.apache.org/repos/asf/ambari/blob/a8331189/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java index a6e5501..f7492a2 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/JMXHostProviderTest.java @@ -71,6 +71,7 @@ public class JMXHostProviderTest { private static final String NAMENODE_PORT_V1 = "dfs.http.address"; private static final String NAMENODE_PORT_V2 = "dfs.namenode.http-address"; private static final String DATANODE_PORT = "dfs.datanode.http.address"; + private static final String DATANODE_HTTPS_PORT = "dfs.datanode.https.address"; private static final String RESOURCEMANAGER_PORT = "yarn.resourcemanager.webapp.address"; private static final String RESOURCEMANAGER_HTTPS_PORT = "yarn.resourcemanager.webapp.https.address"; private static final String YARN_HTTPS_POLICY = "yarn.http.policy"; @@ -293,6 +294,7 @@ public class JMXHostProviderTest { configs.put(DATANODE_PORT, "localhost:70075"); configs.put("ambari.dfs.datanode.http.port", "70070"); configs.put(JOURNALNODE_HTTPS_PORT, "localhost:8481"); + configs.put(DATANODE_HTTPS_PORT, "50475"); configs.put(HDFS_HTTPS_POLICY, "HTTPS_ONLY"); Map<String, String> yarnConfigs = new HashMap<String, String>(); @@ -549,6 +551,19 @@ public class JMXHostProviderTest { } @Test + public void testJMXDataNodeHttpsPort() throws + NoSuchParentResourceException, + ResourceAlreadyExistsException, UnsupportedPropertyException, + SystemException, AmbariException, NoSuchResourceException { + createConfigs(); + JMXHostProviderModule providerModule = new JMXHostProviderModule(); + providerModule.registerResourceProvider(Resource.Type.Cluster); + providerModule.registerResourceProvider(Resource.Type.Configuration); + Assert.assertEquals("https", providerModule.getJMXProtocol("c1", "DATANODE")); + Assert.assertEquals("50475", providerModule.getPort("c1", "DATANODE", "localhost", true)); + } + + @Test public void testJMXPortMapUpdate() throws NoSuchParentResourceException, ResourceAlreadyExistsException, UnsupportedPropertyException,
