Hi,
I'd like to get available resources in a cluster (free CPU and Memory).
I tried with : (resourceCluster = object ClusterComputeResource)
var resourceCpu = ressourceCluster.summary.effectiveCpu;
var resourceMemory = ressourceCluster.summary.effectiveMemory;
In my logs I have :
[2012-12-03 10:16:47.609] [I] CPU Total : 96399
[2012-12-03 10:16:47.609] [I] Mémoire Totale : 163721
But I want available resources not the amount of resources... In red what I want :
Hi,
define myVcClusterComputeResource as the cluster (inout or general) you want the information from.
var myVcResourcePoolRuntimeInfoCpu = new VcResourcePoolRuntimeInfo() ;
var myVcResourcePoolRuntimeInfoMemory = new VcResourcePoolRuntimeInfo() ;
myVcResourcePoolRuntimeInfoCpu = myVcClusterComputeResource.resourcePool.runtime.cpu;
myVcResourcePoolRuntimeInfoMemory = myVcClusterComputeResource.resourcePool.runtime.memory;
System.log( myVcResourcePoolRuntimeInfoCpu.maxUsage );
System.log( myVcResourcePoolRuntimeInfoCpu.overallUsage );
System.log( myVcResourcePoolRuntimeInfoCpu.reservationUsed );
System.log( myVcResourcePoolRuntimeInfoCpu.reservationUsedForVm );
System.warn( myVcResourcePoolRuntimeInfoCpu.unreservedForPool );
System.warn( myVcResourcePoolRuntimeInfoCpu.unreservedForVm );
System.log( myVcResourcePoolRuntimeInfoMemory.maxUsage );
System.log( myVcResourcePoolRuntimeInfoMemory.overallUsage );
System.log( myVcResourcePoolRuntimeInfoMemory.reservationUsed );
System.log( myVcResourcePoolRuntimeInfoMemory.reservationUsedForVm );
System.warn( myVcResourcePoolRuntimeInfoMemory.unreservedForPool );
System.warn( myVcResourcePoolRuntimeInfoMemory.unreservedForVm );
You are looking for the unreserved* properties.
Regards,
Chris
Unfortunately, he didn' work for me.
My code :
var myVcResourcePoolRuntimeInfoCpu = new VcResourcePoolRuntimeInfo() ;
var myVcResourcePoolRuntimeInfoMemory = new VcResourcePoolRuntimeInfo() ;
myVcResourcePoolRuntimeInfoCpu = ressourceCluster.resourcePool.runtime.cpu;
myVcResourcePoolRuntimeInfoMemory = ressourceCluster.resourcePool.runtime.memory; System.log("Value : "+ressourceCluster);
System.log("Value CPU : "+myVcResourcePoolRuntimeInfoCpu);
System.log("Value Memory : "+myVcResourcePoolRuntimeInfoMemory);
System.log( myVcResourcePoolRuntimeInfoCpu.maxUsage );
System.log( myVcResourcePoolRuntimeInfoCpu.overallUsage );
System.log( myVcResourcePoolRuntimeInfoCpu.reservationUsed );
System.log( myVcResourcePoolRuntimeInfoCpu.reservationUsedForVm );
System.warn( myVcResourcePoolRuntimeInfoCpu.unreservedForPool );
System.warn( myVcResourcePoolRuntimeInfoCpu.unreservedForVm );
System.log( myVcResourcePoolRuntimeInfoMemory.maxUsage );
System.log( myVcResourcePoolRuntimeInfoMemory.overallUsage );
System.log( myVcResourcePoolRuntimeInfoMemory.reservationUsed );
System.log( myVcResourcePoolRuntimeInfoMemory.reservationUsedForVm );
System.warn( myVcResourcePoolRuntimeInfoMemory.unreservedForPool );
System.warn( myVcResourcePoolRuntimeInfoMemory.unreservedForVm );
My result :
[2012-12-03 14:49:21.495] [I] Value : DynamicWrapper (Instance) : [VcClusterComputeResource]-[class com.vmware.vmo.plugin.vi4.model.VimClusterComputeResource] -- VALUE : ClusterComputeResource<domain-c5440>'EnergeTIC'
[2012-12-03 14:49:21.495] [I] Value CPU : DynamicWrapper (Instance) : [VcResourcePoolResourceUsage]-[class com.vmware.vim.vi4.ResourcePoolResourceUsage] -- VALUE : com.vmware.vim.vi4.ResourcePoolResourceUsage@1
[2012-12-03 14:49:21.495] [I] Value Memory : DynamicWrapper (Instance) : [VcResourcePoolResourceUsage]-[class com.vmware.vim.vi4.ResourcePoolResourceUsage] -- VALUE : com.vmware.vim.vi4.ResourcePoolResourceUsage@1
[2012-12-03 14:49:21.496] [I] 0
[2012-12-03 14:49:21.496] [I] 0
[2012-12-03 14:49:21.496] [I] 0
[2012-12-03 14:49:21.496] [I] 0
[2012-12-03 14:49:21.496] [W] 0
[2012-12-03 14:49:21.497] [W] 0
[2012-12-03 14:49:21.497] [I] 0
[2012-12-03 14:49:21.497] [I] 0
[2012-12-03 14:49:21.497] [I] 0
[2012-12-03 14:49:21.498] [I] 0
[2012-12-03 14:49:21.498] [W] 0
[2012-12-03 14:49:21.499] [W] 0
In my Cluster Energetic, I 've multiple resources pool with reservations (CPU-Memory).
On my side it is working, with your code too.
The workflow shows the ressources for the root pool (the cluster itself) and not for any of the resource pools.
Regards
That's very curious, on my orchestrator 4.2.1 it doesn't work but on my orchestrator 5 it works... And i can't explain why....
Thank you Christian