| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2017-04-26 | |||
| 16:20:02 | johnthetubaguy | right, its not possible today, due to root_gb=0 meaning "don't resize image" | |
| 16:20:07 | cburgess | mriedem Yeah but you killed that. So it seems to me that if we do local_disk=False we either need to build the BDM under the covers, or we need to allow the BDM in the flavor as well. | |
| 16:20:34 | cburgess | johnthetubaguy How does that impact this exactly? | |
| 16:20:40 | mriedem | if we build the bdm under the coveres if local_disk=False, that's the same thing as https://review.openstack.org/#/c/432503/ | |
| 16:20:45 | mriedem | just a different attribute on the flavor | |
| 16:20:56 | mriedem | ^ was doing is_bdm_flavor=True on the flavor | |
| 16:20:58 | mriedem | same idea | |
| 16:21:01 | cburgess | OK | |
| 16:21:02 | cburgess | Well... | |
| 16:21:08 | johnthetubaguy | cburgess: people often assume 0 GB means no disk | |
| 16:21:20 | cburgess | Honestly it seems reasonable to me. But then I thought that spec was reasonable to begin with. | |
| 16:21:25 | cburgess | johnthetubaguy Well they are wrong :P | |
| 16:21:30 | johnthetubaguy | cburgess: agreed | |
| 16:21:35 | mriedem | cburgess: you're saying you like both ideas | |
| 16:21:45 | mriedem | the abandoned spec, and the extra specs / bfv thing | |
| 16:21:59 | mriedem | cburgess: you like anything that gets rid of your local patches :) | |
| 16:21:59 | cburgess | mriedem I'm saying disks are a total and complete mess and we have to find ways of making this easier and better to consume because right now the whole thing is a confusing mess. | |
| 16:22:33 | cburgess | mriedem Yes.. but... I have those local patches because things are a mess. So I like anything that makes a cleaner, easier to use system for users. | |
| 16:22:48 | mriedem | yeah i know, | |
| 16:23:00 | mriedem | if a cinder ephemeral imagebackend is never going to happen, then maybe we go with https://review.openstack.org/#/c/432503/ | |
| 16:23:14 | mriedem | i just really dislike coupling two terrible tech debt things in nova, extra specs and bdms | |
| 16:23:21 | mriedem | because that's bound to be a maintenance nightmare | |
| 16:23:32 | cburgess | Well I think a cinder ephemeral imagebackend is a long term thing. Question is what, if anything, can we do in a cycle or two. | |
| 16:23:44 | smcginnis | I've been seeing more and more requests for using Cinder as ephemeral storage. | |
| 16:23:57 | mriedem | cburgess: nothing is happening in pike | |
| 16:24:05 | mriedem | b/c nothing was proposed before spec freeze | |
| 16:24:24 | mriedem | smcginnis: yes it has been for a long time, the question is how to best provide it w/o adding a bunch of tech debt to nova | |
| 16:24:50 | cburgess | agreed | |
| 16:24:57 | mriedem | as i said earlier, we already have apis that don't work with volume-backed instances | |
| 16:25:10 | mriedem | like, maybe we should fix some of that... | |
| 16:25:13 | johnthetubaguy | mriedem: but is that actually true? or just a bug? | |
| 16:25:17 | cburgess | mriedem I know Boston isn't supposed to be a summit but... I kind of feel like we need a working session at some point to lay out what the correct roadmap for storage is. | |
| 16:25:40 | mriedem | johnthetubaguy: bugs, but big hairy bugs | |
| 16:25:45 | cburgess | mriedem Because we have been dancing around these issues for 2 cycles nw. | |
| 16:25:45 | cdent | cburgess: hasn't that sesssion happened at every summit for the last several years? | |
| 16:25:57 | mriedem | johnthetubaguy: cfriesen was just asking about volume-backed instance rebuild yesterday and how it doesn't work | |
| 16:26:06 | stackempty | mriedem: so what would be my options for now .. to have something close to preventing local disk storage on the hypervisor ? | |
| 16:26:09 | EmilienM | mriedem: hi, I was afk this morning. Please let me know how can I help wrt wsgi | |
| 16:26:12 | mgagne | hehe, we used to have a similar need (default to BFV) in the past and implemented it with an ugly middleware: https://gist.github.com/mgagne/161bd7eaeb4c747fa1ae97c0bc43c093 | |
| 16:26:14 | cburgess | cdent Sort of. We keep doing it in terms of a feature request or two from individual parties (multi-attach, volume-type, etc). | |
| 16:26:37 | cburgess | cdent I'm thinking we need a more high level, ignoring all individual feature requests, what do we have now and where do we need to involve it too | |
| 16:26:38 | mriedem | stackempty: it sounds like lots of providers have implemented downstream solutions | |
| 16:26:42 | mriedem | as cburgess and mgagne pointed out | |
| 16:26:50 | johnthetubaguy | mriedem: OK, I guess we have concrete examples then | |
| 16:27:19 | mriedem | johnthetubaguy: i had something in the ML recently about how shelve/unshelve is just totally ignorant wrt volues | |
| 16:27:21 | mriedem | *volumes | |
| 16:27:31 | mriedem | and we've had bugs open for over a year that haven't been resolved | |
| 16:27:37 | cburgess | mriedem Another case for removing that feature | |
| 16:27:39 | johnthetubaguy | mriedem: yeah, that whole feature is un finished, so I expected that of shelve | |
| 16:28:32 | johnthetubaguy | cburgess: thats not a crazy plan | |
| 16:28:36 | mriedem | mgagne: ok so that basically does https://review.openstack.org/#/c/432503/ | |
| 16:28:40 | mriedem | just via paste middleware | |
| 16:29:13 | johnthetubaguy | so is this a middle ground? | |
| 16:29:20 | johnthetubaguy | we do https://specs.openstack.org/openstack/nova-specs/specs/newton/approved/flavor-root-disk-none.html | |
| 16:29:21 | cburgess | johnthetubaguy Never understood that one. | |
| 16:29:34 | cburgess | johnthetubaguy The shelve/unshevle feature I mean | |
| 16:29:46 | mgagne | mriedem: yea, idea was to not be intrusive to nova code, a bit like wafflehaus from rax | |
| 16:30:00 | johnthetubaguy | cburgess: it was to do "stop" instance for local disks, where you only pay for the IP when it is shelved | |
| 16:30:21 | cburgess | johnthetubaguy Creates all types of state and capacity management issues. | |
| 16:30:28 | cburgess | johnthetubaguy Don't like it, never liked it, anywho.. back to storage. | |
| 16:30:39 | johnthetubaguy | cburgess: allowing users to keep ports somehow, would be better | |
| 16:30:48 | johnthetubaguy | yeah | |
| 16:30:55 | johnthetubaguy | ... so middle ground, possibly | |
| 16:31:04 | johnthetubaguy | we do the 400 error if no BDMs | |
| 16:31:07 | cburgess | Right.. | |
| 16:31:11 | johnthetubaguy | once we have cinder backend in place | |
| 16:31:23 | johnthetubaguy | the 400 becomes an auto create of that thing | |
| 16:31:43 | johnthetubaguy | ... actually thats messed up in a heap of other ways :( | |
| 16:31:46 | mriedem | johnthetubaguy: ^ means the api needs to know the compute is configured and capable of using cinder | |
| 16:31:51 | cburgess | Honestly its ugly to do the 400 but it operationally better then today where you end up with instances sprinkled on hypervisor local storage and having to work iwht users to migrate the data to a volume and rebuild the instance with a volume. | |
| 16:32:12 | johnthetubaguy | mriedem: well, its a resource request, I think | |
| 16:32:31 | johnthetubaguy | cburgess: thats where I am, but I am biased, its what public cloud carries as a patch right now | |
| 16:32:32 | cburgess | Why do we need to do anything once we have the cinder backend? | |
| 16:32:56 | johnthetubaguy | so with cinder backend, you want to pick between local disk and cinder back end flavors | |
| 16:33:07 | johnthetubaguy | so its more you get to re-use it | |
| 16:33:19 | johnthetubaguy | meh, thats way too messy | |
| 16:33:32 | cburgess | Well.. | |
| 16:33:42 | cburgess | So today you pick a storage backend by selecting an AZ/aggregate. | |
| 16:33:51 | cburgess | Since you can only have a single one today | |
| 16:34:01 | cburgess | I guess once we can support different storage backends on a single node. | |
| 16:34:08 | johnthetubaguy | I guess, via flavor extra specs I presume? | |
| 16:34:13 | cburgess | Correct | |
| 16:34:16 | cburgess | So here is the thing | |
| 16:34:35 | cburgess | Once we have the cinder backend we will have to be able to pass things like volume type, size ,etc. | |
| 16:34:41 | johnthetubaguy | yeah | |
| 16:34:48 | cburgess | Some of them exist as existing attributes on flavors (root_gb) but others don't and will be required. | |
| 16:35:01 | mriedem | type is the only one that's missing right? | |
| 16:35:12 | mgagne | you can have a default volume type in cinder | |
| 16:35:13 | cburgess | mriedem I would have to look at it and think about it. | |
| 16:35:21 | mgagne | unless you wish for your flavor to default to a different one | |
| 16:35:23 | cburgess | mgagne Thats not sufficient | |
| 16:35:27 | cburgess | mgagne Right exactly. | |
| 16:35:36 | cburgess | mgagne A single default of the entire cloud is... limiting. | |
| 16:35:47 | mgagne | sure, we both agree =) | |
| 16:36:07 | johnthetubaguy | I think the problem here is the middle layer about the Nova API hasn't ever come into existance | |
| 16:36:14 | johnthetubaguy | s/about/above/ | |
| 16:36:28 | mriedem | stackempty: remember 40 minutes ago when i said you stepped into something? :) | |
| 16:36:55 | smcginnis | cburgess: +1 | |
| 16:36:59 | johnthetubaguy | feels like we need the use cases writing up and agreeing to move forward | |
| 16:37:00 | mriedem | johnthetubaguy: what is the middle layer about the nova api? the enamel idea? | |