The QoS Specs Implementation
-
associate_qos_with_type(context, specs_id, type_id)
Associate qos_specs with volume type.
Associate target qos specs with specific volume type.
Parameters: |
- specs_id – qos specs ID to associate with
- type_id – volume type ID to associate with
|
Raises: |
- VolumeTypeNotFound – if volume type doesn’t exist
- QoSSpecsNotFound – if qos specs doesn’t exist
- InvalidVolumeType – if volume type is already associated
with qos specs other than given one.
- QoSSpecsAssociateFailed – if there was general DB error
|
-
create(context, name, specs=None)
Creates qos_specs.
- :param specs dictionary that contains specifications for QoS
- e.g. {‘consumer’: ‘front-end’,
- ‘total_iops_sec’: 1000,
‘total_bytes_sec’: 1024000}
-
delete(context, qos_specs_id, force=False)
Marks qos specs as deleted.
‘force’ parameter is a flag to determine whether should destroy
should continue when there were entities associated with the qos specs.
force=True indicates caller would like to mark qos specs as deleted
even if there was entities associate with target qos specs.
Trying to delete a qos specs still associated with entities will
cause QoSSpecsInUse exception if force=False (default).
-
delete_keys(context, qos_specs_id, keys)
Marks specified key of target qos specs as deleted.
-
disassociate_all(context, specs_id)
Disassociate qos_specs from all entities.
-
disassociate_qos_specs(context, specs_id, type_id)
Disassociate qos_specs from volume type.
-
get_all_specs(context, filters=None, marker=None, limit=None, offset=None, sort_keys=None, sort_dirs=None)
Get all non-deleted qos specs.
-
get_associations(context, qos_specs_id)
Get all associations of given qos specs.
-
get_qos_specs(ctxt, spec_id)
Retrieves single qos specs by id.
-
update(context, qos_specs_id, specs)
Update qos specs.
Parameters: | specs –
- dictionary that contains key/value pairs for updating
- existing specs.
- e.g. {‘consumer’: ‘front-end’,
- ‘total_iops_sec’: 500,
‘total_bytes_sec’: 512000,}
|