mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-10 08:20:23 +00:00
829fc5ed95
Whenever Ceph-CSI receives a CSI/Replication
request it will first decode the
volumeHandle and try to get the required
OMAP details if it is not able to
retrieve, receives a `Not Found` error
message and Ceph-CSI will check for the
clusterID mapping. If the old volumeID
`0001-00013-site1-storage-0000000000000001
-b0285c97-a0ce-11eb-8c66-0242ac110002`
contains the `site1-storage` as the clusterID,
now Ceph-CSI will look for the corresponding
clusterID `site2-storage` from the above configmap.
If the clusterID mapping is found now Ceph-CSI
will look for the poolID mapping ie mapping between
`1` and `2`. Example:- pool with name exists on
both the clusters with different ID's Replicapool
with ID `1` on site1 and Replicapool with ID `2`
on site2. After getting the required mapping Ceph-CSI
has the required information to get more details
from the rados OMAP. If we have multiple clusterID mapping
it will loop through all the mapping and checks the
corresponding pool to get the OMAP data. If the clusterID
mapping does not exist Ceph-CSI will return an `Not Found`
error message to the caller.
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit
|
||
---|---|---|
.. | ||
clone.go | ||
controllerserver_test.go | ||
controllerserver.go | ||
driver.go | ||
encryption.go | ||
errors.go | ||
identityserver.go | ||
mirror.go | ||
nodeserver_test.go | ||
nodeserver.go | ||
rbd_attach.go | ||
rbd_healer.go | ||
rbd_journal.go | ||
rbd_util_test.go | ||
rbd_util.go | ||
replicationcontrollerserver_test.go | ||
replicationcontrollerserver.go | ||
snapshot.go |