| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2018-12-14 | |||
| 15:45:16 | mriedem | existing plugins will need to move over to the new model, | |
| 15:45:27 | mriedem | and then the old stuff will be dropped sometime in T with a major release of os-vif, | |
| 15:45:34 | mriedem | and kuryr-k8s is ok with that plan? | |
| 15:46:17 | mriedem | and hopefully no one is storing a serialized version of these things with the old model in a db somewhere... | |
| 15:46:32 | mriedem | i.e. the object model will always be recalculated at the time it's needed | |
| 15:46:53 | jangutter | mriedem: I don't think os-vif is needs to do a major release until we've ironed out the upgrade path -> sean-k-mooney and jaypipes will likely assign some fun stuff to me. | |
| 15:48:50 | jangutter | mriedem: pinning object version numbers would not break backwards compatibility? | |
| 15:49:39 | aspiers | mriedem: Have made some progress on your questions. More detail soon but quick summary for now is that q35 machine type doesn't support IDE which means we'll have to jump through an extra hoop or two in certain cases (configdrive defaults to iso9660 which currently means ide bus on x86_64), but given the existing virtio-scsi support I'm optimistic this won't be a big hurdle (to mix metaphors). It will | |
| 15:49:40 | mriedem | pinning how? where? | |
| 15:49:40 | aspiers | almost certainly require extra documentation though, and possibly extra requirements on any images which need to work with SEV+configdrive. | |
| 15:50:05 | aspiers | I think similar caveats will apply for volumes attached via IDE too | |
| 15:50:18 | jangutter | mriedem: i.e. not incrementing the version numbers of the objects. | |
| 15:50:57 | aspiers | but these caveats already apply when q35 machine type is requested via image metadata, so it's not an entirely new limitation | |
| 15:51:25 | mriedem | aspiers: yeah i saw that yesterday, thanks. if we're already documenting things for sev limitations, i guess saying "config drive will require vfat" which, since that's per-host today, means you'd have sev instances restricted to certain hosts - which people would probably do anyway given the reserved memory restrictions, | |
| 15:51:47 | mriedem | i had thought there was an image property to tell nova which config drive format to use, but i only see img_config_drive to tell nova to use config drive or not | |
| 15:51:55 | mriedem | maybe it's just not documented... | |
| 15:52:23 | aspiers | mriedem: yeah exactly, there's also the hardware requirement for SEV support they already have to consider :-) | |
| 15:52:34 | mriedem | i guess there isn't an image property for the config drive format, | |
| 15:52:45 | aspiers | I didn't see one | |
| 15:52:54 | mriedem | we could certainly add that, seems weird that it's per-host config and not per-instance | |
| 15:52:55 | aspiers | it looks hardcoded to me | |
| 15:53:02 | mriedem | it's a config option | |
| 15:53:06 | aspiers | right | |
| 15:53:37 | mriedem | i'd like to avoid conditional logic on the type by adding things like "if SEV use vfat" etc | |
| 15:53:55 | aspiers | yes I agree | |
| 15:54:17 | aspiers | don't want to introduce any more snowflake code than strictly necessary | |
| 15:54:51 | aspiers | mriedem: but it made me wonder, is there any good reason why x86_64 is the only architecture still using ide for configdrive? | |
| 15:54:57 | mriedem | jangutter: i thought the spec said that for the new composable interface stuff there wouldn't be version changes on the object model | |
| 15:55:05 | aspiers | I looked at the git commit history and it seemed to be just a legacy thing | |
| 15:55:15 | mriedem | aspiers: idk, it could just be really old code | |
| 15:55:23 | mriedem | i'm not really familiar with that though, mdbooth might be more help | |
| 15:55:42 | aspiers | originally it was x86_64 only, and later other archs were added which couldn't use ide | |
| 15:55:50 | aspiers | so yeah, I think it's just really old code | |
| 15:56:14 | aspiers | but even if so, I'm guessing changing it would break some guests which are maybe expecting the config drive to be IDE | |
| 15:56:30 | mriedem | maybe, | |
| 15:56:49 | aspiers | one of our qemu/libvirt gurus recommends virtio-scsi | |
| 15:56:49 | mriedem | if the guest knows what it wants for the config drive format, we should really have an image property or flavor extra spec for that | |
| 15:57:07 | aspiers | that sounds like a good idea ot me | |
| 15:57:10 | aspiers | BTW I also found https://blueprints.launchpad.net/nova/+spec/virtio-scsi-by-default | |
| 15:57:19 | aspiers | which is per-host | |
| 15:57:29 | aspiers | so maybe that could help | |
| 15:57:49 | aspiers | well, I guess that wouldn't affect configdrive | |
| 15:57:57 | jangutter | mriedem: as far as I understand (and that's a follow-on question later), changing the object hash means you _should_ bump the version. we'll be changing the hash, but deciding not to bump the version. | |
| 15:57:58 | mriedem | "2) VMs will be able to have more than 26 volumes attached, up to 255." | |
| 15:58:05 | mriedem | that overlaps with a bp melwitt is working on | |
| 15:58:12 | aspiers | oh, interesting | |
| 15:58:18 | mriedem | https://blueprints.launchpad.net/nova/+spec/conf-max-attach-volumes | |
| 15:58:21 | melwitt | did someone say... volumes | |
| 15:58:26 | aspiers | :D | |
| 15:58:48 | aspiers | I also found caveats here https://access.redhat.com/solutions/1758693 but not sure if they still apply | |
| 15:58:55 | aspiers | I don't have access to the rest of that article ;-P | |
| 15:59:34 | mriedem | jangutter: yes you should bump the versoin whenever you change the object model | |
| 15:59:41 | mriedem | like new fields, new methods, method signature changes, etc | |
| 16:00:01 | mriedem | however, if nothing is using the os-vif objects over the wire, it's mostly just a best practice | |
| 16:00:26 | mriedem | so like i said on the spec, it's not the end of the world if the rules are bent during a transition here for hte library | |
| 16:00:42 | aspiers | mriedem: any other configdrive experts I should poll on this? just mdbooth? | |
| 16:00:46 | mriedem | i.e. ultimately we get the same thing from os-vif as we do from os-brick, and os-brick is just random dicts | |
| 16:01:05 | mriedem | we take a thing from cinder, pass it to brick, get a dict back, pass that to cinder, | |
| 16:01:13 | mriedem | and the vendor backends all understand what is in their special dict | |
| 16:01:14 | jangutter | mriedem: yes - and Jay keeps trying to get me to say that out loud in our open-plan office. | |
| 16:01:15 | mriedem | same thing with os-vif | |
| 16:01:34 | mriedem | if this channel is our open plan office, i just said it out loud | |
| 16:01:54 | mriedem | it makes upgrades extremely brittle, | |
| 16:02:19 | mriedem | and really can/should only support N-1 at most lockstep upgrades between nova/cinder and nova/neutron, | |
| 16:02:19 | aspiers | If the only clean way to solve this is adding a per-image property for configdrive bus, I could submit a bp/spec for that. I guess we'd also have to decide whether that's a strict dependency on the critical path to the SEV MVP, or something which can proceed in parallel. | |
| 16:02:28 | mriedem | but no one has cared enough yet to take that on | |
| 16:02:43 | mriedem | aspiers: mikal has historically been the goto config drive person | |
| 16:02:49 | aspiers | gotcha, thanks | |
| 16:02:55 | mriedem | but you would likely have to email him | |
| 16:02:57 | melwitt | aspiers: fwiw there's not additional caveats on the article beyond what shows in that "preview" | |
| 16:03:04 | jangutter | mriedem: yes - and the trouble is that os-vif, even though it's pretty new, has already gotten some crufty bits Sean and Jay wants to clean up. | |
| 16:03:04 | aspiers | melwitt: thanks! | |
| 16:03:35 | mriedem | aspiers: that doesn't need it's own bp, it would just be a work item in your existing sev spec | |
| 16:03:45 | mriedem | i.e. you have two options as a deployer: | |
| 16:04:04 | mriedem | 1. config the host(s) to use vfat for everything, and use host aggregates to pin sev instances to those hosts (you might do this anyway as noted) | |
| 16:04:20 | mriedem | 2. if you mix instances on hosts (sev and non-sev), then you can add an image property to control the config drive format for the sev instances | |
| 16:05:03 | aspiers | yup, that makes sense | |
| 16:05:10 | mriedem | jay is always looking to clean up crufty bits, with fire usually | |
| 16:05:39 | jangutter | mriedem: so the core question is - should I cut down that section (saying - the adoption plan for these interfaces will be ironed out. Promise!) | |
| 16:06:00 | jangutter | mriedem: or scale up -> this is the twelve-point plan for world domination, we have everything in hand. | |
| 16:06:00 | mriedem | jangutter: so going back to what i asked earlier http://paste.openstack.org/show/737315/ - is that correctly capturing the plan? | |
| 16:06:16 | aspiers | mriedem: beginning to sound like we need yet another patchset then... I feel increasingly guilty each time I submit a new one ;-/ | |
| 16:06:21 | mriedem | jangutter: it doesn't need to be either extreme, | |
| 16:06:45 | mriedem | it can be "here is the proposed high-level plan, details will be ironed out during implementation" | |
| 16:06:54 | mriedem | but if http://paste.openstack.org/show/737315/ is the high level plan, then throw that in the spec | |
| 16:06:58 | jangutter | mriedem: I think, the last line is probably going to be - we'll work with kuryr to help them during the transition. | |
| 16:07:10 | mriedem | ok | |
| 16:07:16 | mriedem | then shoot the moon i guess | |
| 16:07:26 | openstackgerrit | Theodoros Tsioutsias proposed openstack/nova master: Add requested_networks to RequestSpec https://review.openstack.org/570201 | |
| 16:07:27 | openstackgerrit | Theodoros Tsioutsias proposed openstack/nova master: Add instance hard delete https://review.openstack.org/570202 | |
| 16:07:27 | openstackgerrit | Theodoros Tsioutsias proposed openstack/nova master: [WIP] Enable rebuild for instances in cell0 https://review.openstack.org/570203 | |
| 16:07:58 | aspiers | mriedem: regarding IDE attached volumes I'm thinking that this could just be a documented limitation, similarly to the boot disk limitation against virtio-blk | |
| 16:08:21 | aspiers | I don't think there are any other limitations re. volumes but still confirming that | |
| 16:08:39 | jangutter | mriedem: many, many, many thanks. And one more indulgence. | |
| 16:09:13 | jangutter | mriedem: Looking at ovo I didn't find good docs describing the effects of inheritance and composition on object versions.... | |
| 16:09:29 | mriedem | jangutter: they probably don't exist | |
| 16:09:30 | jangutter | mriedem: composition's always been "use a map" or something. | |
| 16:09:44 | mriedem | jangutter: i will have to defer to dansmith on that | |
| 16:10:00 | jangutter | mriedem: before I forget all of this and have to relearn it -> where would the best place be to commit it, onto the ovo docs? | |
| 16:10:25 | mriedem | probably yeah | |