16:01:26 <jgriffith> #startmeeting 16:01:27 <openstack> Meeting started Wed May 30 16:01:26 2012 UTC. The chair is jgriffith. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:01:28 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:01:36 <jgriffith> Hey everyone! 16:02:07 <jgriffith> I know I saw rnirmal DuncanT and Mandell 16:02:26 <jgriffith> and jdurgin :) 16:02:43 <jdurgin> howdy 16:02:52 <rnirmal> hey 16:02:53 <jgriffith> how goes it? 16:03:42 <jgriffith> Alrighty, I guess we should get started... 16:03:47 <jgriffith> #topic cinder status 16:04:10 <jgriffith> So the python-cinderclient is working pretty well against nova-v 16:04:33 <jgriffith> dtroyer has been doing a good bit of work integrating cinder into devstack 16:04:56 <jgriffith> It's pretty close but I have two problems that I started working on yesterday... 16:05:29 <DuncanT> Hey, sorry aboput the time 16:05:35 <jgriffith> 1. cinderclient commands to CINDER fail, the issue is the project_id and context.project_id don't match 16:05:40 <jgriffith> DuncanT: No worries, just started :) 16:06:06 <jgriffith> I'm trying to figure out why the project_id isn't getting picked up... 16:06:37 <jgriffith> 2. I cheat around the project_id issue and can do a volume create against CINDER 16:06:53 <jgriffith> The volume is created and populated in the DataBase (the Cinder database) 16:07:09 <jgriffith> but, the status never udpates... It's stuck on creating forever 16:07:45 <jgriffith> That's the next issue I'll try to figure out after item 1 16:08:19 <jgriffith> The big thing that's still left to do is getting nova to talk to cinder :) 16:08:34 <jgriffith> I was hoping to get to this last week but didn't 16:09:20 <jgriffith> There's some more seperation to do in Nova, but also we'll need to write a client in cinder 16:10:10 <jgriffith> My plan right now is to abstract nova/volume/api.py to point to nova/volume/cinder/cinder.py.... 16:10:35 <jgriffith> any thoughts? 16:10:54 <DuncanT> I started with soemthing simpler than that and just created a driver.py subclass for nova 16:11:11 <DuncanT> Not perfect but didn't take long 16:11:20 <jgriffith> DuncanT: driver ? 16:11:25 <DuncanT> api.py is the 'proper' point to do it 16:11:35 <jgriffith> DuncanT: But you're still using the nova db that way correct? 16:11:50 <DuncanT> jgriffith: Yes, it leaves all of the nova machinery in place 16:12:32 <jgriffith> DuncanT: maybe we could leverage some of what you've done... 16:12:55 <DuncanT> jgriffith: It really isn't much but I can post it up, sure. 16:13:03 <jgriffith> DuncanT: main thing is though we want everything under nova/volume/ to point to cinder 16:13:26 <jgriffith> DuncanT: Great! Let me know if it's on github or if you want to just do a gerrit draft 16:13:42 <DuncanT> I can github it easily enoguh 16:13:52 <jgriffith> DuncanT: excellent 16:14:53 <jgriffith> Anybody else have anything they've been working on? 16:16:03 <jgriffith> #topic open discussion 16:16:45 <jgriffith> Any new questions/concerns folks have thought of? 16:17:44 <jdurgin> you mentioned nova is still using its own db for volumes, do you have a plan for moving away from that cleanly? 16:18:07 <jdurgin> that is, when just the volumes api is replaced 16:18:13 <jgriffith> jdurgin: Actually, I was referring to the work DuncanT did 16:18:27 <jgriffith> jdurgin: Currently I have it set up to actually use the Cinder DB 16:18:38 <jgriffith> jdurgin: But there are some bugs/issues that I haven't worked out yet 16:19:21 <DuncanT> I made things work by a stern application of delete to anything that got in my way (like all of the auth code), and by starting at an easy point 16:19:43 <jgriffith> DuncanT: Delete with prejudice :) 16:20:12 <jgriffith> So the good thing is most of what we need is in Cinder (and a whole bunch of extra stuff) including the db 16:20:29 <jgriffith> As far as a clean removal.... the volume/api.py seems to be the best place 16:20:48 <jgriffith> There are still some direct calls into the DB in that file so that's where I cut it. 16:21:17 <jdurgin> that makes sense 16:21:38 <jgriffith> That "should" also allow us to cut out volumemanager in nova and use cinder's via the client 16:21:55 <jgriffith> So I 'think' it will be fairly clear/clean 16:22:30 <jgriffith> The trickier things that will be left are things like attach/detach, and BFV when we get to it. 16:22:43 <DuncanT> How much of the volumes table do you expect nova to retain? None at all? 16:23:00 <jgriffith> DuncanT: So that's where attach comes in :) 16:23:04 <DuncanT> e.g. is attached state going to be maintained purely by cinder? 16:23:45 <jgriffith> DuncanT: I'd like to have anything in nova be VERY minimal, ideally nothing at all but don't know if that's realistic 16:24:20 <Mandell> My 2 cents: I think that it should be maintained completely in Cinder. 16:24:31 <DuncanT> jgriffith: Fair enough. Not got that far yet so I've no idea of the answer, just wanted to know the direction. Very minimal is fine by me 16:24:38 <jdurgin> agreed 16:25:00 <jgriffith> Yeah, I haven't spent any time on it really... just thinking while driving or out doing other things 16:25:07 <DuncanT> Mandell: There are weird edge cases, like compute host reboot, where it helps if nova has some clue 16:25:30 <jgriffith> Mandell: I agree with you 16:26:00 <jgriffith> Mandell: The good thing is that the instance entry in the nova DB will have a volume_uuid if it's attached 16:26:08 <jdurgin> DuncanT: why can't nova query cinder about attached status in that case? 16:27:32 <jgriffith> jdurgin: DuncanT: I think that case will be handled between the instance information we have in the DB... eliminating the need for a volume table 16:27:33 <DuncanT> jdurgin: Depending on the design, it can. Can't get it straight in my head how messy it might get... trying to code it is the only real way I guess 16:27:53 <jgriffith> DuncanT: It'll be nice and clean :) 16:28:54 <jgriffith> Do we want to talk schedule? 16:29:33 <jgriffith> Ok... well, I want to talk schedule so here goes :) 16:29:36 <DuncanT> Now there's a dirty word ;-) 16:29:44 <jgriffith> #topic schedule 16:29:48 <jgriffith> DuncanT: :) 16:30:07 <jgriffith> So F2 needs to be sort of a proving point 16:30:30 <jgriffith> We may not have "EVERYTHING" but we need to be able to display that we're making good progress. 16:31:01 <jgriffith> I was hoping to have some of this for F1 but I had some time off, and there are some learning curves here. 16:31:17 <jgriffith> Anyway... here's what I feel we HAVE to meet: 16:31:29 <DuncanT> When is F2? I haven't the calendar to hand 16:31:56 <jgriffith> DuncanT: July 5 16:32:17 <DuncanT> ta 16:32:29 <jgriffith> F3 is Aug 16 and RC's due first week of Sept 16:32:47 <jgriffith> Ok.. so: 16:33:07 <jgriffith> We need to be able to run cinder in devstack 16:33:27 <jgriffith> This means create/delete/attach volumes using cinder 16:33:42 <jgriffith> The DB entries have to be inside cinder (not Nova) 16:34:09 <jgriffith> Anything you can currently do in nova-volume has to be doable in cinder 16:34:30 <sleepsonthefloor> jgriffith - I'd like to help with that effort 16:34:44 <jgriffith> sleepsonthefloor: That would be awesome!! 16:35:07 <jgriffith> sleepsonthefloor: Anything inparticular that catches your interest? 16:35:26 <jgriffith> I pointed out some of the areas that are still lacking effort above. 16:36:02 <jgriffith> After F2.... 16:36:25 <sleepsonthefloor> jgriffith - right I saw - I have to poke around more, but I'd like to help getting it to the point where stuff is basically working in devstack - so getting api commands working, and attachment 16:37:10 <jgriffith> sleepsonthefloor: excellent, so there's a reveiw in gerrit for devstack that is almost there 16:37:24 <jgriffith> it's 7042 if anybody wants to pull and check it out 16:37:46 <jgriffith> What I've been doing is s/n-vol/cinder,c-api,c-vol/ in stackrc 16:38:20 <sleepsonthefloor> jgriffith - ok cool - I'll start there 16:38:23 <jgriffith> If anybody figures out the project_id problem before me PLEASE ping me :) 16:39:18 <jgriffith> Ok, so if we're lucky we finish early and get to address some of the blueprints for new features after F2 16:39:34 <jgriffith> Also finish some cleanup/stripping out of old nova code that's still in cinder 16:39:54 <jgriffith> Compact the database migrations all out into one file for the initial db creation 16:40:27 <jgriffith> That's pretty much where I'm at... big things I may be missing? 16:40:51 <Mandell> Migration path for existing installations? 16:41:14 <jgriffith> Mandell: Thanks for bringing up the elephant in the room :) 16:41:58 <jgriffith> For sure that's something that will have to be figured out 16:42:26 <jgriffith> I think it would be a migration file in nova 16:42:56 <jgriffith> TBH I'm kind of leaving it in the back of my mind until I get all these other pieces together 16:43:12 <Mandell> kk 16:43:27 <jgriffith> Having to keep it in mind going forward though because we're going to have to do it and don't want to make it impossible 16:43:58 <jgriffith> Mandell: So I think we could do a DB migration from nova to cinder the same way we kinda do today. 16:44:14 <jgriffith> Mandell: I also plan to pick dwent's brain a bit and see how quantum goes about it 16:44:42 <Mandell> Good idea. Sounds like you've got it covered. 16:45:04 * jgriffith frightened grin 16:45:58 <jgriffith> Ok... I guess that sums it up for this week. 16:46:23 <jgriffith> If anybody has some cycles and wants to work on something/help with what I'm working on just hollar! 16:46:27 <jgriffith> Oh... 16:46:56 <Mandell> Oh: jgriffith: If you could send out the reminder somewhat sooner (it arrived in my inbox at 16:15 UTC :) ) 16:47:12 <jgriffith> Mandell: Yes, I'm very sorry about that!! 16:47:27 <jgriffith> I inteneded to send it out yesterday and realized just before the meeting that I never sent it. 16:47:34 <jgriffith> I'll do better next week :) 16:48:11 <jgriffith> Also, if anybody decides to try out the devstack version with cinder... 16:49:18 <jgriffith> What I'm doing for now is just hacking the cinder/api/openstack/wsgi.py file: 16:49:51 <jgriffith> At line 839 just add 'project_id = context.project_id' 16:50:09 <jgriffith> Hopefully today I'll get to this and find the problem 16:50:25 <jgriffith> Ok... anything else? 16:51:03 <jgriffith> Alright, feel free to grab me on irc if you think of anything 16:51:14 <jgriffith> Otherwise, until next week :) 16:51:17 <DuncanT> Cheers 16:51:18 <jgriffith> #endmeeting