)]}'
{"specs/train/approved/image-rbd-download-upload.rst":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"dcab48ed8df65f71e139c11bbf36c9289235d2f2","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/image-rbd-download-upload"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_38c2eaea","line":13,"range":{"start_line":13,"start_character":46,"end_line":13,"end_character":50},"updated":"2019-05-23 12:19:39.000000000","message":"This is all specific to the Libvirt virt driver correct?","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"173e46aac757b0e3ad2e1f7a3f027da948a6bb23","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/image-rbd-download-upload"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_9bcc26bd","line":13,"range":{"start_line":13,"start_character":46,"end_line":13,"end_character":50},"in_reply_to":"bfb3d3c7_38c2eaea","updated":"2019-05-23 20:46:01.000000000","message":"Yes, it is.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"dcab48ed8df65f71e139c11bbf36c9289235d2f2","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/image-rbd-download-upload"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_f849b28a","line":15,"range":{"start_line":13,"start_character":67,"end_line":15,"end_character":24},"updated":"2019-05-23 12:19:39.000000000","message":"I might be missing something here but AFAIK we do this already with raw rbd volumes:\n\nhttps://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/virt/libvirt/driver.py#L3662-L3667\n\nhttps://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/virt/libvirt/imagebackend.py#L960-L979\n\nhttps://github.com/openstack/nova/blob/master/nova/virt/libvirt/storage/rbd_utils.py#L226-L244","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9f9cb59b04188f13d101b24d813d3563c105d48c","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/image-rbd-download-upload"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_3ec0812a","line":15,"range":{"start_line":13,"start_character":67,"end_line":15,"end_character":24},"in_reply_to":"bfb3d3c7_db05bec3","updated":"2019-05-24 08:39:07.000000000","message":"That behaviour is specifically when using rbd as the ephemeral (imagebackend) backend. I now see that you want to optimise the case where this is file based or at least local to the host but Glance is backed by rbd. Apologies about the confusion.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"173e46aac757b0e3ad2e1f7a3f027da948a6bb23","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/image-rbd-download-upload"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_db05bec3","line":15,"range":{"start_line":13,"start_character":67,"end_line":15,"end_character":24},"in_reply_to":"bfb3d3c7_f849b28a","updated":"2019-05-23 20:46:01.000000000","message":"I\u0027ve reviewed the links and I still think this behavior only applies to boot-from-volume situations where the cloning of volume in RBD is done internally (on request from Nova). A lot of those functions would be used in this proposed workflow, including the requirements for writeable RBD pool (for nova user), but the behavior will be to upload a disk image from local hypervisor to RBD.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"dcab48ed8df65f71e139c11bbf36c9289235d2f2","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_de0cd73c","line":17,"range":{"start_line":15,"start_character":26,"end_line":17,"end_character":74},"updated":"2019-05-23 12:19:39.000000000","message":"Again I might be missing something here but we do this already for raw rbd volumes:\n\nhttps://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/virt/libvirt/driver.py#L2051-L2057\n\nhttps://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/virt/libvirt/imagebackend.py#L1051-L1085\n\nhttps://github.com/openstack/nova/blob/c7e9e667426a6d88d396a59cb40d30763a3265f9/nova/virt/libvirt/storage/rbd_utils.py#L373-L386","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9f9cb59b04188f13d101b24d813d3563c105d48c","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_9efded6f","line":17,"range":{"start_line":15,"start_character":26,"end_line":17,"end_character":74},"in_reply_to":"bfb3d3c7_bb124a08","updated":"2019-05-24 08:39:07.000000000","message":"Right, as above I had misunderstood your use case here, apologies.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"173e46aac757b0e3ad2e1f7a3f027da948a6bb23","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"When configured with Ceph RBD backend access, nova will be able to pull Glance"},{"line_number":14,"context_line":"images stored in Ceph directly from Ceph instead of streaming the payload"},{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_bb124a08","line":17,"range":{"start_line":15,"start_character":26,"end_line":17,"end_character":74},"in_reply_to":"bfb3d3c7_de0cd73c","updated":"2019-05-23 20:46:01.000000000","message":"It\u0027s likely registering a snapshot created in RBD by cloning a volume that instance booted from but it\u0027s not a local disk.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e360bd5a78327f6c0b2ef97387d76867da54182f","unresolved":false,"context_lines":[{"line_number":15,"context_line":"over the Glance HTTP API. Similarly, the upload of instance snapshot will"},{"line_number":16,"context_line":"happen directly to Ceph and the snapshot will be registered in Glance with"},{"line_number":17,"context_line":"a location URL pointing to Ceph instead of a payload upload over HTTP API."},{"line_number":18,"context_line":""},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Problem description"},{"line_number":21,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_74f0a391","line":18,"updated":"2019-06-05 00:50:00.000000000","message":"I think this paragraph could be made more clear. At a first read, it sounds like this is describing what is already possible today -- server create will do a fast clone in ceph and snapshots do a direct fast clone snapshot in ceph. What is this spec proposing that is not already possible? I can\u0027t tell that from this paragraph. This should briefly describe what new enhancement is being proposed that is not already possible.\n\n(later)\n\nThis is made clear by reading further into the spec, especially L44. I would change this paragraph to add a sentence similar to L44 to explain that nova with non-ceph local storage + glance with ceph storage is a config useful for X reason and that image downloads in this config are very slow and could be improved by a direct-from-ceph download ability.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e360bd5a78327f6c0b2ef97387d76867da54182f","unresolved":false,"context_lines":[{"line_number":35,"context_line":"plugin which is deprecated. Using such a plugin (or this proposed change) can"},{"line_number":36,"context_line":"reduce image download up to 120x faster (especially for partially sparse"},{"line_number":37,"context_line":"images). Direct image upload (not currently possible at all) can be about"},{"line_number":38,"context_line":"30x faster in real-world usage when using ``rbd import``."},{"line_number":39,"context_line":""},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"Use Cases"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_3419cbd6","line":38,"updated":"2019-06-05 00:50:00.000000000","message":"OK, so it sounds like the entire use case is around nova configured with local storage, that is, not configured to use ceph. But with glance configured to use ceph?\n\n(later)\n\nSo, I think this is talking about directly downloading a ceph image to non-ceph backend by going to ceph directly instead of over glance\u0027s download API.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"5d87bfc84a0e1ce543536cafb4c1b7c4582db48a","unresolved":false,"context_lines":[{"line_number":49,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Direct image download from RBD is currently possible through an out-of-tree"},{"line_number":52,"context_line":"plugin with entry point in nova.image.download.modules. This change will move"},{"line_number":53,"context_line":"this functionality into nova, since the entry-point was previously deprecated."},{"line_number":54,"context_line":"The direct download from RBD will be attempted using Ceph credentials Nova"},{"line_number":55,"context_line":"already has (typically configured for the boot-from-volume) functionality,"},{"line_number":56,"context_line":"thus not introducing new configuration options for that."}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_1e7eddae","line":53,"range":{"start_line":52,"start_character":56,"end_line":53,"end_character":78},"updated":"2019-05-24 08:51:44.000000000","message":"Can you include some additional details regarding this plugin? Is it published anywhere?\n\nI would think our preferred approach here would be to use ``qemu-img`` to download and convert the rbd volume into the required disk format in a single step.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"a25e2e624af58dcdbc6114a93037157aa7c0b88a","unresolved":false,"context_lines":[{"line_number":49,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"Direct image download from RBD is currently possible through an out-of-tree"},{"line_number":52,"context_line":"plugin with entry point in nova.image.download.modules. This change will move"},{"line_number":53,"context_line":"this functionality into nova, since the entry-point was previously deprecated."},{"line_number":54,"context_line":"The direct download from RBD will be attempted using Ceph credentials Nova"},{"line_number":55,"context_line":"already has (typically configured for the boot-from-volume) functionality,"},{"line_number":56,"context_line":"thus not introducing new configuration options for that."}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_2a0a9689","line":53,"range":{"start_line":52,"start_character":56,"end_line":53,"end_character":78},"in_reply_to":"bfb3d3c7_1e7eddae","updated":"2019-06-07 00:56:23.000000000","message":"That is a great idea. I didn\u0027t know qemu-img can do that in one step. I don\u0027t think this implementation detail needs to be mentioned in the spec though.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"e0d3a6a186a87fc7bb117c3c4fb4fcc138ce5f40","unresolved":false,"context_lines":[{"line_number":52,"context_line":"plugin with entry point in nova.image.download.modules. This change will move"},{"line_number":53,"context_line":"this functionality into nova, since the entry-point was previously deprecated."},{"line_number":54,"context_line":"The direct download from RBD will be attempted using Ceph credentials Nova"},{"line_number":55,"context_line":"already has (typically configured for the boot-from-volume) functionality,"},{"line_number":56,"context_line":"thus not introducing new configuration options for that."},{"line_number":57,"context_line":"Upon seeing a direct_location pointing to RBD, such download would be"},{"line_number":58,"context_line":"attempted directly with a fallback to Glance API download upon failure."}],"source_content_type":"text/x-rst","patch_set":1,"id":"dfbec78f_2f54a952","line":55,"range":{"start_line":55,"start_character":58,"end_line":55,"end_character":73},"updated":"2019-08-30 13:54:32.000000000","message":"functionality)","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e360bd5a78327f6c0b2ef97387d76867da54182f","unresolved":false,"context_lines":[{"line_number":55,"context_line":"already has (typically configured for the boot-from-volume) functionality,"},{"line_number":56,"context_line":"thus not introducing new configuration options for that."},{"line_number":57,"context_line":"Upon seeing a direct_location pointing to RBD, such download would be"},{"line_number":58,"context_line":"attempted directly with a fallback to Glance API download upon failure."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"In addition, when ``libvirt.images_rbd_pool`` configuration option is set,"},{"line_number":61,"context_line":"nova will upload snapshots to this RBD pool and create an image in Glance"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_b4693b26","line":58,"updated":"2019-06-05 00:50:00.000000000","message":"So this is saying that nova will be configured with ceph credentials even when not configured to use the rbd image backend, in order to allow boot-from-volume for volumes on ceph? Interesting, never knew about this deployment config before.\n\nWhere is the \u0027direct_location\u0027 info provided? Is it part of the image metadata or something else? When/how do we see that we can download the image directly from ceph?","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"a25e2e624af58dcdbc6114a93037157aa7c0b88a","unresolved":false,"context_lines":[{"line_number":55,"context_line":"already has (typically configured for the boot-from-volume) functionality,"},{"line_number":56,"context_line":"thus not introducing new configuration options for that."},{"line_number":57,"context_line":"Upon seeing a direct_location pointing to RBD, such download would be"},{"line_number":58,"context_line":"attempted directly with a fallback to Glance API download upon failure."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"In addition, when ``libvirt.images_rbd_pool`` configuration option is set,"},{"line_number":61,"context_line":"nova will upload snapshots to this RBD pool and create an image in Glance"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_4aad8a86","line":58,"in_reply_to":"9fb8cfa7_b4693b26","updated":"2019-06-07 00:56:23.000000000","message":"Yes, that is IMHO very frequent deployment configuration for when network-only storage isn\u0027t always fast enough. Fast local storage by default, addition network storage (Cinder) on demand, sole network storage (boot-from-volume) optional. A full matrix of choice for the end user.\n\ndirect_url / locations is part of Glance image model, it however needs to be turned on due to some not exactly clear security concerns.\nhttps://developer.openstack.org/api-ref/image/v2/index.html?expanded\u003dshow-image-detail#show-image","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"5d87bfc84a0e1ce543536cafb4c1b7c4582db48a","unresolved":false,"context_lines":[{"line_number":57,"context_line":"Upon seeing a direct_location pointing to RBD, such download would be"},{"line_number":58,"context_line":"attempted directly with a fallback to Glance API download upon failure."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"In addition, when ``libvirt.images_rbd_pool`` configuration option is set,"},{"line_number":61,"context_line":"nova will upload snapshots to this RBD pool and create an image in Glance"},{"line_number":62,"context_line":"specifying the URL of it to Glance without having to send the payload."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_7e02793f","line":62,"range":{"start_line":60,"start_character":0,"end_line":62,"end_character":70},"updated":"2019-05-24 08:51:44.000000000","message":"I wouldn\u0027t overload ``[libvirt]\\images_rbd_pool`` with additional meaning here, why not create a new ``[libvirt]\\images_snapshot_rbd_pool`` configurable to be explicit?","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e360bd5a78327f6c0b2ef97387d76867da54182f","unresolved":false,"context_lines":[{"line_number":57,"context_line":"Upon seeing a direct_location pointing to RBD, such download would be"},{"line_number":58,"context_line":"attempted directly with a fallback to Glance API download upon failure."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"In addition, when ``libvirt.images_rbd_pool`` configuration option is set,"},{"line_number":61,"context_line":"nova will upload snapshots to this RBD pool and create an image in Glance"},{"line_number":62,"context_line":"specifying the URL of it to Glance without having to send the payload."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_b4005b36","line":62,"range":{"start_line":60,"start_character":0,"end_line":62,"end_character":70},"in_reply_to":"bfb3d3c7_7e02793f","updated":"2019-06-05 00:50:00.000000000","message":"Hm, I dunno, if \u0027images_rbd_pool\u0027 is where ceph snapshots normally go when CONF.libvirt.images_type\u003drbd then it seems like it would be more intuitive to reuse it for this, no? Otherwise we have two different options which get used for the same thing? And then what happens when both images_rbd_pool and images_snapshot_rbd_pool are configured and images_type\u003drbd? Maybe I\u0027m misunderstanding something here.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"5d87bfc84a0e1ce543536cafb4c1b7c4582db48a","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":"``libvirt.rbd_user\u003d\u003cceph_user_name\u003e``"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"The following new config options will be added:"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"``libvirt.images_rbd_pool\u003d\u003cpool_for_snapshots\u003e``"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bfb3d3c7_fecd0931","line":124,"range":{"start_line":122,"start_character":0,"end_line":124,"end_character":48},"updated":"2019-05-24 08:51:44.000000000","message":"``[libvirt]/images_rbd_pool`` already exists and is used for instance disks when ``[libvirt]/images_type`` is set to rbd:\n\nhttps://github.com/openstack/nova/blob/ebd0500b6ae928cfcabd2c5182ca7e6294257a9c/nova/conf/libvirt.py#L881-L883","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"a25e2e624af58dcdbc6114a93037157aa7c0b88a","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":"``libvirt.rbd_user\u003d\u003cceph_user_name\u003e``"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"The following new config options will be added:"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"``libvirt.images_rbd_pool\u003d\u003cpool_for_snapshots\u003e``"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_4aca6a6d","line":124,"range":{"start_line":122,"start_character":0,"end_line":124,"end_character":48},"in_reply_to":"9fb8cfa7_54923ff8","updated":"2019-06-07 00:56:23.000000000","message":"When images_type\u003drbd, then snapshots are more nova-managed and Glance is only informed of their existence. In images_type\u003ddefault, it may make sense to configure that to whatever Glance actually uses for images (even when transferred directly).\n\nThis option (images_rbd_pool) may therefore be configured accordingly based on what images_type is. When the snapshot behavior of this change is active, then obviously images_type is NOT rbd, hence images_rbd_pool is not then in use for instances disks.\n\nUnrelated to this, the images_rbd_pool is mislabeled now, saying \"The RADOS pool in which rbd volumes are stored\". That sounds like it comes from the era of nova-volume. Nevertheless, when Nova does create anything in Ceph, it would go to this pool.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e360bd5a78327f6c0b2ef97387d76867da54182f","unresolved":false,"context_lines":[{"line_number":119,"context_line":""},{"line_number":120,"context_line":"``libvirt.rbd_user\u003d\u003cceph_user_name\u003e``"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"The following new config options will be added:"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"``libvirt.images_rbd_pool\u003d\u003cpool_for_snapshots\u003e``"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fb8cfa7_54923ff8","line":124,"range":{"start_line":122,"start_character":0,"end_line":124,"end_character":48},"in_reply_to":"bfb3d3c7_fecd0931","updated":"2019-06-05 00:50:00.000000000","message":"It\u0027s also where snapshots go today, right? If so, that\u0027s why I think it might actually make more sense use the same option.","commit_id":"0efa063f0e99696aee5e6643b2c6853d6d133ee5"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b0e4a0d8f7cd63622bd90b06b47354cab794870e","unresolved":false,"context_lines":[{"line_number":69,"context_line":"In addition, when enabled via ``upload_snapshots_to_rbd``, Nova will upload"},{"line_number":70,"context_line":"snapshots of instance images stored locally to RBD pool configured"},{"line_number":71,"context_line":"through ``libvirt.images_rbd_pool`` option and create an image in Glance"},{"line_number":72,"context_line":"specifying the URL of it to Glance without having to send the payload."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_df174351","line":72,"updated":"2019-07-23 22:02:07.000000000","message":"I\u0027m curious, when/why would someone not want to upload snapshots directly to RBD? What is the use case for upload_snapshots_to_rbd\u003dFalse?","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"a38b7ffc635a532e6b3369f4d941a578202bac6d","unresolved":false,"context_lines":[{"line_number":69,"context_line":"In addition, when enabled via ``upload_snapshots_to_rbd``, Nova will upload"},{"line_number":70,"context_line":"snapshots of instance images stored locally to RBD pool configured"},{"line_number":71,"context_line":"through ``libvirt.images_rbd_pool`` option and create an image in Glance"},{"line_number":72,"context_line":"specifying the URL of it to Glance without having to send the payload."},{"line_number":73,"context_line":""},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_bd6273ac","line":72,"in_reply_to":"7faddb67_df174351","updated":"2019-07-25 12:27:27.000000000","message":"Good question. I can\u0027t think of a good reason given the performance issues. However, argument can be made that for security reasons Nova shouldn\u0027t have write access to Glance\u0027s pool or someone may really want to have Glance calculate the checksum of the streamed image data, etc.","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b0e4a0d8f7cd63622bd90b06b47354cab794870e","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"For direct image upload:"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Nova RBD user will need write access to the Glance image pool."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Token used by Nova needs permission to update image\u0027s URL in Glance."},{"line_number":101,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_dfed038c","line":98,"updated":"2019-07-23 22:02:07.000000000","message":"Question: is this something the operator will need to configure on the ceph side?","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"a38b7ffc635a532e6b3369f4d941a578202bac6d","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"For direct image upload:"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Nova RBD user will need write access to the Glance image pool."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Token used by Nova needs permission to update image\u0027s URL in Glance."},{"line_number":101,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_fd4eab36","line":98,"in_reply_to":"7faddb67_dfed038c","updated":"2019-07-25 12:27:27.000000000","message":"Yes - it depends exactly how many separate pools are in used but the operator is responsible for setting up the pools and associated permissions, whether Nova and Glance share a single Ceph Authx key or not.","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b0e4a0d8f7cd63622bd90b06b47354cab794870e","unresolved":false,"context_lines":[{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Nova RBD user will need write access to the Glance image pool."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Token used by Nova needs permission to update image\u0027s URL in Glance."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"Notifications impact"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_9fff8b33","line":100,"updated":"2019-07-23 22:02:07.000000000","message":"Question: is this a policy configuration on the glance side?","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":10338,"name":"Daniel Speichert","email":"daniel@speichert.pl","username":"daniel"},"change_message_id":"a38b7ffc635a532e6b3369f4d941a578202bac6d","unresolved":false,"context_lines":[{"line_number":97,"context_line":""},{"line_number":98,"context_line":"* Nova RBD user will need write access to the Glance image pool."},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"* Token used by Nova needs permission to update image\u0027s URL in Glance."},{"line_number":101,"context_line":""},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"Notifications impact"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_7d439b14","line":100,"in_reply_to":"7faddb67_9fff8b33","updated":"2019-07-25 12:27:27.000000000","message":"I\u0027m not that well-versed with Glance policies. I know that as long as Nova uses admin-role token, setting the URL is possible. If Nova was to use the user\u0027s token for uploading the image, it would probably fail. I\u0027m only mentioning this because I remember something about using the permission scope of the user for some operations.","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b0e4a0d8f7cd63622bd90b06b47354cab794870e","unresolved":false,"context_lines":[{"line_number":176,"context_line":"Testing"},{"line_number":177,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"This will require environment with RBD-backed Ceph and non-RBD backed"},{"line_number":180,"context_line":"nova-compute."},{"line_number":181,"context_line":""},{"line_number":182,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_bfb6078a","line":179,"range":{"start_line":179,"start_character":46,"end_line":179,"end_character":50},"updated":"2019-07-23 22:02:07.000000000","message":"Glance?","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"b0e4a0d8f7cd63622bd90b06b47354cab794870e","unresolved":false,"context_lines":[{"line_number":177,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"This will require environment with RBD-backed Ceph and non-RBD backed"},{"line_number":180,"context_line":"nova-compute."},{"line_number":181,"context_line":""},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_bf3927f3","line":180,"updated":"2019-07-23 22:02:07.000000000","message":"Today we have the devstack-plugin-ceph-tempest job which runs with RBD-backed nova, glance, and cinder. It seems like it would be possible to set up a new job with only RBD-backed glance and cinder, for the purposes of fully testing this out. I\u0027m not sure we would want it running on every change, so perhaps we could make it a periodic job or an experimental job.\n\nAside from that, we will want new unit tests that verify the behavior of trying the direct download/upload when direct_location points to RBD and the fall back to try the HTTP download/upload.","commit_id":"39d515732440a8f9e98b03f2540330eb40225fe8"}]}
