-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/42340/
-----------------------------------------------------------
(Updated Jan. 15, 2016, 10:40 p.m.)
Review request for Ambari, Jaimin Jetly and Sumit Mohanty.
Changes
-------
Before adding the SPARK service, YARN property "yarn.nodemanager.aux-services"
value is "mapreduce_shuffle".
If the SPARK service is
(1). Added. The YARN property "yarn.nodemanager.aux-services" becomes
"mapreduce_shuffle,spark_shuffle". Then if
(2). SPARK service is Deleted "yarn.nodemanager.aux-services" stays
"mapreduce_shuffle,spark_shuffle". and then if
(3). SPARK serive is readded, "yarn.nodemanager.aux-services" becomes
"mapreduce_shuffle,spark_shuffle,spark_shuffle" because 2.4/stack_advisor code
appends the "spark_shuffle" value once again, w/o checking is the value exists
already in property.
Fixed that.
Bugs: AMBARI-14679
https://issues.apache.org/jira/browse/AMBARI-14679
Repository: ambari
Description (updated)
-------
When Spark is added later to a cluster with YARN deployed then yarn-site is not
modified.
If Spark is added to an existing cluster with YARN using HDP 2.4, then
yarn-site:yarn.nodemanager.aux-services is not modified to include
spark_shuffle.
Recommendation shown is :
Recommendations:
{'yarn.timeline-service.entity-group-fs-store.group-id-plugin-classes': '',
'yarn.nodemanager.container-executor.class':
'org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor',
'yarn.nodemanager.aux-services.spark_shuffle.class':
'org.apache.spark.network.yarn.YarnShuffleService',
'yarn.scheduler.minimum-allocation-vcores': '1',
'yarn.scheduler.maximum-allocation-vcores': '1',
'yarn.nodemanager.resource.memory-mb': '1024',
'yarn.scheduler.minimum-allocation-mb': '341',
'yarn.nodemanager.resource.cpu-vcores': '1', 'yarn.nodemanager.aux-services':
'mapreduce_shuffle, 'yarn.scheduler.maximum-allocation-mb': '1024',
'yarn.nodemanager.linux-container-executor.group': 'hadoop'}
But with SPARK added, it should be :
'yarn.nodemanager.aux-services': 'mapreduce_shuffle,spark_shuffle'
Fix :
- Added the YARN property (yarn.nodemanager.aux-services,
yarn.nodemanager.aux-services.spark_shuffle.class) dependency on property
(spark.yarn.queue).
- Fixed the 2.4/stack_advisor code to add "spark_shuffle" value only if it
doesnt exist in property "yarn.nodemanager.aux-services".
Diffs (updated)
-----
ambari-server/src/main/resources/stacks/HDP/2.4/services/YARN/configuration/yarn-site.xml
PRE-CREATION
ambari-server/src/main/resources/stacks/HDP/2.4/services/stack_advisor.py
3b96268
Diff: https://reviews.apache.org/r/42340/diff/
Testing
-------
- Tested the behavior. "spark_shuffle" gets shown in recommendations.
Screenshot Attached.
-> New cluster install
-> Adding SPARK service after cluster install.
- Build done.
File Attachments
----------------
Screen Shot 2016-01-15 at 1.36.01 PM.png
https://reviews.apache.org/media/uploaded/files/2016/01/15/0396ac33-6932-461a-abba-ab2138c854ec__Screen_Shot_2016-01-15_at_1.36.01_PM.png
Thanks,
Swapan Shridhar