)]}'
{"specs/victoria/approved/offline-reshape-tool.rst":[{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9fae166b2e395b7c82d1ef285e43dbf728bd7f23","unresolved":false,"context_lines":[{"line_number":57,"context_line":"the overall flow we have for `online reshapes`_ :"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"* In the compute host, the operator would call"},{"line_number":60,"context_line":"  ``nova-manage compute update_provider_tree``. If the return code is 1, then"},{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_614bc558","line":60,"range":{"start_line":60,"start_character":2,"end_line":60,"end_character":46},"updated":"2020-07-29 19:02:22.000000000","message":"Would splitting the check out into nova-status be worthwhile?\n\nWouldn\u0027t this also be listed under the placement sub command?","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"8278267bb15deb9577ad20a7df3682e658ff16aa","unresolved":false,"context_lines":[{"line_number":57,"context_line":"the overall flow we have for `online reshapes`_ :"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"* In the compute host, the operator would call"},{"line_number":60,"context_line":"  ``nova-manage compute update_provider_tree``. If the return code is 1, then"},{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_1d2a1c8f","line":60,"range":{"start_line":60,"start_character":2,"end_line":60,"end_character":46},"in_reply_to":"9f560f44_614bc558","updated":"2020-07-30 16:18:25.000000000","message":"\u003e Would splitting the check out into nova-status be worthwhile?\n\nThat\u0027s a very good idea but unfortunately, we need to have a command that should be run in the compute services, while the nova-status command is run in the controller.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9fae166b2e395b7c82d1ef285e43dbf728bd7f23","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* Then, the operator would run on a controller host"},{"line_number":65,"context_line":"  ``nova-manage placement get_allocations \u003crp_uuid\u003e`` to get all the"},{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_e10fd5de","line":75,"range":{"start_line":64,"start_character":0,"end_line":75,"end_character":59},"updated":"2020-07-29 19:02:22.000000000","message":"I appreciate that you\u0027re working to the current constraints imposed on us by TripleO\u0027s interpretation of FFU but this makes me think it\u0027s time to reset these given our needs in Nova.\n\nWe could mandate the need to have Keystone and Placement available during each version step of the upgrade to simplify this down to a single command on each compute.\n\nThis would mean that the control plane and compute plane upgrades would be tied together but I think that would be the case with either approach.\n\nOtherwise we are asking the operator and/or upgrade deployment tooling to orchestrate multiple steps for each compute in an environment, that just isn\u0027t going to scale well.\n\nThoughts?","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"d3b07ca26262b6d59c21349853e904104f8eaf98","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* Then, the operator would run on a controller host"},{"line_number":65,"context_line":"  ``nova-manage placement get_allocations \u003crp_uuid\u003e`` to get all the"},{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1f621f24_de159e3e","line":75,"range":{"start_line":64,"start_character":0,"end_line":75,"end_character":59},"in_reply_to":"3f65232a_1492029f","updated":"2020-11-17 15:47:55.000000000","message":"I think it actually does but only in terms of default role ordering as controllers are started first ahead of computes.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* Then, the operator would run on a controller host"},{"line_number":65,"context_line":"  ``nova-manage placement get_allocations \u003crp_uuid\u003e`` to get all the"},{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f65232a_1492029f","line":75,"range":{"start_line":64,"start_character":0,"end_line":75,"end_character":59},"in_reply_to":"3f65232a_b1d520ba","updated":"2020-10-27 18:59:54.000000000","message":"requireing keysotne an placment is resonable to me too.\n\ni belive as part of the greade theroy of upgrade workflow we already do require that keystone and placment are upgraded first.\n\nooo should really be respecting that for ffu upgrading both of those before starting on nova. i know it doesnt but it should.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"1ee5ee06cb38ac52c30ecb2750319a67f35e9123","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* Then, the operator would run on a controller host"},{"line_number":65,"context_line":"  ``nova-manage placement get_allocations \u003crp_uuid\u003e`` to get all the"},{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_9e4bbd29","line":75,"range":{"start_line":64,"start_character":0,"end_line":75,"end_character":59},"in_reply_to":"9f560f44_3dca806c","updated":"2020-07-30 19:54:48.000000000","message":"Yeah sorry I appreciate that, just without it this is going to be a rather large task to automate either for operators or deployment tools orchestrating an upgrade.\n\nOn that, did you run this proposal past the any deployment tools upstream (TripleO, Kolla, OSA, JuJu?) and if not would you mind bringing it up on the mailing list?\n\nEither way this is going to have an impact on the framework of the upgrade and they will need to buy into this before we can commit in Nova IMHO.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"83a37851eb5da081dd5e88fd301251a8ee8c97cc","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* Then, the operator would run on a controller host"},{"line_number":65,"context_line":"  ``nova-manage placement get_allocations \u003crp_uuid\u003e`` to get all the"},{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f65232a_b1d520ba","line":75,"range":{"start_line":64,"start_character":0,"end_line":75,"end_character":59},"in_reply_to":"9f560f44_9e4bbd29","updated":"2020-10-27 18:21:09.000000000","message":"I must also say that I would rather this approach. The lockstep pattern proposed seems even more difficult and error prone than simply starting those two (mostly dependency free) services. We should definitely bring this up on the ML first","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"8278267bb15deb9577ad20a7df3682e658ff16aa","unresolved":false,"context_lines":[{"line_number":61,"context_line":"  the related resource provider for the compute host would be needed to be"},{"line_number":62,"context_line":"  reshaped. If it returns 0, no reshape is needed."},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* Then, the operator would run on a controller host"},{"line_number":65,"context_line":"  ``nova-manage placement get_allocations \u003crp_uuid\u003e`` to get all the"},{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_3dca806c","line":75,"range":{"start_line":64,"start_character":0,"end_line":75,"end_character":59},"in_reply_to":"9f560f44_e10fd5de","updated":"2020-07-30 16:18:25.000000000","message":"That\u0027s a huuuuge other direction. When we discussed it in the PTG, the consensus was about to provide two different commands, but I can add your toughts as an alternation in the related section","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9fae166b2e395b7c82d1ef285e43dbf728bd7f23","unresolved":false,"context_lines":[{"line_number":116,"context_line":"Compute Upgrade Script"},{"line_number":117,"context_line":"----------------------"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"As most of the upgrade verifications will be done by the virt driver, it is"},{"line_number":120,"context_line":"understandable that we would ask the operator to have the hypervisor running"},{"line_number":121,"context_line":"(eg. say ``libvirtd`` for libvirt) during an offline upgrade so that the"},{"line_number":122,"context_line":"related reshape method could check the resources."},{"line_number":123,"context_line":"That being said, for large hypervisors like Ironic, developers adding offline"},{"line_number":124,"context_line":"reshape methods would be asked to find other alternatives, like finding"},{"line_number":125,"context_line":"possibilities to check hypervisor statuses without having the running API."}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_4117a1ee","line":122,"range":{"start_line":119,"start_character":0,"end_line":122,"end_character":49},"updated":"2020-07-29 19:02:22.000000000","message":"My only concern here for the libvirt driver is that MIN_LIBVIRT *could* move past the locally installed version and cause problems. I don\u0027t think we have a choice but it\u0027s something to keep in mind.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"8278267bb15deb9577ad20a7df3682e658ff16aa","unresolved":false,"context_lines":[{"line_number":116,"context_line":"Compute Upgrade Script"},{"line_number":117,"context_line":"----------------------"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"As most of the upgrade verifications will be done by the virt driver, it is"},{"line_number":120,"context_line":"understandable that we would ask the operator to have the hypervisor running"},{"line_number":121,"context_line":"(eg. say ``libvirtd`` for libvirt) during an offline upgrade so that the"},{"line_number":122,"context_line":"related reshape method could check the resources."},{"line_number":123,"context_line":"That being said, for large hypervisors like Ironic, developers adding offline"},{"line_number":124,"context_line":"reshape methods would be asked to find other alternatives, like finding"},{"line_number":125,"context_line":"possibilities to check hypervisor statuses without having the running API."}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_ae35b848","line":122,"range":{"start_line":119,"start_character":0,"end_line":122,"end_character":49},"in_reply_to":"9f560f44_4117a1ee","updated":"2020-07-30 16:18:25.000000000","message":"I\u0027ll add this.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":10135,"name":"Lee Yarwood","display_name":"Lee Yarwood","email":"lyarwood@redhat.com","username":"lyarwood"},"change_message_id":"9fae166b2e395b7c82d1ef285e43dbf728bd7f23","unresolved":false,"context_lines":[{"line_number":120,"context_line":"understandable that we would ask the operator to have the hypervisor running"},{"line_number":121,"context_line":"(eg. say ``libvirtd`` for libvirt) during an offline upgrade so that the"},{"line_number":122,"context_line":"related reshape method could check the resources."},{"line_number":123,"context_line":"That being said, for large hypervisors like Ironic, developers adding offline"},{"line_number":124,"context_line":"reshape methods would be asked to find other alternatives, like finding"},{"line_number":125,"context_line":"possibilities to check hypervisor statuses without having the running API."},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_21e70d15","line":123,"range":{"start_line":123,"start_character":21,"end_line":123,"end_character":38},"updated":"2020-07-29 19:02:22.000000000","message":"I don\u0027t understand what you mean here tbh.","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"8278267bb15deb9577ad20a7df3682e658ff16aa","unresolved":false,"context_lines":[{"line_number":120,"context_line":"understandable that we would ask the operator to have the hypervisor running"},{"line_number":121,"context_line":"(eg. say ``libvirtd`` for libvirt) during an offline upgrade so that the"},{"line_number":122,"context_line":"related reshape method could check the resources."},{"line_number":123,"context_line":"That being said, for large hypervisors like Ironic, developers adding offline"},{"line_number":124,"context_line":"reshape methods would be asked to find other alternatives, like finding"},{"line_number":125,"context_line":"possibilities to check hypervisor statuses without having the running API."},{"line_number":126,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"9f560f44_8e38b43d","line":123,"range":{"start_line":123,"start_character":21,"end_line":123,"end_character":38},"in_reply_to":"9f560f44_21e70d15","updated":"2020-07-30 16:18:25.000000000","message":"Done","commit_id":"70f1c85ae1774dbdd3697b9d9adfc37e3edb73e2"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"29b19c921337b533cdadb2cc0d147ca58e1d89a7","unresolved":false,"context_lines":[{"line_number":44,"context_line":"Placement DB, we then need to provide two different commands :"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"* one for querying the Placement DB directly"},{"line_number":47,"context_line":"* one for running in the compute host and checking the virt drvers"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"The first one should be the main command for reshaping. It would use some"},{"line_number":50,"context_line":"file created by the second command and would ask the Placement API to reshape"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9f560f44_42c4e841","line":47,"range":{"start_line":47,"start_character":60,"end_line":47,"end_character":66},"updated":"2020-09-30 12:16:35.000000000","message":"nit: drivers","commit_id":"7dd28c5904e93967c7350eb896a4f7230f24f376"}],"specs/wallaby/approved/offline-reshape-tool.rst":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"339707b8ceb1f2344f5d00eba7e246880c7dbbe6","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d4e42a41_0edd9823","updated":"2021-04-14 12:34:40.000000000","message":"please propose this against the specs/xena/approved directory","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"95f0494bd36259e2e8d6f49a823408f805e195af","unresolved":false,"context_lines":[{"line_number":19,"context_line":"If we want to delete old reshapes upstream (and not checking the needed"},{"line_number":20,"context_line":"behaviours everytime we restart nova-compute), we need to provide a specific"},{"line_number":21,"context_line":"command (eg. a nova-manage) command that would verify and modify the Placement"},{"line_number":22,"context_line":"DB without needing to have the services to be up, ie. an offline tool per say."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"Problem description"},{"line_number":25,"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":5,"id":"1f621f24_8673cfb1","line":22,"range":{"start_line":22,"start_character":70,"end_line":22,"end_character":77},"updated":"2020-11-20 12:45:47.000000000","message":"per se","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":28,"context_line":"---------"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"* As a developer, I want to delete old reshape methods"},{"line_number":31,"context_line":"* As an operator, I just don\u0027t want to see the compute service to verify all"},{"line_number":32,"context_line":"  the reshapes since Stein if I just have a simple upgrade."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"Proposed change"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_916d8406","line":31,"range":{"start_line":31,"start_character":39,"end_line":31,"end_character":42},"updated":"2020-10-27 18:59:54.000000000","message":"start","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":43,"context_line":"As we can\u0027t ask operators to make sure that compute hosts can query the"},{"line_number":44,"context_line":"Placement DB, we then need to provide two different commands :"},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"* one for querying the Placement DB directly"},{"line_number":47,"context_line":"* one for running in the compute host and checking the virt drivers"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"The first one should be the main command for reshaping. It would use some"},{"line_number":50,"context_line":"file created by the second command and would ask the Placement API to reshape"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_51312c0b","line":47,"range":{"start_line":46,"start_character":0,"end_line":47,"end_character":67},"updated":"2020-10-27 18:59:54.000000000","message":"nit: i would revers the order of these since you will need to run the compute host command first and then the contoler host command second","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":66,"context_line":"  allocations from the specific Resource Provider UUID that is actually the"},{"line_number":67,"context_line":"  related compute host."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* Then, back to the compute host, the operator would call"},{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_112fb4a1","line":71,"range":{"start_line":69,"start_character":3,"end_line":71,"end_character":76},"updated":"2020-10-27 18:59:54.000000000","message":"so we have to do this back and forth because the compute nodes cant connect to the placement db right\n\nso we need to basically dump the db info for the host on the contoler and then provide it to the compute command to use out of band so it can recaluate the tree","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_f129589b","line":75,"range":{"start_line":73,"start_character":2,"end_line":75,"end_character":59},"updated":"2020-10-27 18:59:54.000000000","message":"and i guess the previous command updates it in place? since it take just on fiel instead of an input and output file.\n\ni would prerfer to pass two as it will make testing simpler and its then possibel to eaislly diff them for manual inspection.","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"95f0494bd36259e2e8d6f49a823408f805e195af","unresolved":false,"context_lines":[{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"fffc6b78_20d0ddf7","line":75,"range":{"start_line":73,"start_character":2,"end_line":75,"end_character":59},"in_reply_to":"3f65232a_f129589b","updated":"2020-11-20 12:45:47.000000000","message":"I think the comments lyarwood raised in PS2 [1] are still applicable here and still worth discussing in a broader forum\n\n[1] https://review.opendev.org/#/c/742908/2/specs/victoria/approved/offline-reshape-tool.rst@75","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"4a990d73073afdf10066f3a14fdcb08c2cd2f822","unresolved":false,"context_lines":[{"line_number":70,"context_line":"  ``nova-manage compute update_provider_tree \u003cfile\u003e`` where \u003cfile\u003e is the file"},{"line_number":71,"context_line":"  provided by the previous call. It would then return the new provider tree."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"* Eventually, running on the controller host"},{"line_number":74,"context_line":"  ``nova-manage placement reshape \u003cfile\u003e`` where \u003cfile\u003e would be what was"},{"line_number":75,"context_line":"  returned would need call Placement API to ask to reshape."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Some diagram could be better for understanding the workflow :"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"b1e42deb_f2879a9a","line":75,"range":{"start_line":73,"start_character":2,"end_line":75,"end_character":59},"in_reply_to":"fffc6b78_20d0ddf7","updated":"2020-12-01 13:25:59.000000000","message":"I agree to worth a discussion with the deployment projects about adding Placement and Keystone  related assumptions. As there is a clear gain in reduced complexity in nova. Let\u0027s see if this introduces complexity on the deployer side and try to compare.","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":116,"context_line":"Compute Upgrade Script"},{"line_number":117,"context_line":"----------------------"},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"As most of the upgrade verifications will be done by the virt driver, it is"},{"line_number":120,"context_line":"understandable that we would ask the operator to have the hypervisor running"},{"line_number":121,"context_line":"(eg. say ``libvirtd`` for libvirt) during an offline upgrade so that the"},{"line_number":122,"context_line":"related reshape method could check the resources."},{"line_number":123,"context_line":"That being said, for at least the Ironic hypervisor, developers adding offline"},{"line_number":124,"context_line":"reshape methods would be asked to find other alternatives, like finding"},{"line_number":125,"context_line":"possibilities to check hypervisor statuses without having the running API."}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_54ff5a00","line":122,"range":{"start_line":119,"start_character":0,"end_line":122,"end_character":49},"updated":"2020-10-27 18:59:54.000000000","message":"if you are doing inplace upgrades that is also resonable since we woudl not want the vms to stop runnign durign an upgrade even for an ffu.","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"52697bf1d03d6c2a05ecc238ac6b578f687cfc9e","unresolved":false,"context_lines":[{"line_number":128,"context_line":""},{"line_number":129,"context_line":"  Since we are asking hypervisors to be running after the upgrade but before"},{"line_number":130,"context_line":"  you restart the Nova services, the hypervisor version could be newer."},{"line_number":131,"context_line":"  We accordingly expect that reshape methods would support this new version."},{"line_number":132,"context_line":""},{"line_number":133,"context_line":"We may refer to https://review.openstack.org/#/c/501025/ for an example of an"},{"line_number":134,"context_line":"upgrade script that requires a virt driver."}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_141de265","line":131,"range":{"start_line":131,"start_character":1,"end_line":131,"end_character":76},"updated":"2020-10-27 18:59:54.000000000","message":"as a counter point it also could be older.\n\nin the redhat OSP ffu case will be the old version so that puts an upper limit on how many verions you can skip.\nyou can skip beyond the point where the running libvirt is below the minim supported version.","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"83a37851eb5da081dd5e88fd301251a8ee8c97cc","unresolved":false,"context_lines":[{"line_number":206,"context_line":"During an offline fast forward migration, operators would need to only restart"},{"line_number":207,"context_line":"the related hypervisor (eg. libvirtd) for the ``nova-manage`` commands to work"},{"line_number":208,"context_line":"on the compute services. To be clear, no OpenStack services would be asked to"},{"line_number":209,"context_line":"be restarted tho."},{"line_number":210,"context_line":""},{"line_number":211,"context_line":"Implementation"},{"line_number":212,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"3f65232a_31cab019","line":209,"range":{"start_line":209,"start_character":13,"end_line":209,"end_character":16},"updated":"2020-10-27 18:21:09.000000000","message":"though","commit_id":"5b52c88ea932f452d097367204ebde9db7d5bcc7"}]}
