yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #88150
[Bug 1959186] [NEW] [rbd] VM created from snapshot becomes a child of that RBD image
Public bug reported:
When I create an instance from a snapshot, the underlying RBD image of the new instance is actually a child of the snapshot in RBD.
Then I can't delete that snapshot because in Ceph it has children and is protected, thus Glance will throw this error: "Image <ID> could not be deleted because it is in use: The image cannot be deleted because it is in use through the backend store outside of Glance."
Steps to reproduce:
1. Create a server
$ openstack server create server-1
2. Create a snapshot from that server
$ openstack server image create $SERVER_1_ID
3. Create a new server from the snapshot
$ openstack server create --image $SNAPSHOT_ID server-2
4. Try to delete the snapshot, it will throw the above error from Glance (it is in use through the backend store outside of Glance.)
$ openstack image delete $SNAPSHOT_ID
5. Check the snapshot image in RBD, it will have the new instance's disk as children.
$ rbd children images/$SNAPSHOT_ID
> vms/<server-2>_disk
This doesn't happen when creating instances from images uploaded through
glance, but only when using images created with `openstack server image
create`
Environment
- Openstack Xena (Nova 17.6.0)
- Libvirt with KVM virt_type
- RBD for ephemeral storage
- Ceph pacific
** Affects: nova
Importance: Undecided
Status: New
** Tags: ceph snapshot
** Description changed:
When I create an instance from a snapshot, the underlying RBD image of the new instance is actually a child of the snapshot in RBD.
Then I can't delete that snapshot because in Ceph it has children and is protected, thus Glance will throw this error: "Image <ID> could not be deleted because it is in use: The image cannot be deleted because it is in use through the backend store outside of Glance."
Steps to reproduce:
1. Create a server
- $ openstack server create server-1
+ $ openstack server create server-1
2. Create a snapshot from that server
- $ openstack server image create $SERVER_1_ID
+ $ openstack server image create $SERVER_1_ID
3. Create a new server from the snapshot
- $ openstack server create --image $SNAPSHOT_ID server-2
+ $ openstack server create --image $SNAPSHOT_ID server-2
4. Try to delete the snapshot, it will throw the above error from Glance (it is in use through the backend store outside of Glance.)
- $ openstack image delete $SNAPSHOT_ID
+ $ openstack image delete $SNAPSHOT_ID
5. Check the snapshopt image in RBD, it will have the new instance's disk as children.
- $ rbd children images/$SNAPSHOT_ID
- > vms/<server-2>_disk
+ $ rbd children images/$SNAPSHOT_ID
+ > vms/<server-2>_disk
This doesn't happen when creating instances from images uploaded through
glance, but only when using images created with `openstack server image
create`
Environment
- - Openstack Xena
+ - Openstack Xena (Nova 17.6.0)
- Libvirt with KVM virt_type
- RBD for ephemeral storage
- Ceph pacific
** Description changed:
When I create an instance from a snapshot, the underlying RBD image of the new instance is actually a child of the snapshot in RBD.
Then I can't delete that snapshot because in Ceph it has children and is protected, thus Glance will throw this error: "Image <ID> could not be deleted because it is in use: The image cannot be deleted because it is in use through the backend store outside of Glance."
Steps to reproduce:
1. Create a server
$ openstack server create server-1
2. Create a snapshot from that server
$ openstack server image create $SERVER_1_ID
3. Create a new server from the snapshot
$ openstack server create --image $SNAPSHOT_ID server-2
4. Try to delete the snapshot, it will throw the above error from Glance (it is in use through the backend store outside of Glance.)
$ openstack image delete $SNAPSHOT_ID
- 5. Check the snapshopt image in RBD, it will have the new instance's disk as children.
+ 5. Check the snapshot image in RBD, it will have the new instance's disk as children.
$ rbd children images/$SNAPSHOT_ID
> vms/<server-2>_disk
This doesn't happen when creating instances from images uploaded through
glance, but only when using images created with `openstack server image
create`
Environment
- Openstack Xena (Nova 17.6.0)
- Libvirt with KVM virt_type
- RBD for ephemeral storage
- Ceph pacific
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1959186
Title:
[rbd] VM created from snapshot becomes a child of that RBD image
Status in OpenStack Compute (nova):
New
Bug description:
When I create an instance from a snapshot, the underlying RBD image of the new instance is actually a child of the snapshot in RBD.
Then I can't delete that snapshot because in Ceph it has children and is protected, thus Glance will throw this error: "Image <ID> could not be deleted because it is in use: The image cannot be deleted because it is in use through the backend store outside of Glance."
Steps to reproduce:
1. Create a server
$ openstack server create server-1
2. Create a snapshot from that server
$ openstack server image create $SERVER_1_ID
3. Create a new server from the snapshot
$ openstack server create --image $SNAPSHOT_ID server-2
4. Try to delete the snapshot, it will throw the above error from Glance (it is in use through the backend store outside of Glance.)
$ openstack image delete $SNAPSHOT_ID
5. Check the snapshot image in RBD, it will have the new instance's disk as children.
$ rbd children images/$SNAPSHOT_ID
> vms/<server-2>_disk
This doesn't happen when creating instances from images uploaded
through glance, but only when using images created with `openstack
server image create`
Environment
- Openstack Xena (Nova 17.6.0)
- Libvirt with KVM virt_type
- RBD for ephemeral storage
- Ceph pacific
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1959186/+subscriptions
Follow ups