Earlier  
Posted Nick Remark
#openstack-nova - 2018-01-11
14:01:13 efried gibi bauzas Somebody oughtta do it. The time is now :)
14:03:01 mdbooth bauzas: I really think it's only volumes.
14:03:30 mdbooth The others we're just adding devices to the guest. The different with volumes and now vgpus is that we're reconfiguring the host.
14:03:46 mdbooth So we're doing _get_guest_xml() and it has surprising side-effects
14:03:48 bauzas mdbooth: https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L4882 ?
14:04:09 mdbooth bauzas: Yeah, that's just pulling them out of the instance.
14:04:16 mdbooth IIUC they've already been allocated elsewhere.
14:04:17 bauzas mdbooth: what's the difference between attaching a PCI device or a mediated device ?
14:04:40 mdbooth Because you're not creating the pci device, or doing any kind of 'scheduling'
14:05:13 mdbooth You're not calling _get_guest_xml() and suddenly you've created a new pci device
14:05:59 mdbooth Anyway, I agree with your prioritisation. That said, I really don't like it about volumes, and I'm uncomfortable adding more of it.
14:06:03 bauzas mdbooth: but the allocation was made way earlier :)
14:06:12 bauzas for the VGPU
14:06:35 bauzas if you go to that compute, that's because it has free space for a vGPU
14:06:45 bauzas because placement told you
14:06:58 bauzas exactly like NUMA things
14:07:12 bauzas the scheduler or placement won't know which specific device you're assigned
14:07:19 bauzas but it will know there is room for you
14:07:39 bauzas in theory, you should never raise the exception I added
14:08:47 mdbooth bauzas: There's also the case of recreating the domain xml with existing mdevs.
14:09:35 mdbooth Although perhaps that doesn't matter as long as we're absolutely certain the domain isn't running.
14:09:58 mdbooth But again that's an embedded assumption which makes everything harder to understand.
14:10:32 bauzas mdbooth: the problem is that the XML isn't persisted when you stop the instance
14:10:38 bauzas I mean in Nova
14:10:46 bauzas that's surprising to me
14:10:57 bauzas we regenerate the XML when we start again the instance
14:11:02 bauzas while it's already been defined !
14:11:23 bauzas mdbooth: any idea you know why ?
14:11:25 mdbooth Yeah, that's... suboptimal.
14:11:34 bauzas that's rather errorprone
14:11:52 mdbooth A legacy design choice that Nova is the ultimate source of truth. It means we lose stuff like device ordering and address assignments.
14:13:04 bauzas I can understand the reasoning
14:13:12 bauzas but then, you somehow need to persist that
14:13:19 bauzas and rather not rebuilding it
14:13:23 bauzas but that's MHO
14:13:34 bauzas and I'm possibly missing some design choices
14:14:28 artom It may have come from the need to support other drivers?
14:14:35 artom Who don't necessarily keep state like libvirt does?
14:14:50 mdbooth artom: This is an internal libvirt driver detail.
14:15:10 bauzas anyway
14:15:36 bauzas I have some stupid formatting to do, because pci names are different from filesystem
14:15:47 bauzas I mean pci names in libvirt
14:15:53 bauzas grrrr
14:15:56 mdbooth bauzas: I agree that moving that stuff is less important, though.
14:16:21 mdbooth I think where we differ is much less important we think it is ;)
14:16:37 cdent "source of truth" is definitely a common issue
14:17:09 bauzas distributed systems is a NP-problem by definition
14:17:18 bauzas so I'm not afraid
14:20:13 mdbooth bauzas: The other things are bugs, anyway. This is an issue of ongoing maintainability.
14:21:15 kashyap stephenfin: Hey, have you setup DevStack lately on an older branch (Mitaka) on CentOS?
14:21:41 stephenfin kashyap: Newton is as far back I've gone in a while, I think
14:21:42 kashyap I don't see Mitaka branch in DevStack, do they "delete" the older branches?
14:21:46 stephenfin and that was before it was EOL
14:21:56 stephenfin I guess they do. Look for the mitaka-eol tag
14:22:22 kashyap stack@devstack-centos ~/src/cloud/devstack (master) $ git branch -a | grep -i mitaka
14:22:25 kashyap stack@devstack-centos ~/src/cloud/devstack (master) $ echo $?
14:22:28 kashyap 1
14:22:42 stephenfin git tag -a | grep -i mitaka
14:23:01 kashyap s/-a/-l/
14:23:25 stephenfin Indeed
14:23:26 kashyap Yep, could fetch from the tag. Thx.
14:23:35 stephenfin Once you've that checked out, you'll also want to modify the branches that are checked out, e.g. https://gist.github.com/stephenfin/d1c000f7e52ff181c4673322b28eaf47#file-local-conf-L71-L81https://gist.github.com/stephenfin/d1c000f7e52ff181c4673322b28eaf47#file-local-conf-L71-L81
14:23:46 stephenfin I guess they should all be 'mitaka-eol'
14:24:25 kashyap stephenfin: Yeah, my attempt on Fedora for Mitaka failed
14:25:07 kashyap Failed as in, the libvirt-python wonkiness: http://paste.openstack.org/show/642707/
14:25:08 stephenfin Aye, an LTS distro is probably the way to go. Guess either Ubuntu 14.04 or CentOS 7.4 is your best bet
14:25:29 kashyap It's missing two of the events, when building libvirt-python
14:25:59 kashyap Didn't wanted to duke around there, so just went w/ CentOS. Let's see how that goes.
14:27:12 kashyap stephenfin: I used to use -- https://kashyapc.fedorapeople.org/virt/openstack/Minimal-DevStack-local.conf
14:27:26 kashyap I know it could be improved (Neutron is now default, etc).
14:50:09 openstackgerrit Lee Yarwood proposed openstack/nova master: libvirt: Collocate encryptor and volume driver calls https://review.openstack.org/460243
14:50:10 openstackgerrit Lee Yarwood proposed openstack/nova master: WIP libvirt: QEMU native LUKS decryption for volumes https://review.openstack.org/523958
14:50:10 openstackgerrit Lee Yarwood proposed openstack/nova master: libvirt: Introduce disk encryption config classes https://review.openstack.org/464008
15:03:13 mriedem oops, totally forgot about the team meeting
15:03:51 mriedem gibi: thanks for running that
15:05:04 openstackgerrit sahid proposed openstack/nova master: libvirt: slow live-migration to ensure network is ready https://review.openstack.org/497457
15:05:05 gibi mriedem: no problem, I was not prepared but I could run it
15:10:30 efried Hi cores, would anyone be willing to look at the first two patches for the PowerVM integration bp? https://review.openstack.org/#/q/status:open+project:openstack/nova+branch:master+topic:bp/powervm-nova-it-compute-driver
15:11:00 efried stephenfin gibi bauzas perhaps if you have time?
15:11:43 stephenfin efried: I've been meaning to review the OVS VIF one, but I'll have to leave the storage patches to someone else
15:11:45 bauzas efried: I'm still rushing on my feature branch :/
15:11:52 bauzas efried: blame mdbooth
15:12:09 mdbooth bauzas: Sorry :P
15:12:52 bauzas mdbooth: no worries, you just owe me a beer :p
15:12:58 bauzas et voila!
15:13:16 bauzas interesting, creating a new mdev even if you have a kernel race works
15:13:25 bauzas that's awesome news
15:13:37 bauzas since the mdev is *really* created, you can ask libvirt to use it
15:13:46 bauzas even if libvirt isn't able to show it per its API
15:13:53 bauzas amazing
15:14:10 bauzas so, one big caveat isn't really a big deal and not requiring a separate change
15:14:14 bauzas just docs
15:14:22 bauzas huzzah
15:14:24 efried stephenfin Thanks, anything helps. TBH, there's not a lot of storage (or network) understanding required for these. The guts are in the pypowervm lib; these patches are really just translating the nova-ese to powervm-ese.
15:19:14 mriedem stephenfin: do you see anything obviously wrong with https://review.openstack.org/#/c/532689/ ? i ran it last night through the experimental queue but results were never posted back on the patch
15:20:05 mriedem i can see it queued up in the experimental queue in zuul right now
15:22:24 mriedem gmann: https://review.openstack.org/#/c/330406/85/nova/api/openstack/compute/migrations.py@119
15:22:32 mriedem we have 2.0 and 2.1 all over the API, it doesn't seem to make a difference
15:24:07 openstackgerrit sahid proposed openstack/nova master: hardware: only take into account small pages https://review.openstack.org/532168
15:26:57 hongbin mrodden: mlavalle : want to make a call on the full substring or partial substring debate https://review.openstack.org/#/c/521683/ ?

Earlier   Later