This is an automated email from the ASF dual-hosted git repository.

ababiichuk pushed a commit to branch branch-2.7
in repository https://gitbox.apache.org/repos/asf/ambari.git


The following commit(s) were added to refs/heads/branch-2.7 by this push:
     new bfcec7b  AMBARI-24525 Accumulo does not startup in Federated Cluster. 
(ababiichuk)
bfcec7b is described below

commit bfcec7bf72677785539eae5130ed56ed84877e06
Author: ababiichuk <[email protected]>
AuthorDate: Wed Aug 22 17:30:14 2018 +0300

    AMBARI-24525 Accumulo does not startup in Federated Cluster. (ababiichuk)
---
 .../main/admin/federation/step3_controller.js      | 55 +++++++++++++++++++---
 .../main/admin/federation/step4_controller.js      | 10 +++-
 .../data/configs/wizards/federation_properties.js  |  3 +-
 3 files changed, 60 insertions(+), 8 deletions(-)

diff --git 
a/ambari-web/app/controllers/main/admin/federation/step3_controller.js 
b/ambari-web/app/controllers/main/admin/federation/step3_controller.js
index 50dd211..1f9890b 100644
--- a/ambari-web/app/controllers/main/admin/federation/step3_controller.js
+++ b/ambari-web/app/controllers/main/admin/federation/step3_controller.js
@@ -53,27 +53,29 @@ App.NameNodeFederationWizardStep3Controller = 
Em.Controller.extend(App.Blueprint
     return App.ajax.send({
       name: 'config.tags',
       sender: this,
-      success: 'onLoadConfigsTags',
-      error: 'onTaskError'
+      success: 'onLoadConfigsTags'
     });
   },
 
 
   onLoadConfigsTags: function (data) {
+    var servicesModel = App.Service.find();
     var urlParams = '(type=hdfs-site&tag=' + 
data.Clusters.desired_configs['hdfs-site'].tag + ')';
-    if (App.Service.find().someProperty('serviceName', 'RANGER')) {
+    if (servicesModel.someProperty('serviceName', 'RANGER')) {
       urlParams += '|(type=core-site&tag=' + 
data.Clusters.desired_configs['core-site'].tag + ')' +
       '|(type=ranger-tagsync-site&tag=' + 
data.Clusters.desired_configs['ranger-tagsync-site'].tag + ')' +
           '|(type=ranger-hdfs-security&tag=' + 
data.Clusters.desired_configs['ranger-hdfs-security'].tag + ')'
     }
+    if (servicesModel.someProperty('serviceName', 'ACCUMULO')) {
+      urlParams += '|(type=accumulo-site&tag=' + 
data.Clusters.desired_configs['accumulo-site'].tag + ')';
+    }
     App.ajax.send({
       name: 'admin.get.all_configurations',
       sender: this,
       data: {
         urlParams: urlParams
       },
-      success: 'onLoadConfigs',
-      error: 'onTaskError'
+      success: 'onLoadConfigs'
     });
   },
 
@@ -131,6 +133,7 @@ App.NameNodeFederationWizardStep3Controller = 
Em.Controller.extend(App.Blueprint
   },
 
   tweakServiceConfigs: function (configs) {
+    var servicesModel = App.Service.find();
     var dependencies = this.prepareDependencies();
     var nameServices = 
App.HDFSService.find().objectAt(0).get('masterComponentGroups').mapProperty('name');
     nameServices.push(dependencies.newNameservice);
@@ -147,7 +150,7 @@ App.NameNodeFederationWizardStep3Controller = 
Em.Controller.extend(App.Blueprint
       ]);
     }
 
-    if (App.Service.find().someProperty('serviceName', 'RANGER')) {
+    if (servicesModel.someProperty('serviceName', 'RANGER')) {
       var hdfsRangerConfigs = 
this.get('serverConfigData').items.findProperty('type', 
'ranger-hdfs-security').properties;
       var reponamePrefix = 
hdfsRangerConfigs['ranger.plugin.hdfs.service.name'] === '{{repo_name}}' ? 
dependencies.clustername + '_hadoop_' : 
hdfsRangerConfigs['ranger.plugin.hdfs.service.name'] + '_';
       var coreSiteConfigs = 
this.get('serverConfigData').items.findProperty('type', 'core-site').properties;
@@ -159,6 +162,46 @@ App.NameNodeFederationWizardStep3Controller = 
Em.Controller.extend(App.Blueprint
       }, this);
     }
 
+    if (servicesModel.someProperty('serviceName', 'ACCUMULO')) {
+      var hdfsNameSpacesModel = 
App.HDFSService.find().objectAt(0).get('masterComponentGroups');
+      var newNameSpace = this.get('content.nameServiceId');
+      var volumesValue = nameServices.map(function (ns) {
+        return 'hdfs://' + ns + '/apps/accumulo/data';
+      }).join();
+      var replacementsValue = nameServices.map(function (ns) {
+        var hostName;
+        if (ns === newNameSpace) {
+          var hostNames = 
this.get('content.masterComponentHosts').filter(function (hc) {
+            return hc.component === 'NAMENODE' && !hc.isInstalled;
+          }).mapProperty('hostName');
+          hostName = hostNames[0];
+        } else {
+          var nameSpaceObject = hdfsNameSpacesModel.findProperty('name', ns);
+          hostName = nameSpaceObject && nameSpaceObject.hosts[0];
+        }
+        return 'hdfs://' + hostName + ':8020/apps/accumulo/data hdfs://' + ns 
+ '/apps/accumulo/data';
+      }, this).join();
+      configs.push({
+        name: 'instance.volumes',
+        displayName: 'instance.volumes',
+        isReconfigurable: false,
+        value: volumesValue,
+        recommendedValue: volumesValue,
+        category: 'ACCUMULO',
+        filename: 'accumulo-site',
+        serviceName: 'MISC'
+      }, {
+        name: 'instance.volumes.replacements',
+        displayName: 'instance.volumes.replacements',
+        isReconfigurable: false,
+        value: replacementsValue,
+        recommendedValue: replacementsValue,
+        category: 'ACCUMULO',
+        filename: 'accumulo-site',
+        serviceName: 'MISC'
+      });
+    }
+
     configs.forEach(function (config) {
       if (!configsToRemove.contains(config.name)) {
         config.isOverridable = false;
diff --git 
a/ambari-web/app/controllers/main/admin/federation/step4_controller.js 
b/ambari-web/app/controllers/main/admin/federation/step4_controller.js
index bf340f0..605c22f 100644
--- a/ambari-web/app/controllers/main/admin/federation/step4_controller.js
+++ b/ambari-web/app/controllers/main/admin/federation/step4_controller.js
@@ -50,6 +50,7 @@ App.NameNodeFederationWizardStep4Controller = 
App.HighAvailabilityProgressPageCo
   },
 
   reconfigureServices: function () {
+    var servicesModel = App.Service.find();
     var configs = [];
     var data = this.get('content.serviceConfigProperties');
     var note = 
Em.I18n.t('admin.nameNodeFederation.wizard,step4.save.configuration.note');
@@ -58,13 +59,20 @@ App.NameNodeFederationWizardStep4Controller = 
App.HighAvailabilityProgressPageCo
         desired_config: this.reconfigureSites(['hdfs-site'], data, note)
       }
     });
-    if (App.Service.find().someProperty('serviceName', 'RANGER')) {
+    if (servicesModel.someProperty('serviceName', 'RANGER')) {
       configs.push({
         Clusters: {
           desired_config: this.reconfigureSites(['ranger-tagsync-site'], data, 
note)
         }
       });
     }
+    if (servicesModel.someProperty('serviceName', 'ACCUMULO')) {
+      configs.push({
+        Clusters: {
+          desired_config: this.reconfigureSites(['accumulo-site'], data, note)
+        }
+      });
+    }
     return App.ajax.send({
       name: 'common.service.multiConfigurations',
       sender: this,
diff --git a/ambari-web/app/data/configs/wizards/federation_properties.js 
b/ambari-web/app/data/configs/wizards/federation_properties.js
index a0e632b..66b97b7 100644
--- a/ambari-web/app/data/configs/wizards/federation_properties.js
+++ b/ambari-web/app/data/configs/wizards/federation_properties.js
@@ -23,7 +23,8 @@ module.exports =
     displayName: 'MISC',
     configCategories: [
       App.ServiceConfigCategory.create({ name: 'HDFS', displayName: 'HDFS'}),
-      App.ServiceConfigCategory.create({ name: 'RANGER', displayName: 
'Ranger'})
+      App.ServiceConfigCategory.create({ name: 'RANGER', displayName: 
'Ranger'}),
+      App.ServiceConfigCategory.create({ name: 'ACCUMULO', displayName: 
'Accumulo'})
     ],
     sites: ['core-site'],
     configs: [

Reply via email to