Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 1518326 - Memory amounts incorrectly reported when Dynamic Memory is utilized in SCVMM Providers
Summary: Memory amounts incorrectly reported when Dynamic Memory is utilized in SCVMM ...
Alias: None
Product: Red Hat CloudForms Management Engine
Classification: Red Hat
Component: Providers
Version: 5.8.0
Hardware: Unspecified
OS: Unspecified
Target Milestone: GA
: cfme-future
Assignee: Adam Grare
QA Contact: Dave Johnson
Depends On:
TreeView+ depends on / blocked
Reported: 2017-11-28 16:04 UTC by Robb Manes
Modified: 2018-12-11 16:54 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2018-12-11 16:54:51 UTC
Category: ---
Cloudforms Team: ---
Target Upstream Version:

Attachments (Terms of Use)

System ID Priority Status Summary Last Updated
Red Hat Knowledge Base (Solution) 3253141 None None None 2017-11-28 16:19:56 UTC

Description Robb Manes 2017-11-28 16:04:35 UTC
Description of problem:
Memory can be incorrectly reported in CloudForms due to a mismatch between the fields "Memory" and "MemoryAssignedMB" when Dynamic Memory is utilized in SCVMM.

When displaying, via the API or UI, the amount of memory for a VM in SCVMM, the field "Memory" is used:

    def process_vm_hardware(vm)
	:cpu_sockets          => vm['CPUCount'],
	:cpu_cores_per_socket => 1,
	:cpu_total_cores      => vm['CPUCount'],
	:guest_os             => vm['OperatingSystem']['Name'],
	:guest_os_full_name   => process_vm_os_description(vm),
	:memory_mb            => vm['Memory'],
	:cpu_type             => vm['CPUType']['Name'],
	:disks                => process_disks(vm),
	:networks             => process_hostname_and_ip(vm),
	:guest_devices        => process_vm_guest_devices(vm),
	:bios                 => vm['BiosGuid']

However, when we query SCVMM from the PowerShell scripts, there is more than one memory setting available that more accurately represents the amount of memory allocated to a VM at any given time, as referenced here:

In the above scenario, a VM queried directly like so has 12288MB of RAM assigned to it, visible from SCVMM and from inside of the VM itself:

PS C:\Users\S224098> Get-VM -Name CLOUDFORMS-TEST-VM
DynamicMemoryMaximumMB              : 12288
DynamicMemoryMinimumMB              : 2048
Memory                              : 2048
MemoryAssignedMB                    : 12288
MemoryAvailablePercentage           :
DynamicMemoryDemandMB               : 13025
- - - - - 8< - - - - -

# free -m
              total        used        free      shared  buff/cache   available
Mem:          12007        7252        3703         119        1050        4463
Swap:          8699           1        8698

But still CloudForms will utilize the "Memory" value to reflect the amount of total memory rather than a potentially more accurate value such as vm_maximum_memory and have it assigned to MemoryAssignedMB or some other calculation of the available memory parameters.

Version-Release number of selected component (if applicable):
Tested on latest 5.8/4.5.

How reproducible:
Every Time

Steps to Reproduce:
1. Provision a VM in SCVMM
2. Increase the Dynamic Memory available to the VM
3. CloudForms does not reflect the VM's true memory utilization when the VM utilizes Dynamic Memory

Actual results:
VM's memory reflected in CFME does not match what SCVMM or the VM sees when Dynamic Memory is being utilized

Expected results:
We may desire the VM to more accurately reflect the memory in use when utilizing Dynamic Memory in SCVMM.

Additional info:
This was discussed a little in but not specifically as it relates to displaying the most accurate amount of memory in use.

Note You need to log in before you can comment on or make changes to this bug.