Jelajahi Sumber

AMBARI-6059. Add refreshQueues custom command to YARN service (Jeff Sposetti via ncole)

Nate Cole 11 tahun lalu
induk
melakukan
2eb7fcccde

+ 8 - 0
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/metainfo.xml

@@ -43,6 +43,14 @@
                 <timeout>600</timeout>
               </commandScript>
             </customCommand>
+            <customCommand>
+              <name>REFRESHQUEUES</name>
+              <commandScript>
+                <script>scripts/resourcemanager.py</script>
+                <scriptType>PYTHON</scriptType>
+                <timeout>600</timeout>
+              </commandScript>
+            </customCommand>
           </customCommands>
         </component>
 

+ 10 - 0
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/package/scripts/resourcemanager.py

@@ -62,6 +62,16 @@ class Resourcemanager(Script):
     check_process_status(status_params.resourcemanager_pid_file)
     pass
 
+  def refreshqueues(self, env):
+    import params
+
+    self.configure(env)
+    env.set_params(params)
+
+    service('resourcemanager',
+            action='refreshQueues'
+    )
+
   def decommission(self, env):
     import params
 

+ 7 - 0
ambari-server/src/main/resources/stacks/HDP/2.0.6/services/YARN/package/scripts/service.py

@@ -60,3 +60,10 @@ def service(componentName, action='start', serviceName='yarn'):
     Execute(rm_pid,
             user=usr
     )
+
+  elif action == 'refreshQueues':
+    refresh_cmd = format("{yarn_bin}/yarn rmadmin -refreshQueues")
+
+    Execute(refresh_cmd,
+            user=usr,
+    )