[Doc] Use share group instead of consistency group in driver_requirements
Partial-Bug: #1659025 Change-Id: Iedde5a9a774a60e760b47d5eb2973f42d79227d4
This commit is contained in:
parent
b89470be64
commit
9495e52f3d
95
doc/source/admin/group_capabilities_and_extra_specs.rst
Normal file
95
doc/source/admin/group_capabilities_and_extra_specs.rst
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
.. _group_capabilities_and_extra_specs:
|
||||||
|
|
||||||
|
Group Capabilities and group-specs
|
||||||
|
==================================
|
||||||
|
Manila Administrators create share group types with `share types
|
||||||
|
<https://docs.openstack.org/manila/latest/admin/
|
||||||
|
shared-file-systems-share-types.html>`_ and group-specs to allow users
|
||||||
|
to request a group type of share group to create. The Administrator chooses
|
||||||
|
a name for the share group type and decides how to communicate the significance
|
||||||
|
of the different share group types in terms that the users should understand or
|
||||||
|
need to know. By design, most of the details of a share group type (the extra-
|
||||||
|
specs) are not exposed to users -- only Administrators.
|
||||||
|
|
||||||
|
Share group Types
|
||||||
|
-----------------
|
||||||
|
Refer to the manila client command-line help for information on how to
|
||||||
|
create a share group type and set "share types", "group-spec" key/value
|
||||||
|
pairs for a share group type.
|
||||||
|
|
||||||
|
Group-Specs
|
||||||
|
-----------
|
||||||
|
The group specs contains the group capabilities, similar to snapshot_support
|
||||||
|
in share types. Users know what a group can do from group specs.
|
||||||
|
|
||||||
|
The group specs is a exact match requirement in share group filter
|
||||||
|
(such as ConsistentSnapshotFilter). When the ConsistentSnapshotFilter is enabled
|
||||||
|
(it is enabled by default), the scheduler will only create a share group on
|
||||||
|
a backend that reports capabilities that match the share group type’s
|
||||||
|
group-spec keys.
|
||||||
|
|
||||||
|
Common Group Capabilities
|
||||||
|
-------------------------
|
||||||
|
For group capabilities that apply to multiple backends a common capability can
|
||||||
|
be created. Like all other backend reported group capabilities, these group
|
||||||
|
capabilities can be used verbatim as group_specs in share group types used to
|
||||||
|
create share groups.
|
||||||
|
|
||||||
|
* `consistent_snapshot_support` - indicates that a backend can enable you to
|
||||||
|
create snapshots at the exact same point in time from multiple shares.
|
||||||
|
The default value of the consistent_snapshot_support capability (if a
|
||||||
|
driver doesn't report it) is None. Administrators can make a share group
|
||||||
|
type use consistent snapshot support by setting this group-spec to 'host'.
|
||||||
|
|
||||||
|
Reporting Group Capabilities
|
||||||
|
----------------------------
|
||||||
|
Drivers report group capabilities as part of the updated stats (e.g. capacity)
|
||||||
|
and filled in 'share_group_stats' node for their back end. This is how a backend
|
||||||
|
advertizes its ability to provide a share that matches the group capabilities
|
||||||
|
requested in the share group type group-specs.
|
||||||
|
|
||||||
|
Developer impact
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Developers should update their drivers to include all backend and pool
|
||||||
|
capacities and capabilities in the share stats it reports to scheduler.
|
||||||
|
Below is an example having multiple pools. "my" is used as an
|
||||||
|
example vendor prefix:
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
{
|
||||||
|
'driver_handles_share_servers': 'False', #\
|
||||||
|
'share_backend_name': 'My Backend', # backend level
|
||||||
|
'vendor_name': 'MY', # mandatory/fixed
|
||||||
|
'driver_version': '1.0', # stats & capabilities
|
||||||
|
'storage_protocol': 'NFS_CIFS', #/
|
||||||
|
#\
|
||||||
|
'my_capability_1': 'custom_val', # "my" optional vendor
|
||||||
|
'my_capability_2': True, # stats & capabilities
|
||||||
|
#/
|
||||||
|
'share_group_stats': {
|
||||||
|
#\
|
||||||
|
'my_group_capability_1': 'custom_val', # "my" optional vendor
|
||||||
|
'my_group_capability_2': True, # stats & group capabilities
|
||||||
|
#/
|
||||||
|
'consistent_snapshot_support': 'host', #\
|
||||||
|
# common group capabilities
|
||||||
|
#/
|
||||||
|
},
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
Work Flow
|
||||||
|
---------
|
||||||
|
|
||||||
|
1) Share Backends report how many pools and what those pools look like and
|
||||||
|
are capable of to group scheduler;
|
||||||
|
|
||||||
|
2) When request comes in, scheduler picks a backend that fits the need best to
|
||||||
|
serve the request, it passes the request to the backend where the target
|
||||||
|
pool resides;
|
||||||
|
|
||||||
|
3) Share driver gets the message and lets the target pool serve the request
|
||||||
|
as group scheduler instructed. Share group type group-specs (scoped and un-scoped)
|
||||||
|
are available for the driver implementation to use as-needed.
|
@ -55,6 +55,7 @@ deployment.
|
|||||||
shared-file-systems-troubleshoot.rst
|
shared-file-systems-troubleshoot.rst
|
||||||
share_back_ends_feature_support_mapping
|
share_back_ends_feature_support_mapping
|
||||||
capabilities_and_extra_specs
|
capabilities_and_extra_specs
|
||||||
|
group_capabilities_and_extra_specs
|
||||||
export_location_metadata
|
export_location_metadata
|
||||||
|
|
||||||
Supported share back ends
|
Supported share back ends
|
||||||
|
@ -196,6 +196,21 @@ migration using an approach that works for any manufacturer, but driver vendors
|
|||||||
can implement a better optimized migration function for when migration involves
|
can implement a better optimized migration function for when migration involves
|
||||||
backends or pools related to the same vendor.
|
backends or pools related to the same vendor.
|
||||||
|
|
||||||
|
Share Groups (since Ocata)
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
The share groups provides the ability to manage a group of shares together.
|
||||||
|
This feature is implemented at the manager level, every driver gets this feature
|
||||||
|
by default. If a driver wants to override the default behavior to support
|
||||||
|
additional functionalities such as consistent group snapshot, the driver
|
||||||
|
vendors may report this capability as a group capability, such as: Ordered
|
||||||
|
writes, Consistent snapshots, Group replication.
|
||||||
|
|
||||||
|
.. note::
|
||||||
|
|
||||||
|
for more information please see
|
||||||
|
`group capabilities <https://docs.openstack.org/manila/latest/admin/group_capabilities_and_extra_specs.html>`_
|
||||||
|
|
||||||
Share Replication
|
Share Replication
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user