def _parseMemoryParameters(self, output): """ This procedure parses and sets the values of the Memory Configuration for the Managed System @param output: output of 'lshwres -r mem --level sys <Managed System>' command @type output: String @param managedSysDo: data object of ManagedSystemDo @type managedSysDo: ManagedSystemDo class instace """ if output: propertiesDict = self.buildPropertiesDict(output) memoryParameters = ibm_hmc_lib.ManagedSystemMemoryParameters() memoryParameters.configurableSysMem = ibm_hmc_lib.toLong( propertiesDict.get('configurable_sys_mem')) memoryParameters.memRegSize = ibm_hmc_lib.toInteger( propertiesDict.get('mem_region_size')) memoryParameters.currAvailMem = ibm_hmc_lib.toLong( propertiesDict.get('curr_avail_sys_mem')) memoryParameters.installedMem = ibm_hmc_lib.toLong( propertiesDict.get('installed_sys_mem')) memoryParameters.reqHugePagesNum = ibm_hmc_lib.toLong( propertiesDict.get('requested_num_sys_huge_pages')) memoryParameters.pendingAvailMem = ibm_hmc_lib.toLong( propertiesDict.get('pend_avail_sys_mem')) memoryParameters.firmwareMem = ibm_hmc_lib.toLong( propertiesDict.get('sys_firmware_mem')) memoryParameters.hugePageSize = ibm_hmc_lib.toLong( propertiesDict.get('huge_page_size')) memoryParameters.maxNumberHugePages = ibm_hmc_lib.toInteger( propertiesDict.get('max_num_sys_huge_pages')) return memoryParameters
def _parseLparProfile(self, buffer): """ This function performs parsing of the command output lssysscfg -r prof -m '<Managed System Name>' bloc and sets the values for IbmLparProfileDo @param buffer: command output buffer @type buffer: String @return: instance of IbmLparProfileDo class """ if buffer : propertiesDict = self.buildPropertiesDict(buffer) lparId = ibm_hmc_lib.toInteger(propertiesDict.get('lpar_id')) if not lparId: raise ValueError('Failed to parse out Lpar Id for buffer %s' % buffer) lparProfile = ibm_fsm.IbmLparProfile() lparProfile.desNumHugePages = ibm_hmc_lib.toInteger(propertiesDict.get('desired_num_huge_pages')) lparProfile.minNumHugePages = ibm_hmc_lib.toInteger(propertiesDict.get('min_num_huge_pages')) lparProfile.maxNumHugePages = ibm_hmc_lib.toInteger(propertiesDict.get('max_num_huge_pages')) lparProfile.desCpu = ibm_hmc_lib.toInteger(propertiesDict.get('desired_procs')) lparProfile.minCpu = ibm_hmc_lib.toInteger(propertiesDict.get('min_procs')) lparProfile.maxCpu = ibm_hmc_lib.toInteger(propertiesDict.get('max_procs')) lparProfile.desPhysCpu = ibm_hmc_lib.toFloat(propertiesDict.get('desired_proc_units')) lparProfile.minPhysCpu = ibm_hmc_lib.toFloat(propertiesDict.get('min_proc_units')) lparProfile.maxPhysCpu = ibm_hmc_lib.toFloat(propertiesDict.get('max_proc_units')) lparProfile.desMem = ibm_hmc_lib.toLong(propertiesDict.get('desired_mem')) lparProfile.minMem = ibm_hmc_lib.toLong(propertiesDict.get('min_mem')) lparProfile.maxMem = ibm_hmc_lib.toLong(propertiesDict.get('max_mem')) lparProfile.sharingMode = propertiesDict.get('sharing_mode') if lparProfile.sharingMode and lparProfile.sharingMode not in ibm_fsm.LPAR_SHARING_MODES: logger.warn('Unsupported sharing mode: %s. Setting to None.' % lparProfile.sharingMode) lparProfile.sharingMode = None lparProfile.cpuMode = propertiesDict.get('proc_mode') if lparProfile.cpuMode and ibm_fsm.LPAR_CPU_MODES.has_key(lparProfile.cpuMode): lparProfile.cpuMode = ibm_fsm.LPAR_CPU_MODES.get(lparProfile.cpuMode) else: logger.warn('Unsupported CPU mode %s. Setting to None' % lparProfile.cpuMode) lparProfile.cpuMode = None lparProfile.uncapWeight = ibm_hmc_lib.toInteger(propertiesDict.get('uncap_weight')) lparProfile.connMonEnabled = ibm_hmc_lib.toInteger(propertiesDict.get('conn_monitoring')) lparProfile.maxVirtSlots = ibm_hmc_lib.toInteger(propertiesDict.get('max_virtual_slots')) lparProfile.ioPoolIds = propertiesDict.get('lpar_io_pool_ids') lparProfile.virtSerialAdapters = propertiesDict.get('virtual_serial_adapters') return {lparId : lparProfile}
def _parseMemoryParameters(self, output): """ This procedure parses and sets the values of the Memory Configuration for the Managed System @param output: output of 'lshwres -r mem --level sys <Managed System>' command @type output: String @param managedSysDo: data object of ManagedSystemDo @type managedSysDo: ManagedSystemDo class instace """ if output: propertiesDict = self.buildPropertiesDict(output) memoryParameters = ibm_hmc_lib.ManagedSystemMemoryParameters() memoryParameters.configurableSysMem = ibm_hmc_lib.toLong(propertiesDict.get('configurable_sys_mem')) memoryParameters.memRegSize = ibm_hmc_lib.toInteger(propertiesDict.get('mem_region_size')) memoryParameters.currAvailMem = ibm_hmc_lib.toLong(propertiesDict.get('curr_avail_sys_mem')) memoryParameters.installedMem = ibm_hmc_lib.toLong(propertiesDict.get('installed_sys_mem')) memoryParameters.reqHugePagesNum = ibm_hmc_lib.toLong(propertiesDict.get('requested_num_sys_huge_pages')) memoryParameters.pendingAvailMem = ibm_hmc_lib.toLong(propertiesDict.get('pend_avail_sys_mem')) memoryParameters.firmwareMem = ibm_hmc_lib.toLong(propertiesDict.get('sys_firmware_mem')) memoryParameters.hugePageSize = ibm_hmc_lib.toLong(propertiesDict.get('huge_page_size')) memoryParameters.maxNumberHugePages = ibm_hmc_lib.toInteger(propertiesDict.get('max_num_sys_huge_pages')) return memoryParameters
def _parseLparProfile(self, buffer): """ This function performs parsing of the command output lssysscfg -r prof -m '<Managed System Name>' bloc and sets the values for IbmLparProfileDo @param buffer: command output buffer @type buffer: String @return: instance of IbmLparProfileDo class """ if buffer: propertiesDict = self.buildPropertiesDict(buffer) lparId = ibm_hmc_lib.toInteger(propertiesDict.get('lpar_id')) if not lparId: raise ValueError('Failed to parse out Lpar Id for buffer %s' % buffer) lparProfile = ibm_fsm.IbmLparProfile() lparProfile.desNumHugePages = ibm_hmc_lib.toInteger( propertiesDict.get('desired_num_huge_pages')) lparProfile.minNumHugePages = ibm_hmc_lib.toInteger( propertiesDict.get('min_num_huge_pages')) lparProfile.maxNumHugePages = ibm_hmc_lib.toInteger( propertiesDict.get('max_num_huge_pages')) lparProfile.desCpu = ibm_hmc_lib.toInteger( propertiesDict.get('desired_procs')) lparProfile.minCpu = ibm_hmc_lib.toInteger( propertiesDict.get('min_procs')) lparProfile.maxCpu = ibm_hmc_lib.toInteger( propertiesDict.get('max_procs')) lparProfile.desPhysCpu = ibm_hmc_lib.toFloat( propertiesDict.get('desired_proc_units')) lparProfile.minPhysCpu = ibm_hmc_lib.toFloat( propertiesDict.get('min_proc_units')) lparProfile.maxPhysCpu = ibm_hmc_lib.toFloat( propertiesDict.get('max_proc_units')) lparProfile.desMem = ibm_hmc_lib.toLong( propertiesDict.get('desired_mem')) lparProfile.minMem = ibm_hmc_lib.toLong( propertiesDict.get('min_mem')) lparProfile.maxMem = ibm_hmc_lib.toLong( propertiesDict.get('max_mem')) lparProfile.sharingMode = propertiesDict.get('sharing_mode') if lparProfile.sharingMode and lparProfile.sharingMode not in ibm_fsm.LPAR_SHARING_MODES: logger.warn('Unsupported sharing mode: %s. Setting to None.' % lparProfile.sharingMode) lparProfile.sharingMode = None lparProfile.cpuMode = propertiesDict.get('proc_mode') if lparProfile.cpuMode and ibm_fsm.LPAR_CPU_MODES.has_key( lparProfile.cpuMode): lparProfile.cpuMode = ibm_fsm.LPAR_CPU_MODES.get( lparProfile.cpuMode) else: logger.warn('Unsupported CPU mode %s. Setting to None' % lparProfile.cpuMode) lparProfile.cpuMode = None lparProfile.uncapWeight = ibm_hmc_lib.toInteger( propertiesDict.get('uncap_weight')) lparProfile.connMonEnabled = ibm_hmc_lib.toInteger( propertiesDict.get('conn_monitoring')) lparProfile.maxVirtSlots = ibm_hmc_lib.toInteger( propertiesDict.get('max_virtual_slots')) lparProfile.ioPoolIds = propertiesDict.get('lpar_io_pool_ids') lparProfile.virtSerialAdapters = propertiesDict.get( 'virtual_serial_adapters') return {lparId: lparProfile}