19:05:03 #startmeeting ironic 19:05:04 Meeting started Mon Jul 15 19:05:03 2013 UTC. The chair is devananda. Information about MeetBot at http://wiki.debian.org/MeetBot. 19:05:05 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 19:05:08 The meeting name has been set to 'ironic' 19:05:28 so, hi! I've been gone a while 19:05:46 thanks to NobodyCam for running things :) 19:06:00 agenda: 19:06:01 #link https://wiki.openstack.org/wiki/Meetings/Ironic 19:06:23 i'm going to go slightly out of order, i think 19:06:38 #topic pxe driver 19:06:57 GheRivero: how's it going? the code's looking great! 19:07:18 waiting for reviews both in pxe and glanceclient 19:07:33 somw ideas/features are be done meanwhile 19:07:58 o/ 19:08:17 have you been able to do any testing of it? if not, is there a clear set of things you need for the code to get there? 19:09:03 i have tested glanceclient service. Flavio is looking at it, so hopefully i-ll have some feedback in the following days 19:09:38 and regarding pxe, i have plans to start looking at devstack-baremetal to test things tomorrow 19:09:51 sounds good :) 19:10:11 don't know if there is some devstack ironic work already done 19:10:22 none. but there was baremetal integration a while back 19:10:37 Nobodycam has work on a diskimage-builder element for ironic 19:10:42 which, i think, is basically done 19:10:57 so that might be a shorter path for you to get services stood up 19:11:10 yeah, sure... then i will start with that 19:11:43 OTOH, I find it difficult to do rapid development of code in dib-based images.... so, ofc, just do what works for you :) 19:12:11 any questions on the PXE driver before we move on? 19:12:12 :) 19:12:48 #topic keystone auth 19:13:03 We have #link https://review.openstack.org/#/c/37102/ this review 19:13:23 Some tests still fail but I'm working on that. 19:13:53 and we were just talking an hour ago about how we might do RBAC 19:14:28 RBAC is a nice idea 19:14:45 i think it's good progress, and i'm happy to land admin auth first and refactor it to RBAC after, if that seems easier to you 19:15:04 devananda: it may be worth talking to some keystone devs about this 19:15:25 I know they have a new V3 API that changes things, and we *may* want to try it out 19:15:31 partailly to help them 19:15:38 jog0: we use keystoneclient 19:15:54 romcheg: does that have v3 API support already? 19:16:06 As I understand we do not depend on the version of API. 19:16:16 It just provides a middleware for authentication 19:16:50 jog0: is there a difference in capabilities between keystone v2 and v3? 19:17:07 devananda: AFAIK yes -- don't really know the details though 19:17:31 hm, ok. who'd be good to ping? 19:17:39 I know some folks who said really nasty things about v3 19:17:46 new tokens in v2 are pki 19:17:54 sorry pki in v3 19:18:00 used to be uuid 19:18:08 i've only very loosely been aware of nova v3, but haven't followed the work 19:18:25 aiui, deployments are going to support both v2 and v3 for a while 19:19:31 right, just think it may be good to sync up with keystone -- not saying we should do anything different just have a better understanding of it 19:20:06 nothing wrong with that :) 19:20:12 i'll see what i can learn about it 19:20:30 in terms of whom dolphm, bkundson, henrynash 19:20:43 that is who I think of when I think of keystone 19:20:59 #action devananda to chat with dolphm, bkundson, or henrynash about keystone v3 in ironic 19:21:02 ayoung as well 19:21:15 yes, ayoung 19:21:28 #action devananda to chat with ... or ayoung 19:21:45 thanks for the pointers 19:21:57 moving on to the API ... 19:22:12 #topic All the API 19:22:32 seems to be the focus of several of us lately :) 19:23:09 lucasagomes and jimjiang have patches up for API additions 19:23:19 and I have a patch (and a few deps) up for RPC 19:23:26 any news bout the patch vs put ? 19:23:32 sorry was late.. will read the log 19:23:43 i chatted with martyn last week, i think, about it 19:24:02 and IIRC he agreed that PATCH was the right thing for changing some (but not all) properties of an object 19:24:12 whereas PUT essentially replaces the object 19:24:24 it preserves the uuid, but requires all the other fields to be complete 19:24:39 What is ironic? 19:24:55 I think we will want to implement both PUT and PATCH for most resources and sub resources 19:24:58 hey ayoung it is the offshoot of nova baremetal driver 19:25:05 ayoung: bare metal provisioning service 19:25:06 it is in incubation now 19:25:24 Oh, I thought we were talking about an Ubuntu distribution 19:25:43 ah okay, good to get that cleared up 19:26:32 lucasagomes: eg, if i PUT /v1/nodes/abcd {'properties': { ... } }, it would replace the properties 19:26:33 we have a channel too, #openstack-ironic 19:27:03 right so for sub resources we would use PUT 19:27:07 lucasagomes: but if I PATCH /v1/nodes/abcd {'properties': {'foo': 'bar'} } it would only add (or replace) that specific item 19:27:20 devananda, gotcha 19:27:51 so both should be supported for both (resources and sub-resources) 19:28:14 i think so? unless someone has a reason otherwise? 19:28:56 I don't have any strong opnion about it, I'm deferring to the others 19:29:35 ack 19:30:15 ok, another thing about the api: internally translated names 19:30:27 I think we agreed to only translate the id -> uuid 19:31:02 because openstack uses uuid across all the other projects 19:31:02 right 19:31:35 but other fields like extra->metadata we won't translate anymore and just expose it as extra 19:31:43 everybody agree with that? 19:32:48 +1 19:32:53 fine with me 19:32:56 cooleo 19:33:01 seems to be a reasonable approach thus far 19:33:19 +1 19:34:00 also, particularly on the API front, i feel like my absence has been slowing ya'll down 19:34:50 i would like to merge all the current api work today, then hammer out any direction/scope/RPC etc stuff with folks this week 19:35:11 I'll be at OSCON next week, which means less time on IRC 19:35:55 and i think getting the API at least functional very soon is a priority 19:35:55 let pasta at OSCON probably, eh? 19:35:58 that would be good to merge some of the patches 19:36:02 s/let/less 19:36:15 anteaya: hah. it's portland. there'll be plenty i can eat ;) 19:36:24 :D 19:36:51 anything else on the api, before we move on? 19:37:21 #topic object trees 19:37:38 martyn and i talked about this last week, and i think we got it conceptually sorted 19:37:45 though i dont think he put a patch up yet 19:37:59 I didn't see any 19:38:09 the gist of the question is: the API needs to expose related resource UUIDs 19:38:24 GET /node/1234 needs to return the UUIDs of its chassis and all its ports 19:38:35 but those aren't part of the RPC-style object 19:38:36 so 19:38:51 we can do a trivial query in the API layer 19:39:23 dbapi.get_ports_by_node() and such 19:39:40 and then we don't need to worry about nested RPC objects at all :) 19:40:25 sounds reasonable 19:40:40 This will cause loading a lot of data a user might not need 19:40:45 probably a simple patch could implement taht for all three objects 19:40:52 would it also be possible to access some of the resources like : GET /node/1234/ports ? 19:42:05 romcheg: ah! sorry, i meant get_port_list() and get_node_list() and such -- dbapi methods that only return a list of UUIDs 19:42:23 romcheg: we'll need to add an optional filter to the get_*_list() methods 19:42:32 lucasagomes: yes, that is desirable as well 19:42:49 lucasagomes: same for things like GET /node/1234/properties 19:43:04 lucasagomes: any sub-resource should be queriable directly. 19:43:18 right 19:43:22 s/any/the important/ 19:44:19 lucasagomes: is this ^ API stuff soemthing you're comfortable running with? 19:45:26 these are things I'm learning while doing :) 19:45:55 that's fine :) 19:46:54 you seem to have a good handle on it 19:47:51 moving on... 19:47:53 ty 19:48:01 #topic diskimage-builder element 19:48:16 NobodyCam seems to be afk 19:48:28 so I'll chime in with what I know 19:48:44 it exists, it builds, and apparently can be launched by heat! 19:48:59 also, running it outside of heat isn't quite as great, but can be done too 19:49:41 however, I run into a rabbit queue problem when ever I try to use the ironic-api and ironic-conductor services inside said dib-built image... 19:49:47 working with NobodyCam to track that down 19:50:13 we have 10 minutes left, so ... 19:50:16 #topic open discussion 19:50:18 thats the problem of the api talking to the wrong topic? 19:50:32 lucasagomes: i think so. or something 19:50:54 lucasagomes: i don't see any msgs in rabbit, even though the api service sent one, and set up a receiver queue for the reply 19:50:56 I remember you mentioned that, I didn't have a chance to look at it, will give the element a spin tomorrow 19:51:19 hmm 19:51:55 when i run both services locally (on laptop, outside of VM) they work 19:52:01 by which i mean, they talk to eachother 19:52:04 Regarding file injection... http://lists.openstack.org/pipermail/openstack-dev/2013-July/011769.html 19:52:30 tldr: avoid it while possible and move to cloud-init and drive-config 19:52:58 GheRivero: yes! thanks for pointing that out. huge ++ from me on avoiding file injection 19:53:24 though it warrants some discussion on the dance to securely proceed without a drive 19:53:28 +1 to avoid that too, we should not touch the user fs 19:54:11 which could be done if something is hooking some secure point to point path between the instance and some trusted peer 19:54:37 e.g. bridge filtered protocol to switch (falls apart in some potential net configs) or serial channel 19:54:51 jbjohnso: initially, let's assume a trusted tenant (so we dont need secured firmware) and let's assume the network is otherwise secured (eg, via SDN and separate provision/tenant nets) 19:55:07 those are both constraints placed on the nova-baremetal driver today 19:55:36 devananda, well, as long as you concentrate all the security sketchiness into one place... 19:56:07 devananda, e.g. if you support https for almost everything and have a dubiously secure 'get client certificate' dance 19:56:39 devananda, then you could focus on adjusting the security of the client certificate without perturbing other stuff 19:57:34 jbjohnso: i'm saying, today, ironic is not providing security at the hardware or network layer. it's sole (present) job is: put this image on that machine and turn it on. 19:57:59 jbjohnso: we need to be /able/ to handle secure boot, yes. but we need to boot something first ;) 19:58:36 jbjohnso: and opening up the user's machine image and injecting files into it is unrelated to secure boot 19:58:53 if the boot pathway is not secure in the first place, file injection is no more so. 19:59:29 well, times up 19:59:31 we're just about out of time :) 19:59:35 thanks everyone! 19:59:45 thanks 19:59:51 #endmeeting