Bläddra i källkod

[jb] Provide a generic page for YARN apps other than Spark or MR

Also fix Spark page
Romain Rigaux 10 år sedan
förälder
incheckning
f65e7d5

+ 2 - 3
apps/jobbrowser/src/jobbrowser/api.py

@@ -29,8 +29,7 @@ import hadoop.yarn.node_manager_api as node_manager_api
 
 from jobbrowser.conf import SHARE_JOBS
 from jobbrowser.models import Job, JobLinkage, TaskList, Tracker
-from jobbrowser.yarn_models import Application, Job as YarnJob, KilledJob as KilledYarnJob, Container
-from jobbrowser.yarn_models import SparkJob
+from jobbrowser.yarn_models import Application, Job as YarnJob, KilledJob as KilledYarnJob, Container, SparkJob
 from hadoop.cluster import get_next_ha_mrcluster, get_next_ha_yarncluster
 from desktop.lib.exceptions_renderable import PopupException
 
@@ -269,7 +268,7 @@ class YarnApi(JobBrowserApi):
         return KilledYarnJob(self.resource_manager_api, job)
 
       if job.get('applicationType') == 'SPARK':
-        job = YarnJob(job)
+        job = SparkJob(job)
       elif job.get('applicationType') == 'MAPREDUCE':
         jobid = jobid.replace('application', 'job')
 

+ 3 - 0
apps/jobbrowser/src/jobbrowser/yarn_models.py

@@ -80,6 +80,9 @@ class Application(object):
   def kill(self):
     return self.api.kill(self.id)
 
+  def filter_tasks(self, *args, **kwargs):
+    pass
+
 
 class SparkJob(Application):
 

+ 1 - 1
desktop/libs/hadoop/src/hadoop/cluster.py

@@ -179,7 +179,7 @@ def get_next_ha_yarncluster():
   for name in conf.YARN_CLUSTERS.keys():
     config = conf.YARN_CLUSTERS[name]
     if config.SUBMIT_TO.get():
-      rm = ResourceManagerApi(config.RESOURCE_MANAGER_API_URL.get(), config.SECURITY_ENABLED.get())
+      rm = ResourceManagerApi(config.RESOURCE_MANAGER_API_URL.get(), config.SECURITY_ENABLED.get(), config.SSL_CERT_CA_VERIFY.get())
       if has_ha:
         try:
           cluster_info = rm.cluster()

+ 1 - 0
desktop/libs/hadoop/src/hadoop/yarn/resource_manager_api.py

@@ -55,6 +55,7 @@ def get_resource_manager():
 
 
 class ResourceManagerApi(object):
+
   def __init__(self, oozie_url, security_enabled=False, ssl_cert_ca_verify=False):
     self._url = posixpath.join(oozie_url, 'ws', _API_VERSION)
     self._client = HttpClient(self._url, logger=LOG)