Browse Source

AMBARI-14679. When Spark is added later to a cluster with YARN deployed then yarn-site is not modified (Swapan Sridhar via smohanty)

Sumit Mohanty 9 năm trước cách đây
mục cha
commit
6e9d25cafa

+ 45 - 0
ambari-server/src/main/resources/stacks/HDP/2.4/services/YARN/configuration/yarn-site.xml

@@ -0,0 +1,45 @@
+<?xml version="1.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.
+-->
+
+<configuration supports_final="true">
+    <property>
+        <name>yarn.nodemanager.aux-services</name>
+        <value>mapreduce_shuffle</value>
+        <description>Auxilliary services of NodeManager. A valid service name should only contain a-zA-Z0-9_ and can
+          not start with numbers</description>
+        <depends-on>
+            <property>
+              <type>spark-default</type>
+              <name>spark.yarn.queue</name>
+            </property>
+        </depends-on>
+    </property>
+
+    <property>
+        <name>yarn.nodemanager.aux-services.spark_shuffle.class</name>
+        <value>org.apache.spark.network.yarn.YarnShuffleService</value>
+        <description>The auxiliary service class to use for Spark</description>
+        <depends-on>
+            <property>
+                <type>spark-default</type>
+                <name>spark.yarn.queue</name>
+            </property>
+        </depends-on>
+    </property>
+</configuration>

+ 2 - 1
ambari-server/src/main/resources/stacks/HDP/2.4/services/stack_advisor.py

@@ -49,7 +49,8 @@ class HDP24StackAdvisor(HDP23StackAdvisor):
     if 'SPARK' in services_list:
       if "yarn.nodemanager.aux-services" in yarn_site_properties:
         aux_services = yarn_site_properties["yarn.nodemanager.aux-services"].split(",")
-        aux_services.append("spark_shuffle")
+        if "spark_shuffle" not in aux_services:
+          aux_services.append("spark_shuffle")
         put_yarn_site_property("yarn.nodemanager.aux-services", ",".join(aux_services))
       else:
         put_yarn_site_property("yarn.nodemanager.aux-services", "spark_shuffle")