Example response for replicating to a managed backend:
{'volume_id': volume['id'],
- 'targets':[{'managed_host': 'backend_name'}...]
+ 'targets':[{'remote_device_id': 'vendor-id-for-target-device',
+ 'managed_host': 'backend_name'}...]
Example response for replicating to an unmanaged backend:
- {'volume_id': volume['id'], 'targets':[{'san_ip': '1.1.1.1',
- 'san_login': 'admin'},
- ....]}
+ {'volume_id': volume['id'], 'targets':[
+ {'remote_device_id': 'vendor-id-for-target-device',
+ 'san_ip': '1.1.1.1',
+ 'san_login': 'admin'},
+ ....]}
NOTE: It's the responsibility of the driver to mask out any
passwords or sensitive information.
+ `remote_device_id` is required and is used for drivers to identify
+ the devices they have in use.
+
"""
try:
volume_driver=xxxx
volume_backend_name=foo
managed_replication_target=False
- replication_devices={'key1'='val1' 'key2'='val2' ...},
- {'key7'='val7'....},...
+ replication_devices={'remote_device_id'='vendor-id-of-remote-backend',
+ 'key1'='val1' 'key2'='val2' ...},
+ {'remote_device_id'='vendor-id-of-remote-backend',
+ 'key7'='val7'....},...
Note the key/value entries can be whatever the device requires, we treat the actual
variable in the config parser as a comma delimited list, the {} and = notations are