You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by be...@apache.org on 2018/11/09 18:10:28 UTC
[ambari] branch trunk updated: [AMBARI-24870] Allow blueprint
install without HISTORYMANAGER, APP_TIMELINE_SERVER (benyoka) (#2590)
This is an automated email from the ASF dual-hosted git repository.
benyoka pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/trunk by this push:
new e440c50 [AMBARI-24870] Allow blueprint install without HISTORYMANAGER, APP_TIMELINE_SERVER (benyoka) (#2590)
e440c50 is described below
commit e440c50d73c96c9772f2594a23de061f9786d586
Author: benyoka <be...@users.noreply.github.com>
AuthorDate: Fri Nov 9 19:10:23 2018 +0100
[AMBARI-24870] Allow blueprint install without HISTORYMANAGER, APP_TIMELINE_SERVER (benyoka) (#2590)
* AMBARI-24870 Allow blueprint install without HISTORYMANAGER, APP_TIMELINE_SERVER (benyoka)
* AMBARI-24870 fix unit test (benyoka)
---
.../internal/BlueprintConfigurationProcessor.java | 16 +++++++--------
.../BlueprintConfigurationProcessorTest.java | 23 +++++++---------------
2 files changed, 15 insertions(+), 24 deletions(-)
diff --git a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java
index 1b62c29..7803e90 100644
--- a/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java
+++ b/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessor.java
@@ -2961,10 +2961,10 @@ public class BlueprintConfigurationProcessor {
mapredSiteMap.put("mapreduce.job.hdfs-servers", new SingleHostTopologyUpdater("NAMENODE"));
- // HISTORY_SERVER
- yarnSiteMap.put("yarn.log.server.url", new SingleHostTopologyUpdater("HISTORYSERVER"));
- mapredSiteMap.put("mapreduce.jobhistory.webapp.address", new SingleHostTopologyUpdater("HISTORYSERVER"));
- mapredSiteMap.put("mapreduce.jobhistory.address", new SingleHostTopologyUpdater("HISTORYSERVER"));
+ // HISTORYSERVER
+ yarnSiteMap.put("yarn.log.server.url", new OptionalSingleHostTopologyUpdater("HISTORYSERVER"));
+ mapredSiteMap.put("mapreduce.jobhistory.webapp.address", new OptionalSingleHostTopologyUpdater("HISTORYSERVER"));
+ mapredSiteMap.put("mapreduce.jobhistory.address", new OptionalSingleHostTopologyUpdater("HISTORYSERVER"));
// RESOURCEMANAGER
yarnSiteMap.put("yarn.resourcemanager.hostname", new OptionalSingleHostTopologyUpdater("RESOURCEMANAGER"));
@@ -2976,10 +2976,10 @@ public class BlueprintConfigurationProcessor {
yarnSiteMap.put("yarn.resourcemanager.webapp.https.address", new OptionalSingleHostTopologyUpdater("RESOURCEMANAGER"));
// APP_TIMELINE_SERVER
- yarnSiteMap.put("yarn.timeline-service.address", new SingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
- yarnSiteMap.put("yarn.timeline-service.webapp.address", new SingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
- yarnSiteMap.put("yarn.timeline-service.webapp.https.address", new SingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
- yarnSiteMap.put("yarn.log.server.web-service.url", new SingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
+ yarnSiteMap.put("yarn.timeline-service.address", new OptionalSingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
+ yarnSiteMap.put("yarn.timeline-service.webapp.address", new OptionalSingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
+ yarnSiteMap.put("yarn.timeline-service.webapp.https.address", new OptionalSingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
+ yarnSiteMap.put("yarn.log.server.web-service.url", new OptionalSingleHostTopologyUpdater("APP_TIMELINE_SERVER"));
// TIMELINE_READER
yarnSiteMap.put("yarn.timeline-service.reader.webapp.address", new MultipleHostTopologyUpdater("TIMELINE_READER"));
diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessorTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessorTest.java
index f718862..de70e36 100644
--- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessorTest.java
+++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/BlueprintConfigurationProcessorTest.java
@@ -2565,15 +2565,11 @@ public class BlueprintConfigurationProcessorTest extends EasyMockSupport {
@Test
public void testDoUpdateForClusterCreate_SingleHostProperty__MissingComponent() throws Exception {
Map<String, Map<String, String>> properties = new HashMap<>();
- Map<String, String> typeProps = new HashMap<>();
- typeProps.put("yarn.resourcemanager.hostname", "localhost");
- typeProps.put("yarn.timeline-service.address", "localhost");
- properties.put("yarn-site", typeProps);
-
+ properties.put("mapred-site",
+ new HashMap<>(ImmutableMap.of("mapreduce.job.hdfs-servers", "localhost")));
Configuration clusterConfig = new Configuration(properties, emptyMap());
Collection<String> group1Components = new HashSet<>();
- group1Components.add("NAMENODE");
group1Components.add("SECONDARY_NAMENODE");
group1Components.add("RESOURCEMANAGER");
TestHostGroup group1 = new TestHostGroup("group1", group1Components, Collections.singleton("testhost"));
@@ -2587,8 +2583,7 @@ public class BlueprintConfigurationProcessorTest extends EasyMockSupport {
hostGroups.add(group1);
hostGroups.add(group2);
- expect(stack.getCardinality("APP_TIMELINE_SERVER")).andReturn(new Cardinality("1")).anyTimes();
- expect(stack.getCardinality("TIMELINE_READER")).andReturn(new Cardinality("1")).anyTimes();
+ expect(stack.getCardinality("NAMENODE")).andReturn(new Cardinality("1")).anyTimes();
ClusterTopology topology = createClusterTopology(bp, clusterConfig, hostGroups);
BlueprintConfigurationProcessor updater = new BlueprintConfigurationProcessor(topology);
@@ -2607,9 +2602,8 @@ public class BlueprintConfigurationProcessorTest extends EasyMockSupport {
Map<String, Map<String, String>> properties = new HashMap<>();
Map<String, String> typeProps = new HashMap<>();
- typeProps.put("yarn.resourcemanager.hostname", "localhost");
- typeProps.put("yarn.timeline-service.address", "localhost");
- properties.put("yarn-site", typeProps);
+ properties.put("mapred-site",
+ new HashMap<>(ImmutableMap.of("mapreduce.job.hdfs-servers", "localhost")));
Configuration clusterConfig = new Configuration(properties, emptyMap());
@@ -2622,19 +2616,16 @@ public class BlueprintConfigurationProcessorTest extends EasyMockSupport {
TestHostGroup group1 = new TestHostGroup("group1", group1Components, Collections.singleton("testhost"));
Collection<String> group2Components = new HashSet<>();
+ group2Components.add("NAMENODE");
group2Components.add("DATANODE");
group2Components.add("HDFS_CLIENT");
- group2Components.add("APP_TIMELINE_SERVER");
- group2Components.add("TIMELINE_READER");
TestHostGroup group2 = new TestHostGroup("group2", group2Components, Collections.singleton("testhost2"));
Collection<TestHostGroup> hostGroups = new HashSet<>();
hostGroups.add(group1);
hostGroups.add(group2);
- expect(stack.getCardinality("APP_TIMELINE_SERVER")).andReturn(new Cardinality("0-1")).anyTimes();
- expect(stack.getCardinality("TIMELINE_READER")).andReturn(new Cardinality("0-1")).anyTimes();
-
+ expect(stack.getCardinality("NAMENODE")).andReturn(new Cardinality("0-1")).anyTimes();
ClusterTopology topology = createClusterTopology(bp, clusterConfig, hostGroups);
BlueprintConfigurationProcessor updater = new BlueprintConfigurationProcessor(topology);