Robert Nettleton created AMBARI-24499:
-----------------------------------------
Summary: Ambari Blueprint deployments fail with multiple
TIMELINE_READER instances
Key: AMBARI-24499
URL: https://issues.apache.org/jira/browse/AMBARI-24499
Project: Ambari
Issue Type: Bug
Components: ambari-server
Affects Versions: Ambari-2.7.0
Reporter: Robert Nettleton
Assignee: Balázs Bence Sári
Fix For: Ambari-2.7.1
The BlueprintConfigurationProcessor does not current handle the case of
multiple Yarn TIMELINE_READER instances properly.
Generally, only a singleton instance of the TIMELINE_READER instance is
deployed, but there might be scenarios in which customers will choose to deploy
more than one instance, with just one instance running at a given time.
Currently, deploying a Blueprint with multiple TIMELINE_READER instances fails
with the following exception:
{code:java}
java.lang.IllegalArgumentException: Unable to update configuration property
'yarn.timeline-service.reader.webapp.address' with topology information.
Component 'TIMELINE_READER' is mapped to an invalid number of hosts '2'.
at
org.apache.ambari.server.controller.internal.BlueprintConfigurationProcessor$SingleHostTopologyUpdater.updateForClusterCreate(BlueprintConfigurationProcessor.java:1945)
at
org.apache.ambari.server.controller.internal.BlueprintConfigurationProcessor.updateValue(BlueprintConfigurationProcessor.java:739)
at
org.apache.ambari.server.controller.internal.BlueprintConfigurationProcessor.doGeneralPropertyUpdatesForClusterCreate(BlueprintConfigurationProcessor.java:641)
at
org.apache.ambari.server.controller.internal.BlueprintConfigurationProcessor.doUpdateForClusterCreate(BlueprintConfigurationProcessor.java:443)
at
org.apache.ambari.server.topology.ClusterConfigurationRequest.process(ClusterConfigurationRequest.java:152)
at
org.apache.ambari.server.topology.tasks.ConfigureClusterTask.call(ConfigureClusterTask.java:80)
at
org.apache.ambari.server.security.authorization.internal.InternalAuthenticationInterceptor.invoke(InternalAuthenticationInterceptor.java:45)
at
org.apache.ambari.server.topology.tasks.ConfigureClusterTask.call(ConfigureClusterTask.java:45)
at
org.apache.ambari.server.security.authorization.internal.InternalAuthenticationInterceptor.invoke(InternalAuthenticationInterceptor.java:45)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745){code}
The BlueprintConfiguration processor should be updated to allow for more than
one TIMELINE_READER instance to be deployed. This assumes that the Blueprint
developer will set any Yarn properties required that point towards the
TIMELINE_READER instance, including the usage of HOSTGROUP properties.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)