| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-09-04 | |||
| 17:55:56 | dansmith | but if it's 10gE or something, generally iperf or straight netcat will help you go faste | |
| 17:56:00 | dansmith | *faster | |
| 17:56:20 | melwitt | oh, ok didn't know that | |
| 17:56:28 | sean-k-mooney | aspiers: you could add a decorator and ecorate those metods but im not sure what the normal procedure would be | |
| 17:56:50 | aspiers | sean-k-mooney: yes I'm writing a decorator as per mriedem's suggestion but I want to make sure I'm decorating the right methods :) | |
| 17:56:50 | sean-k-mooney | for cyborge i think we chose not to do this | |
| 17:56:56 | aspiers | sean-k-mooney: in the right file | |
| 17:57:02 | mriedem | sean-k-mooney: there isn't really a normal procedure, | |
| 17:57:07 | sean-k-mooney | we chose to jsut document what ws not supprotted | |
| 17:57:11 | donnyd | scp openstack:/var/lib/glance/images/8dd685fd-277d-46fb-8d1c-b05ff7c5ecaa | |
| 17:57:12 | donnyd | 8dd685fd-277d-46fb-8d1c-b05ff7c5ecaa 100% 6212MB 209.1MB/s 00:29 | |
| 17:57:16 | mriedem | most times when we know shit doesn't work we just don't fix it, don't fail fast detect it, or document it | |
| 17:57:24 | donnyd | so 2x faster than glance | |
| 17:57:38 | mriedem | over time people eventually get tired of that so they put fail fast checks in place, like the things that don't work in the api with volume-backed servers | |
| 17:57:40 | donnyd | but dansmith is correct. CPU bound on the controller side | |
| 17:58:15 | sean-k-mooney | mriedem: yes so aspiers is breakign the mold by puting the check in place with the code | |
| 17:58:16 | dansmith | donnyd: scp'ing from and to the same disks on each side presumably? | |
| 17:58:42 | mriedem | sean-k-mooney: not really, like i said, we have "this doesn't work with this type of instance" checks in the API for certain things | |
| 17:58:56 | mriedem | he's just doing it a bit differently with a decorator, it's the same idea though | |
| 17:59:14 | sean-k-mooney | ya | |
| 17:59:28 | sean-k-mooney | i understand that and that we do have check like this | |
| 17:59:41 | sean-k-mooney | aspiers: so what are you going to return to the use | |
| 17:59:47 | sean-k-mooney | a 4** | |
| 17:59:54 | mriedem | the bw provider qos stuff fails fast in the api for move ops today too | |
| 18:00:01 | sean-k-mooney | yes | |
| 18:00:10 | sean-k-mooney | i was looking ot see if i could find that | |
| 18:00:20 | donnyd | https://www.irccloud.com/pastebin/wQsy8Dyc/ | |
| 18:00:35 | donnyd | not likely to be a network issue | |
| 18:00:47 | mriedem | sean-k-mooney: for the bw provider case (supports_port_resource_request_during_move) we return a 400 | |
| 18:00:58 | sean-k-mooney | for consitnece we proablyt want to fail the migration with the same respoce code | |
| 18:01:07 | dansmith | donnyd: there are various chunk sizes for the glance backends, which may be too small by default for a fast network | |
| 18:01:13 | sean-k-mooney | ok 400 bad request makes sense i guess | |
| 18:01:19 | mriedem | i'm not sure that 400 was really correct there, 409 might have been better, but ... | |
| 18:02:17 | aspiers | sean-k-mooney: I can't even find the place where migration chooses which error codes to return. There's no mention of migration in nova.api.openstack.compute.servers | |
| 18:02:20 | sean-k-mooney | i was just looking at 409 | |
| 18:02:21 | sean-k-mooney | https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/409 | |
| 18:02:39 | donnyd | dansmith: using file backend because it performs the fastest | |
| 18:02:41 | sean-k-mooney | i think we had this conversation for bandwidth too | |
| 18:03:07 | aspiers | oh found it | |
| 18:03:07 | dansmith | donnyd: yeah, there are chunk size knobs for several of them, filesystem included | |
| 18:03:17 | aspiers | nova.api.openstack.compute.migrate_servers | |
| 18:03:25 | dansmith | donnyd: 64k by default, apparently, which is pretty dang small | |
| 18:03:49 | donnyd | Yea that is a little on the small side | |
| 18:04:07 | dansmith | for 1gE that's probably okay, but not 10gE I'd think.. | |
| 18:04:23 | sean-k-mooney | aspiers: right here https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/migrate_server.py#L61-L68 | |
| 18:04:29 | donnyd | the controller side is 40G | |
| 18:04:34 | aspiers | OK so I want the check to go in nova.api.openstack.compute.migrate_servers not nova.compute.api | |
| 18:04:36 | donnyd | and each compute is 10 | |
| 18:04:44 | dansmith | donnyd: the rbd default chunk is 8MiB, fwiw | |
| 18:05:15 | sean-k-mooney | aspiers: or in your case you want the live_migrate check below it | |
| 18:05:18 | sean-k-mooney | https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/migrate_server.py#L127-L137 | |
| 18:05:22 | dansmith | although it's not clear if that chunk size affects streaming like the filesystem one does | |
| 18:05:58 | sean-k-mooney | aspiers: so that his proably the method you want to extend to call into hardware.py and check if sev is requested | |
| 18:06:06 | mriedem | aspiers: i don't know that it matters really; i liked the decorator b/c you don't have to copy/paste the validation logic | |
| 18:06:31 | mriedem | if you do it in nova.compute.api.API methods you'll have to handle whatever exception you raise so that the api doesn't return a 500 | |
| 18:06:43 | aspiers | mriedem: got it | |
| 18:06:58 | sean-k-mooney | mriedem: well you chould still use a decorator on thos funcitons | |
| 18:07:12 | mriedem | sean-k-mooney: i'd rather not use a decorator on those | |
| 18:07:17 | aspiers | yes, so decorate nova.compute.api.API and handle the new exception in nova.api.openstack.compute.migrate_server | |
| 18:07:19 | mriedem | the decorator for wsgi stuff is really about wsgi | |
| 18:07:27 | sean-k-mooney | ok | |
| 18:07:32 | mriedem | the compute API methods already have decorators that do sniff tests | |
| 18:07:37 | mriedem | like task_state, is locked, etc | |
| 18:07:42 | aspiers | yeah I was copying those | |
| 18:07:59 | aspiers | now we just have to spend 3 hours bikeshedding the new exception name | |
| 18:08:12 | sean-k-mooney | aspiers: or just add a method to hardware.py that raise the correct excption | |
| 18:08:24 | sean-k-mooney | then jsut call it in all the palces you need too | |
| 18:08:35 | aspiers | hardware.py doesn't know what operation is being done | |
| 18:08:37 | sean-k-mooney | most of the exception in hardware.py inherit form the http ones | |
| 18:09:04 | sean-k-mooney | yes but you can call it form the api and pass in the oppertion if its needed | |
| 18:09:23 | aspiers | that feels like mixing up layers to me | |
| 18:09:42 | aspiers | I think I have enough hints to get it done now, thanks guys | |
| 18:09:59 | sean-k-mooney | not sure i helped much | |
| 18:10:10 | mriedem | stephenfin: ok, -1 :) | |
| 18:10:14 | aspiers | sean-k-mooney: ;-) | |
| 18:13:07 | openstackgerrit | Dustin Cowles proposed openstack/nova master: Provider Config File: YAML file loading and schema validation https://review.opendev.org/673341 | |
| 18:13:07 | openstackgerrit | Dustin Cowles proposed openstack/nova master: WIP: Provider Config File: Public method to retrieve custom resources https://review.opendev.org/676029 | |
| 18:13:08 | openstackgerrit | Dustin Cowles proposed openstack/nova master: WIP: Provider Config File: Update provider tree with new custom resources https://review.opendev.org/676522 | |
| 18:13:49 | sean-k-mooney | dansmith: artom: so live migration form (master) src node to (artoms code) dest node with unpinned or pinned rpc | |
| 18:14:02 | sean-k-mooney | appears to work the same as if we pin to the old rpc version | |
| 18:14:05 | sean-k-mooney | e.g. no xml updates | |
| 18:15:03 | sean-k-mooney | and you can live migrate it back too | |
| 18:16:34 | mriedem | here it comes | |
| 18:17:46 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add prep_snapshot_based_resize_at_dest compute method https://review.opendev.org/633293 | |
| 18:17:46 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add PrepResizeAtDestTask https://review.opendev.org/627890 | |
| 18:17:47 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add prep_snapshot_based_resize_at_source compute method https://review.opendev.org/634832 | |
| 18:17:47 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add PrepResizeAtSourceTask https://review.opendev.org/627891 | |
| 18:17:48 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add finish_snapshot_based_resize_at_dest compute method https://review.opendev.org/635080 | |
| 18:17:48 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add FinishResizeAtDestTask https://review.opendev.org/635646 | |
| 18:17:49 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Execute CrossCellMigrationTask from MigrationTask https://review.opendev.org/635668 | |
| 18:17:49 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Plumb allow_cross_cell_resize into compute API resize() https://review.opendev.org/635684 | |
| 18:17:50 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Filter duplicates from compute API get_migrations_sorted() https://review.opendev.org/636224 | |
| 18:17:50 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Start functional testing for cross-cell resize https://review.opendev.org/636253 | |
| 18:17:51 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Handle target host cross-cell cold migration in conductor https://review.opendev.org/642591 | |
| 18:17:51 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Validate image/create during cross-cell resize functional testing https://review.opendev.org/642592 | |
| 18:17:52 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add zones wrinkle to TestMultiCellMigrate https://review.opendev.org/643450 | |
| 18:17:52 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add negative test for cross-cell finish_resize failing https://review.opendev.org/643451 | |
| 18:17:53 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Refresh instance in MigrationTask.execute Exception handler https://review.opendev.org/669012 | |
| 18:17:53 | openstackgerrit | Matt Riedemann proposed openstack/nova master: Add negative test for prep_snapshot_based_resize_at_source failing https://review.opendev.org/669013 | |
| 18:17:54 | openstackgerrit | Matt Riedemann proposed openstack/nova master: WIP: Add confirm_snapshot_based_resize_at_source compute method https://review.opendev.org/637058 | |