| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2019-11-21 | |||
| 18:13:09 | efried | that can't be true | |
| 18:13:21 | openstackgerrit | Lee Yarwood proposed openstack/nova master: block_device: Copy original volume_type when missing for snapshot based volumes https://review.opendev.org/694497 | |
| 18:13:25 | sean-k-mooney | why cant it. | |
| 18:13:27 | efried | you telling me there's no way to discover the compute node UUID from the host? | |
| 18:13:44 | efried | seems like I asked mriedem about this the other day... | |
| 18:13:58 | sean-k-mooney | not via the hyperviors api | |
| 18:14:11 | sean-k-mooney | or the compute service list | |
| 18:16:21 | efried | ...okay, the result of said discussion was "the RP name matches CONF.host" -- which you've just proven ain't true. | |
| 18:16:37 | sean-k-mooney | right it was ment to | |
| 18:16:50 | sean-k-mooney | it actully match the result of calling get_hostname | |
| 18:16:56 | sean-k-mooney | or what ever that function is called | |
| 18:18:23 | sean-k-mooney | ill grant you the fact that they have set the confg value so they dont amctch is a little weired but it shoudl actully work | |
| 18:18:27 | openstackgerrit | John Garbutt proposed openstack/nova master: WIP: just an idea, adding scope checking https://review.opendev.org/695550 | |
| 18:18:35 | efried | dammit, having it be hypervisor_hostname is the *right* thing | |
| 18:18:46 | efried | but yeah, it makes discoverability problematic. | |
| 18:19:03 | sean-k-mooney | yes it would be if we used that when talking to neutron and cinder | |
| 18:19:07 | sean-k-mooney | but we dont | |
| 18:19:51 | efried | nova.compute.resource_tracker.ResourceTracker._update_to_placement would have to condition on "am I ironic?" | |
| 18:20:50 | efried | https://opendev.org/openstack/nova/src/branch/master/nova/compute/resource_tracker.py#L1111-L1112 | |
| 18:21:19 | efried | heck, I don't even know if we have a way to tell at that point in the code whether we're ironic. | |
| 18:22:02 | efried | Can't we just deprecate CONF.host? :P | |
| 18:22:15 | sean-k-mooney | possibly although i dont think that is the only place we can creat he compute node record | |
| 18:22:17 | sean-k-mooney | https://github.com/openstack/nova/blob/1cd5563f2dd2b218db2422397c8aab394d484626/nova/compute/resource_tracker.py#L671-L699 | |
| 18:22:51 | efried | the one I linked is the only place we create the provider | |
| 18:22:59 | efried | I'm not talking about changing what's in the compute node record. | |
| 18:23:17 | sean-k-mooney | ah ok | |
| 18:24:10 | sean-k-mooney | ya sorry i was trying to figure out where the hyperviour hostname was set orginally in the compute node | |
| 18:25:00 | sean-k-mooney | in the libvirt case i had kind of assumed it shoudl always match the CONF.host value | |
| 18:25:06 | sean-k-mooney | but i does not | |
| 18:26:22 | efried | it appears as though it's up to the individual driver to set hypervisor_hostname in that resources dict you pointed to. | |
| 18:26:34 | efried | And the libvirt driver asks the libvirt API. | |
| 18:26:42 | efried | nova.virt.libvirt.host.Host.get_hostname | |
| 18:27:00 | efried | which I can only imagine does effectively `hostname` | |
| 18:27:12 | sean-k-mooney | ya which we cant change becasue i think it uses that for live migration | |
| 18:27:22 | efried | can't and shouldn't. | |
| 18:27:47 | efried | It would also be a nightmare at this point to try to change the resource provider name I think. | |
| 18:27:58 | sean-k-mooney | ya | |
| 18:28:12 | sean-k-mooney | so really the host config option cant be used | |
| 18:28:19 | efried | correct | |
| 18:28:27 | efried | at least with libvirt and bandwidth | |
| 18:28:30 | sean-k-mooney | unless you are setting it to the value returin by get_hostname | |
| 18:28:30 | efried | can you think of other places this could break us? | |
| 18:28:47 | sean-k-mooney | cyborg | |
| 18:29:04 | sean-k-mooney | it will be doing the same to creat its resouce right? | |
| 18:29:14 | sean-k-mooney | it was going to look up the RP by name | |
| 18:29:16 | efried | which also relies on the correlation between the hypervisor and the RP? | |
| 18:29:34 | efried | Sundar isn't here, could go check the code... | |
| 18:30:11 | efried | but I'm not gonna. | |
| 18:30:15 | efried | I have him on slack, will ask... | |
| 18:30:23 | sean-k-mooney | ill check | |
| 18:31:31 | sean-k-mooney | so first sign is not promising https://github.com/openstack/cyborg/blob/8f78a05a24ea17ad1036b32e05dbc75233cd374d/cyborg/conductor/manager.py#L360-L372 | |
| 18:33:19 | sean-k-mooney | https://github.com/openstack/cyborg/blob/369abe8dd06aa6648298c3256f444a63ee6268d0/cyborg/agent/manager.py#L40 | |
| 18:33:27 | sean-k-mooney | so it can be set in the config too | |
| 18:35:48 | sean-k-mooney | so yes cyborg would also have to have that set to have the same value set | |
| 18:35:50 | sean-k-mooney | https://github.com/openstack/cyborg/blob/369abe8dd06aa6648298c3256f444a63ee6268d0/cyborg/conf/default.py#L38-L45 | |
| 18:36:03 | sean-k-mooney | they default to socket.getfqdn() | |
| 18:36:55 | sean-k-mooney | nova defualt to socket.getHostname() https://github.com/openstack/nova/blob/1cd5563f2dd2b218db2422397c8aab394d484626/nova/conf/netconf.py#L55-L59 | |
| 18:37:33 | sean-k-mooney | and neutron has there own function | |
| 18:37:34 | sean-k-mooney | https://github.com/openstack/neutron/blob/f8b990736ba91af098e467608c6dfa0b801ec19c/neutron/conf/common.py#L94-L99 | |
| 18:38:31 | sean-k-mooney | which just calls socket.gethostname() | |
| 18:38:33 | sean-k-mooney | https://github.com/openstack/neutron-lib/blob/master/neutron_lib/utils/net.py#L23-L28 | |
| 18:39:01 | sean-k-mooney | so at least nova and neutron agree on the default cyborg could get a differnt value | |
| 18:40:55 | sean-k-mooney | efried: i dont think we can change anything on the nova side so i might have to file a triplo bug | |
| 18:41:41 | sean-k-mooney | although this could be related to this specific deploment | |
| 19:20:37 | mriedem | test_encrypted_cinder_volumes_luks might be failing all the time on multinode jobs too if the volume and server are on different hosts, i wonder if that's causing that to fail | |
| 19:22:32 | mriedem | nvm i guess that's not the case in the failure i'm looking at | |
| 19:45:56 | lyarwood | mriedem: link? I'm about for 15 and can take a look. | |
| 19:50:24 | mriedem | i closed it but it's a bug we've already talked about before https://bugs.launchpad.net/os-brick/+bug/1820007 | |
| 19:50:24 | openstack | Launchpad bug 1820007 in os-brick "Failed to attach encrypted volumes after detach: volume device not found at /dev/disk/by-id" [Undecided,Confirmed] | |
| 19:54:03 | lyarwood | mriedem: ah right, that weirdness | |
| 20:05:34 | lyarwood | mriedem: https://review.opendev.org/695564 - I'll follow up in the morning with this. | |
| 20:10:51 | mriedem | word | |
| 20:29:54 | melwitt | mriedem: I left comments on the --instance and --dry-run backports for the docs | |
| 20:39:15 | mriedem | melwitt: yeah good catch, i left some thoughts/options in https://review.opendev.org/#/c/693199/1/doc/source/cli/nova-manage.rst@358 | |
| 20:39:33 | dansmith | mriedem: speaking of getting off your lawn, | |
| 20:39:54 | dansmith | does it not seem hilarious that we had "% locals()" all over the code, removed it all, and then python baked it into the language? | |
| 20:40:08 | mriedem | i was reading that article ttx linked and thought that exact same thing | |
| 20:40:14 | mriedem | "oh fun this is just using locals" | |
| 20:40:18 | dansmith | right | |
| 20:40:20 | mriedem | not breakable at all! | |
| 20:40:28 | dansmith | so a new incompatible syntax for ... something you can already do but shouldn't | |
| 20:40:29 | dansmith | hah right | |
| 20:40:31 | mriedem | i also didn't know that % pre-dated format() | |
| 20:40:34 | mriedem | i prefer % | |
| 20:40:51 | dansmith | me too, because I'm old school | |
| 20:41:07 | dansmith | I've been doing python since before .format and since before you saw the non-java light, whippersnapper | |
| 20:41:44 | mriedem | hey, now we're both losers because there is go: java for python people | |
| 20:41:55 | dansmith | heh | |
| 20:41:56 | dansmith | indeed | |
| 20:41:59 | mriedem | umm, + pointers | |
| 20:44:05 | mriedem | f strings also looks like you can run functions from within strings, which .... | |
| 20:44:08 | mriedem | seems like erlang? | |
| 20:44:27 | dansmith | you can definitely hit dictionaries, which seems borderline evil | |
| 20:44:34 | dansmith | running functions and you're nearly bash | |
| 20:45:19 | dansmith | I also don't like the single-char prefix to a quoted string syntax python seems to love | |
| 20:45:29 | dansmith | u"foo", r"bar", etc | |
| 20:46:01 | dansmith | and all these new kids with their hoverboards and roller skates...*fist* | |
| 20:46:51 | melwitt | mriedem: replied. no strong opinion here | |
| 20:47:02 | melwitt | I'm cool with whatever you think is best | |
| 20:47:03 | mriedem | melwitt: but what's your take on f-strings?! | |