I've looked into this previously. As Peter mentioned, when mounting a ceph rbd device, the ceph user is included in the volume attachment properties in the libvirt domain xml generated by nova. When this is transferred across to a target hypervisor, the ceph user information must exist on the target side as well.
The ceph-mon creates users based on the name of the remote application that connects. Thus, when two nova-compute applications are deployed with different names they will have unique ceph credentials to access the cluster. The live migration fails because of this.
To fix this, we should probably add a field that allows the remote service to specify a ceph user name. I've looked before and it was somewhat non-trivial to change this.
I've looked into this previously. As Peter mentioned, when mounting a ceph rbd device, the ceph user is included in the volume attachment properties in the libvirt domain xml generated by nova. When this is transferred across to a target hypervisor, the ceph user information must exist on the target side as well.
The ceph-mon creates users based on the name of the remote application that connects. Thus, when two nova-compute applications are deployed with different names they will have unique ceph credentials to access the cluster. The live migration fails because of this.
To fix this, we should probably add a field that allows the remote service to specify a ceph user name. I've looked before and it was somewhat non-trivial to change this.