Manage backends in the current zone.
Bases: object
Mutable and immutable information tracked for a volume backend.
Incrementally update host state from a volume.
Update information about a host from its volume_node info.
‘capability’ is the status info reported by volume backend, a typical capability looks like this:
{
capability = {
'volume_backend_name': 'Local iSCSI', #
'vendor_name': 'OpenStack', # backend level
'driver_version': '1.0', # mandatory/fixed
'storage_protocol': 'iSCSI', # stats&capabilities
'active_volumes': 10, #
'IOPS_provisioned': 30000, # optional custom
'fancy_capability_1': 'eat', # stats & capabilities
'fancy_capability_2': 'drink', #
'pools': [
{'pool_name': '1st pool', #
'total_capacity_gb': 500, # mandatory stats for
'free_capacity_gb': 230, # pools
'allocated_capacity_gb': 270, #
'QoS_support': 'False', #
'reserved_percentage': 0, #
'dying_disks': 100, #
'super_hero_1': 'spider-man', # optional custom
'super_hero_2': 'flash', # stats & capabilities
'super_hero_3': 'neoncat' #
},
{'pool_name': '2nd pool',
'total_capacity_gb': 1024,
'free_capacity_gb': 1024,
'allocated_capacity_gb': 0,
'QoS_support': 'False',
'reserved_percentage': 0,
'dying_disks': 200,
'super_hero_1': 'superman',
'super_hero_2': ' ',
'super_hero_2': 'Hulk'
}
]
}
}
Update storage pools information from backend reported info.
Bases: object
Base HostManager class.
alias of BackendState
Returns a dict of all the backends the HostManager knows about.
Each of the consumable resources in BackendState are populated with capabilities scheduler received from RPC.
Filter backends and return only ones passing all filters.
Returns a dict of all pools on all hosts HostManager knows about.
Weigh the backends.
Notify the ceilometer with updated volume stats
Update the per-service capabilities based on this notification.
Bases: cinder.scheduler.host_manager.BackendState
Update information about a pool from its volume_node info.
Bases: _abcoll.Mapping
A read-only dict.