|
@@ -23,6 +23,7 @@ App.MainServiceItemView = Em.View.extend({
|
|
maintenance: function(){
|
|
maintenance: function(){
|
|
var options = [];
|
|
var options = [];
|
|
var service = this.get('controller.content');
|
|
var service = this.get('controller.content');
|
|
|
|
+ var hosts = App.Host.find().content.length;
|
|
var allMasters = this.get('controller.content.hostComponents').filterProperty('isMaster').mapProperty('componentName').uniq();
|
|
var allMasters = this.get('controller.content.hostComponents').filterProperty('isMaster').mapProperty('componentName').uniq();
|
|
var reassignableMasters = ['NAMENODE', 'SECONDARY_NAMENODE', 'JOBTRACKER', 'RESOURCEMANAGER'];
|
|
var reassignableMasters = ['NAMENODE', 'SECONDARY_NAMENODE', 'JOBTRACKER', 'RESOURCEMANAGER'];
|
|
switch (service.get('serviceName')) {
|
|
switch (service.get('serviceName')) {
|
|
@@ -32,7 +33,7 @@ App.MainServiceItemView = Em.View.extend({
|
|
case 'YARN':
|
|
case 'YARN':
|
|
case 'HDFS':
|
|
case 'HDFS':
|
|
case 'MAPREDUCE':
|
|
case 'MAPREDUCE':
|
|
- if (App.supports.reassignMaster) {
|
|
|
|
|
|
+ if (App.supports.reassignMaster && hosts > 1) {
|
|
allMasters.forEach(function (hostComponent) {
|
|
allMasters.forEach(function (hostComponent) {
|
|
if (reassignableMasters.contains(hostComponent)) {
|
|
if (reassignableMasters.contains(hostComponent)) {
|
|
options.push({action: 'reassignMaster', context: hostComponent,
|
|
options.push({action: 'reassignMaster', context: hostComponent,
|