| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-03-20 | |||
| 21:41:34 | efried | oo, cdent do tell | |
| 21:41:52 | klindgren | mriedem, yes we will have 2 people there | |
| 21:41:53 | mriedem | cdent: did someone put potato skins down the drain again? | |
| 21:41:55 | klindgren | I won't be there | |
| 21:42:03 | cdent | mriedem: twice | |
| 21:42:03 | klindgren | afaik | |
| 21:42:08 | mriedem | klindgren: at least throw something on here https://etherpad.openstack.org/p/nova-ptg-train | |
| 21:42:23 | cdent | efried: I'm relatively certain the same config is being used twice and it should be. need to confirm | |
| 21:42:28 | mriedem | and if you start coming up with design ideas and have thought through the corner cases and such, it'd be good to dump those thoughts in the ML | |
| 21:42:33 | dansmith | mriedem: injection_info = InjectionInfo(network_info=network_info, | |
| 21:42:33 | dansmith | files=injected_files, | |
| 21:42:44 | cdent | and I'm not clear why this only matters for logging opts | |
| 21:42:48 | cdent | but we'll see | |
| 21:42:52 | dansmith | mriedem: ^ is where we pass in the injected files to be written to the configdrive | |
| 21:43:22 | dansmith | mriedem: so I don't think host config disabling injection tells us anything about what is in the configdrive image | |
| 21:43:34 | mriedem | ok | |
| 21:43:38 | mriedem | RequestSpec to the rescue! | |
| 21:43:52 | dansmith | or system_metadata, a count of injected files we assert to be nonzero or something | |
| 21:44:00 | dansmith | but still, it's going to be confusing for admins, | |
| 21:44:15 | dansmith | wondering why some instances are migratable and/or don't depend on ssh keys and some do | |
| 21:44:18 | dansmith | but..yeah. | |
| 21:45:15 | dansmith | if we had the http service integrated into compute for the health check, we could do something better, like allowing one compute to fetch the image via one-time token from the source | |
| 21:46:11 | dansmith | i.e. fetch http://sourcehost/migration_assets/$uuid | |
| 21:46:18 | dansmith | they have to be able to talk to each other anyway | |
| 21:46:28 | dansmith | and just make that self-destruct as soon as the GET is performed | |
| 21:47:44 | mriedem | have you changed topics? or in the wrong channel perhaps? :) | |
| 21:47:50 | dansmith | no? | |
| 21:47:53 | mriedem | oh | |
| 21:47:55 | mriedem | heh | |
| 21:48:09 | mriedem | i'm not sure where "if we had the http service integrated into compute for the health check" came from | |
| 21:48:32 | dansmith | thinking of better ways to move bulk data between compute nodes than requiring ssh keys and allowing logins | |
| 21:48:44 | dansmith | because that _is_ totally nuts from a security perspective, | |
| 21:49:06 | dansmith | and fixing that with something more secure would be better than just adding a different path (regen) which only works in some cases anyway | |
| 21:49:55 | dansmith | such an approach would work for and fix the security holes in cold migration as well | |
| 21:50:26 | mriedem | well, it's essentially what i'm doing for cross-cell resize with glance | |
| 21:50:40 | dansmith | using glance as the intermediary, but yeah | |
| 21:50:59 | mriedem | noting now that your config drive will have to get rebuilt on the other side... | |
| 21:51:11 | mriedem | does config driver already get rebuilt on resize? | |
| 21:51:15 | mriedem | *drive | |
| 21:51:20 | dansmith | I thought it gets copied | |
| 21:51:34 | dansmith | along with the root disk | |
| 21:51:57 | mriedem | i'm not sure https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L8882 | |
| 21:52:00 | dansmith | if we had this http endpoint, your cross-cell resize stuff could be much more like regular resize and not have to go through glance | |
| 21:52:34 | dansmith | mriedem: that doesn't run if it already exists | |
| 21:52:44 | dansmith | so yeah, maybe that means it's regen'd but if it's copied then it won't | |
| 21:53:03 | dansmith | https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L3626 | |
| 21:54:17 | mriedem | hmm yeah so i suppose disk.config gets copied here https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L8811 | |
| 21:55:39 | mriedem | huh, i guess that's something that needs to be at least documented for the cross-cell stuff as a limitation right now because it's not doing anything with the config drive, so it's going to get regenerated on the dest and you'd lose any personality files | |
| 21:56:40 | dansmith | you're welcome. | |
| 21:58:23 | mriedem | duly noted in my re-proposed spec https://review.openstack.org/#/c/642807/1 | |
| 21:58:41 | mriedem | i don't know what the answer is, upload a snapshot of the disk.config to glance? | |
| 22:00:04 | dansmith | no the answer is implement an http server :D | |
| 22:03:38 | cdent | efried, mriedem : the gist of the problem is that you can register other opts multiple times, but not cli opts, and adding oslo_log.log.register_opts() to the common path brings CLI options into the scene of test_local_delete_removes_allocations_after_compute_restart, where config is registered multiple times (3 in fact) | |
| 22:04:11 | cdent | it only shows up in that test because we are doing some wildness with the PlacementFixture that doesn't happen anywhere else | |
| 22:04:27 | cdent | candidates for fixing it: | |
| 22:04:36 | cdent | 1. that revert, worry about it later | |
| 22:05:24 | cdent | 2. change that test to do things differently (hard because the reference to the in ram sqlite database needs to be maintained) | |
| 22:05:53 | cdent | 3. change the placement fixture (on the placement side) to take a flag to register or not register opts | |
| 22:06:17 | cdent | 3 is probably the best choice in the long run, and won't take me long to do | |
| 22:06:27 | efried | why does the placement fixture need to register opts ever? | |
| 22:06:45 | cdent | because it has to use opts in order to start placement | |
| 22:06:49 | efried | I guess when tests go after opts, the defaults need to be there. | |
| 22:06:51 | efried | and that | |
| 22:07:10 | cdent | unfortunately the way oslo_config works, it has to know about stuff | |
| 22:07:15 | cdent | (good and bads to that) | |
| 22:07:28 | efried | 3 today, or should we 1 to unblock and then 3? | |
| 22:07:54 | cdent | the mode the fixture has now is "don't make the caller think, if possible" | |
| 22:08:06 | cdent | I'm happy with just 3 if everyone else is | |
| 22:08:19 | cdent | but if you want to unblock quicker, then 1 and then 3 | |
| 22:08:40 | efried | yeah, let's merge 1 and you can put 3 on top and include unrevert in it? | |
| 22:09:13 | cdent | I wanted to be able to find a version of 2, but that test is already so hairy I don't think it is worth | |
| 22:09:14 | cdent | sure | |
| 22:09:33 | cdent | feel free to push the revert through | |
| 22:10:03 | efried | cdent, mriedem, melwitt: fast-approved https://review.openstack.org/#/c/645014/ | |
| 22:10:44 | efried | and then mriedem respun and did same, neat | |
| 22:10:51 | mriedem | i added the bug tag | |
| 22:11:06 | efried | yup, ++ | |
| 22:12:58 | openstackgerrit | Eric Fried proposed openstack/nova master: DNM: Trying a different strategy for tests https://review.openstack.org/645026 | |
| 22:19:57 | melwitt | efried: ack, thanks | |
| 22:25:45 | mriedem | well now i'm depressed and have a 2 hour call in 3 hours so it's time to leave | |
| 22:35:40 | NobodyCam | anyone have any pointers to stacking down instances stuck in scheduling .. I set nova* to debug mode and don't see any errors jumping out | |
| 22:36:26 | NobodyCam | s/stracking/tracking | |
| 22:36:39 | openstackgerrit | Chris Dent proposed openstack/nova master: Don't register placement opts mutiple times in a test https://review.openstack.org/645033 | |
| 22:37:37 | cdent | mriedem_away, efried ^ that fixes the nova side and depends-on the placement side fix | |
| 22:39:02 | NobodyCam | I do see this in the compute log: | |
| 22:39:04 | NobodyCam | Instance 7d8f61e6-155c-47a9-9d35-95939b29d487 has been scheduled to this compute host, the scheduler has made an allocation against this compute node but the instance has yet to start. Skipping heal of allocation: {u'resources': {u'MEMORY_MB': 1024, u'VCPU': 1, u'DISK_GB': 20}}. _remove_deleted_instances_allocations /openstack/venvs/nova-18.1.5.dev5/lib/python2.7/site-packages/nova/compute/resource_tracker.py:1355 | |
| 23:16:22 | aspiers | cdent: OK, now you are not just ahead of me but downright telepathic. I was about to report that placement issue... | |
| 23:17:00 | cdent | aspiers: which one? | |
| 23:17:17 | aspiers | the option registering | |
| 23:17:38 | cdent | that's mriedem_away's psychic powers not mine | |
| 23:18:49 | aspiers | OK, so you just fixed it :) | |
| 23:19:12 | aspiers | Either way it's nice when things get fixed even before I get a chance to report them | |
| 23:19:17 | aspiers | haha | |
| 23:20:17 | cdent | it's all smoke and mirrors. There's an openstack cabal where people like efried, mriedem_away, me place latent bugs into the code that we can then fix quickly, making ourselves appear heroic and super insightful | |
| 23:20:40 | aspiers | That's dastardly cunning | |
| 23:21:04 | cdent | the chaos that you see isn't figuring out the solution for the bug, it's figuring out which bug, of the many that we have caused, is being revealed this time | |
| 23:21:30 | aspiers | I'd hope our govt was doing the same, but alas they're not | |
| 23:21:38 | cdent | heh | |
| 23:22:04 | cdent | it's...shocking | |
| 23:22:40 | aspiers | damn right | |