Updated Branches:
  refs/heads/trunk 764320235 -> 10dc7d6ad

AMBARI-4207 Frontend: History server should be managed as separate component. 
(ababiichuk)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/10dc7d6a
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/10dc7d6a
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/10dc7d6a

Branch: refs/heads/trunk
Commit: 10dc7d6addeeb0a243737a0788abb602608916dc
Parents: 7643202
Author: aBabiichuk <[email protected]>
Authored: Thu Jan 2 15:02:22 2014 +0200
Committer: aBabiichuk <[email protected]>
Committed: Thu Jan 2 15:02:22 2014 +0200

----------------------------------------------------------------------
 .../app/controllers/main/admin/security/add/step2.js  |  4 ++++
 .../app/controllers/main/service/info/configs.js      |  1 -
 ambari-web/app/data/global_properties.js              | 14 ++++++++++++++
 ambari-web/app/data/service_components.js             |  8 ++++++++
 ambari-web/app/data/service_configs.js                |  1 +
 ambari-web/app/mappers/server_data_mapper.js          |  2 +-
 ambari-web/app/mappers/service_metrics_mapper.js      |  4 ++++
 ambari-web/app/models/service/mapreduce.js            |  1 +
 ambari-web/app/models/service_config.js               |  2 +-
 9 files changed, 34 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/controllers/main/admin/security/add/step2.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/admin/security/add/step2.js 
b/ambari-web/app/controllers/main/admin/security/add/step2.js
index 0065d4b..acffb5b 100644
--- a/ambari-web/app/controllers/main/admin/security/add/step2.js
+++ b/ambari-web/app/controllers/main/admin/security/add/step2.js
@@ -245,6 +245,10 @@ App.MainAdminSecurityAddStep2Controller = 
Em.Controller.extend({
       if (jobTrackerHost) {
         jobTrackerHost.defaultValue = 
App.Service.find('MAPREDUCE').get('hostComponents').findProperty('componentName',
 'JOBTRACKER').get('host.hostName');
       }
+      var jobHistoryServerHost = mapReduceService.configs.findProperty('name', 
'jobhistoryserver_host');
+      if (jobHistoryServerHost) {
+        jobHistoryServerHost.defaultValue = 
App.Service.find('MAPREDUCE').get('hostComponents').findProperty('componentName',
 'HISTORYSERVER').get('host.hostName');
+      }
     }
     if (mapReduce2Service) {
       var jobHistoryServerHost = 
mapReduce2Service.configs.findProperty('name', 'jobhistoryserver_host');

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/controllers/main/service/info/configs.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/controllers/main/service/info/configs.js 
b/ambari-web/app/controllers/main/service/info/configs.js
index 5c9b97f..9a52bf7 100644
--- a/ambari-web/app/controllers/main/service/info/configs.js
+++ b/ambari-web/app/controllers/main/service/info/configs.js
@@ -1662,7 +1662,6 @@ App.MainServiceInfoConfigsController = 
Em.Controller.extend({
         var jobTrackerHost = serviceConfigs.findProperty('name', 
'jobtracker_host');
         jobTrackerHost.defaultValue = 
this.get('content.hostComponents').findProperty('componentName', 
'JOBTRACKER').get('host.hostName');
         globalConfigs.push(jobTrackerHost);
-        break;
       case 'MAPREDUCE2':
         var historyServerHost = serviceConfigs.findProperty('name', 'hs_host');
         historyServerHost.defaultValue = 
this.get('content.hostComponents').findProperty('componentName', 
'HISTORYSERVER').get('host.hostName');

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/data/global_properties.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/global_properties.js 
b/ambari-web/app/data/global_properties.js
index 957e831..6d3f66f 100644
--- a/ambari-web/app/data/global_properties.js
+++ b/ambari-web/app/data/global_properties.js
@@ -335,6 +335,20 @@ module.exports =
   
/**********************************************MAPREDUCE***************************************/
     {
       "id": "puppet var",
+      "name": "hs_host",
+      "displayName": "History Server",
+      "description": "History Server",
+      "defaultValue": "",
+      "isOverridable": false,
+      "displayType": "masterHost",
+      "isRequiredByAgent": false,
+      "isVisible": true,
+      "serviceName": "MAPREDUCE",
+      "category": "HistoryServer",
+      "index": 0
+    },
+    {
+      "id": "puppet var",
       "name": "jobtracker_host",
       "displayName": "JobTracker host",
       "value": "",

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/data/service_components.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/service_components.js 
b/ambari-web/app/data/service_components.js
index 6f20f53..db430e7 100644
--- a/ambari-web/app/data/service_components.js
+++ b/ambari-web/app/data/service_components.js
@@ -60,6 +60,14 @@ module.exports = new Ember.Set([
   },
   {
     service_name: 'MAPREDUCE',
+    component_name: 'HISTORYSERVER',
+    display_name: 'History Server',
+    isMaster: true,
+    isClient: false,
+    description: ''
+  },
+  {
+    service_name: 'MAPREDUCE',
     component_name: 'TASKTRACKER',
     display_name: 'TaskTracker',
     isMaster: false,

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/data/service_configs.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/data/service_configs.js 
b/ambari-web/app/data/service_configs.js
index ef69e69..4cab85f 100644
--- a/ambari-web/app/data/service_configs.js
+++ b/ambari-web/app/data/service_configs.js
@@ -56,6 +56,7 @@ module.exports = [
     displayName: 'MapReduce',
     filename: 'mapred-site',
     configCategories: [
+      App.ServiceConfigCategory.create({ name: 'HistoryServer', displayName : 
'History Server', hostComponentNames : ['HISTORYSERVER']}),
       App.ServiceConfigCategory.create({ name: 'JobTracker', displayName : 
'JobTracker', hostComponentNames : ['JOBTRACKER']}),
       App.ServiceConfigCategory.create({ name: 'TaskTracker', displayName : 
'TaskTracker', hostComponentNames : ['TASKTRACKER']}),
       App.ServiceConfigCategory.create({ name: 'General', displayName : 
'General'}),

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/mappers/server_data_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/server_data_mapper.js 
b/ambari-web/app/mappers/server_data_mapper.js
index c4ec922..c03e065 100644
--- a/ambari-web/app/mappers/server_data_mapper.js
+++ b/ambari-web/app/mappers/server_data_mapper.js
@@ -184,7 +184,7 @@ App.QuickDataMapper.componentServiceMap = {
   'TASKTRACKER': 'MAPREDUCE',
   'MAPREDUCE_CLIENT': 'MAPREDUCE',
   'MAPREDUCE2_CLIENT': 'MAPREDUCE2',
-  'HISTORYSERVER': 'MAPREDUCE2',
+  'HISTORYSERVER': App.get('isHadoop2Stack') ? 'MAPREDUCE2' : 'MAPREDUCE',
   'TEZ_CLIENT': 'TEZ',
   'RESOURCEMANAGER': 'YARN',
   'YARN_CLIENT': 'YARN',

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/mappers/service_metrics_mapper.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/mappers/service_metrics_mapper.js 
b/ambari-web/app/mappers/service_metrics_mapper.js
index c25e353..24340e9 100644
--- a/ambari-web/app/mappers/service_metrics_mapper.js
+++ b/ambari-web/app/mappers/service_metrics_mapper.js
@@ -91,6 +91,7 @@ App.serviceMetricsMapper = App.QuickDataMapper.create({
   },
   mapReduceConfig: {
     version: 'jobTrackerComponent.ServiceComponentInfo.Version',
+    job_history_server_id: 
'jobHistoryServerComponent.host_components[0].HostRoles.host_name',
     job_tracker_id: 
'jobTrackerComponent.host_components[0].HostRoles.host_name',
     job_tracker_start_time: 
'jobTrackerComponent.ServiceComponentInfo.StartTime',
     job_tracker_heap_used: 
'jobTrackerComponent.ServiceComponentInfo.HeapMemoryUsed',
@@ -526,6 +527,9 @@ App.serviceMetricsMapper = App.QuickDataMapper.create({
             item.black_list_trackers.push(nj.hostname);
           });
         }
+      } else if (component.ServiceComponentInfo && 
component.ServiceComponentInfo.component_name == "HISTORYSERVER") {
+        item.jobHistoryServerComponent = component;
+        finalConfig = jQuery.extend(finalConfig, mapReduceConfig);
       }
     });
     // Map

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/models/service/mapreduce.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/service/mapreduce.js 
b/ambari-web/app/models/service/mapreduce.js
index 9200635..88dc095 100644
--- a/ambari-web/app/models/service/mapreduce.js
+++ b/ambari-web/app/models/service/mapreduce.js
@@ -19,6 +19,7 @@ var App = require('app');
 
 App.MapReduceService = App.Service.extend({
   version: DS.attr('string'),
+  jobHistoryServer: DS.belongsTo('App.Host'),
   jobTracker: DS.belongsTo('App.Host'),
   taskTrackers: function () {
     return this.get('hostComponents').filterProperty('componentName', 
'TASKTRACKER').mapProperty('host');

http://git-wip-us.apache.org/repos/asf/ambari/blob/10dc7d6a/ambari-web/app/models/service_config.js
----------------------------------------------------------------------
diff --git a/ambari-web/app/models/service_config.js 
b/ambari-web/app/models/service_config.js
index 40568c8..e8ee95e 100644
--- a/ambari-web/app/models/service_config.js
+++ b/ambari-web/app/models/service_config.js
@@ -352,7 +352,7 @@ App.ServiceConfigProperty = Ember.Object.extend({
         this.setDefaultValue("(\\w*)(?=:)",jtHost);
         break;
       case 'mapreduce.history.server.http.address':
-        var jtHost = masterComponentHostsInDB.findProperty('component', 
'JOBTRACKER').hostName;
+        var jtHost = masterComponentHostsInDB.findProperty('component', 
'HISTORYSERVER').hostName;
         this.setDefaultValue("(\\w*)(?=:)",jtHost);
         break;
       case 'tasktracker_hosts':

Reply via email to