Revert "Cluster capacity calculation fix"
Cluster capacity calculation take into account hardware parameters of all the cluster nodes despite on their roles. This reverts commit I0a44cbfa60625ad06c879cf1aac01317b073b802 Related-Bug: #1556909 Change-Id: I183c15cb22e6ccbfa7209053c64ae72db7b1a160
This commit is contained in:
parent
bc15921ecf
commit
95fec6d9c6
@ -359,33 +359,6 @@ models.Cluster = BaseModel.extend({
|
||||
!this.task({group: 'deployment', active: true}) &&
|
||||
(this.get('status') !== 'operational' || this.hasChanges({configModels}));
|
||||
},
|
||||
getCapacity() {
|
||||
var result = {
|
||||
cores: 0,
|
||||
ht_cores: 0,
|
||||
ram: 0,
|
||||
hdd: 0
|
||||
};
|
||||
if (!this.get('nodes').length) return result;
|
||||
var resourceToRoleGroupMap = {
|
||||
cores: 'compute',
|
||||
ht_cores: 'compute',
|
||||
ram: 'compute',
|
||||
hdd: 'storage'
|
||||
};
|
||||
var groupedRoles = {};
|
||||
_.each(['compute', 'storage'], (group) => {
|
||||
groupedRoles[group] = this.get('roles')
|
||||
.filter({group})
|
||||
.map((role) => role.get('name'));
|
||||
});
|
||||
this.get('nodes').each((node) => {
|
||||
_.each(resourceToRoleGroupMap, (group, resourceName) => {
|
||||
if (node.hasRole(groupedRoles[group])) result[resourceName] += node.resource(resourceName);
|
||||
});
|
||||
});
|
||||
return result;
|
||||
},
|
||||
isConfigurationChanged({configModels}) {
|
||||
var deployedSettings = this.get('deployedSettings');
|
||||
var deployedNetworkConfiguration = this.get('deployedNetworkConfiguration');
|
||||
@ -564,8 +537,7 @@ models.Nodes = BaseCollection.extend({
|
||||
return _.filter(this.nodesAfterDeployment(), (node) => node.hasRole(role));
|
||||
},
|
||||
resources(resourceName) {
|
||||
var resources = this.map((node) => node.resource(resourceName));
|
||||
return _.reduce(resources, (sum, n) => sum + n, 0);
|
||||
return _.reduce(this.invoke('resource', resourceName), (sum, n) => sum + n, 0);
|
||||
},
|
||||
getLabelValues(label) {
|
||||
return this.invoke('getLabel', label);
|
||||
|
@ -989,7 +989,7 @@ var ClusterInfo = React.createClass({
|
||||
},
|
||||
renderClusterCapacity() {
|
||||
var capacityNs = ns + 'cluster_info_fields.';
|
||||
var capacity = this.props.cluster.getCapacity();
|
||||
var nodes = this.props.cluster.get('nodes');
|
||||
|
||||
return (
|
||||
<div className='row capacity-block content-elements'>
|
||||
@ -997,15 +997,21 @@ var ClusterInfo = React.createClass({
|
||||
<div className='col-xs-12 capacity-items'>
|
||||
<div className='col-xs-4 cpu'>
|
||||
<span>{i18n(capacityNs + 'cpu_cores')}</span>
|
||||
<span className='capacity-value'>{capacity.cores} ({capacity.ht_cores})</span>
|
||||
<span className='capacity-value'>
|
||||
{nodes.resources('cores')} ({nodes.resources('ht_cores')})
|
||||
</span>
|
||||
</div>
|
||||
<div className='col-xs-4 ram'>
|
||||
<span>{i18n(capacityNs + 'ram')}</span>
|
||||
<span className='capacity-value'>{utils.showSize(capacity.ram)}</span>
|
||||
<span className='capacity-value'>
|
||||
{utils.showSize(nodes.resources('ram'))}
|
||||
</span>
|
||||
</div>
|
||||
<div className='col-xs-4 hdd'>
|
||||
<span>{i18n(capacityNs + 'hdd')}</span>
|
||||
<span className='capacity-value'>{utils.showSize(capacity.hdd)}</span>
|
||||
<span className='capacity-value'>
|
||||
{utils.showSize(nodes.resources('hdd'))}
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -38,19 +38,12 @@ ClustersPage = React.createClass({
|
||||
|
||||
return $.when(clusters.fetch(), nodes.fetch(), tasks.fetch())
|
||||
.then(() => {
|
||||
var requests = [];
|
||||
clusters.each((cluster) => {
|
||||
cluster.set('nodes', new models.Nodes(nodes.filter({cluster: cluster.id})));
|
||||
cluster.set('tasks', new models.Tasks(tasks.filter({cluster: cluster.id})));
|
||||
|
||||
var roles = new models.Roles();
|
||||
roles.url = _.result(cluster, 'url') + '/roles';
|
||||
cluster.set({roles: roles});
|
||||
requests.push(cluster.get('roles').fetch());
|
||||
});
|
||||
return $.when(...requests);
|
||||
})
|
||||
.then(() => ({clusters}));
|
||||
return ({clusters});
|
||||
});
|
||||
}
|
||||
},
|
||||
render() {
|
||||
@ -144,7 +137,6 @@ Cluster = React.createClass({
|
||||
!!cluster.task({name: 'cluster_deletion', status: 'ready'});
|
||||
var deploymentTask = cluster.task({group: 'deployment', active: true});
|
||||
var Tag = isClusterDeleting ? 'div' : 'a';
|
||||
var capacity = cluster.getCapacity();
|
||||
return (
|
||||
<div className='col-xs-3'>
|
||||
<Tag
|
||||
@ -165,19 +157,19 @@ Cluster = React.createClass({
|
||||
{i18n('clusters_page.cluster_hardware_cpu')}
|
||||
</div>,
|
||||
<div key='cpu-value' className='value'>
|
||||
{capacity.cores} ({capacity.ht_cores})
|
||||
{nodes.resources('cores')} ({nodes.resources('ht_cores')})
|
||||
</div>,
|
||||
<div key='ram-title' className='item'>
|
||||
{i18n('clusters_page.cluster_hardware_ram')}
|
||||
</div>,
|
||||
<div key='ram-value' className='value'>
|
||||
{utils.showSize(capacity.ram)}
|
||||
{utils.showSize(nodes.resources('ram'))}
|
||||
</div>,
|
||||
<div key='hdd-title' className='item'>
|
||||
{i18n('clusters_page.cluster_hardware_hdd')}
|
||||
</div>,
|
||||
<div key='hdd-value' className='value'>
|
||||
{utils.showSize(capacity.hdd)}
|
||||
{utils.showSize(nodes.resources('hdd'))}
|
||||
</div>
|
||||
]}
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user