14:04:19 #startmeeting cloudkitty 14:04:19 Meeting started Mon Sep 28 14:04:19 2015 UTC and is due to finish in 60 minutes. The chair is sheeprine. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:04:20 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:04:23 The meeting name has been set to 'cloudkitty' 14:05:17 We've got some general topics and some more advanced stuff to cover today. So we'll try to focus on important points. 14:05:32 #topic today's agenda 14:06:12 We'll talk about changes since last summit and version 0.4 14:06:30 Then big tent application 14:06:45 We'll focus on Liberty perspectives and changes 14:07:18 The list of all proposed changes is on the meeting wiki page 14:07:25 #link https://wiki.openstack.org/wiki/Meetings/CloudKittyMeeting#Proposed_changes 14:07:45 #topic Changes since last summit, version 0.4 14:08:19 Since it's our first formal openstack meeting we'll list what have been accomplished since last summit. 14:08:51 ok great ! 14:09:11 We'll just focus on major changes. We've mainly focused on bugfixes and QA. 14:09:53 We've fixed some painfull postgresql database migrations. Worked on documentations and code quality. 14:10:46 And last point is the switch of last API parts to WSME/Pecan. 14:11:01 #topic Big tent application 14:11:59 About the big tent, application has been sent to the TC and a patch is in review for governance change. 14:12:18 #link https://review.openstack.org/#/c/225201 14:12:38 The next TC session is tomorrow so hopefully we'll have some good news soon. 14:13:11 #topic Liberty perspectives 14:14:08 We've greatly improved the QA of CloudKitty's code and added gabbi tests for the API. 14:14:39 Our plan is to be on par with other projects ASAP. 14:15:23 About what's to come, we need to define what needs to be addressed and priorities. 14:15:58 First, Dynares (Dynamic resources registration) 14:16:19 I've worked on a dynamic resource registration POC. 14:17:08 Its goal is to add a layer on top of resources and storage driver. 14:17:08 What kind of resources are going to be dynamically registered? 14:17:50 Qu4tre: All the resources we're currently collecting like with ceilometer for example. 14:18:20 The goal is to move from the dict format which is not documented, to a self documented format that we can query from the API. 14:18:32 cool! 14:19:33 The goal is unify resources format and have a proper way of storing resources in database for example. 14:20:04 ATM we're using a json dump of the resource, which is far from optimal and limit the query possibilities. 14:20:20 Which brings us to point 2 14:20:41 #topic New collector model and API 14:21:26 The goal of Dynares is to help people design collectors and improve database perfomance, that's why we'll need to change the way collectors are working. 14:21:43 We need to draft a BP for that but I want to first discuss the topic here. 14:22:38 The goal is to remove the old opaques collectors and have self documented collectors. 14:23:06 Currently if you want to work on resources collector by cloudkitty you mostly need to check the code to see what is exposed. 14:23:34 I am also interested on working on improving the translations. Do 'I contact you on the dedicated channel once I am available ? 14:24:05 With the new collector model we'll have API calls to list resources exposed by the collector. 14:24:16 So users can directly see what they can trigger calculations on. 14:24:31 huats: We'll talk about translation at the end of this meeting. 14:25:19 So there's going to be a resource catalog? 14:25:27 New collectors will not be loaded from ini file configuration settings. 14:25:46 Qu4tre: Yes, basically you query for a list of modules and the list of resources. 14:25:58 Qu4tre: We can imagine a global resource list referencing the collector 14:27:26 Every collector will now have the ability to be instanciated multiple times. You'll use the API to change collectors configuration. 14:27:56 So if you need to query multiple ceilometers backend you can do it. 14:28:46 To conclude on this point, I'll work on a BP ASAP and we need to find how deprecation will be handled. 14:29:05 I think we should keep a "legacy" mode in the configuration for easier transition. 14:29:16 next gnocchi support :) 14:29:23 #topic Gnocchi support 14:30:30 We can keep the "old way" for the nexty release and then move everything to Dynares? 14:31:09 Qu4tre: If we keep the legacy support we can have the two ways in the next release 14:31:40 ok! 14:32:30 About gnocchi, the gnocchi client/sdk is here. Adding Gnocchi will be easy as soon as we've implemented dynares. 14:32:48 As gnocchi uses a different convention to describe resources. 14:34:15 In my opinion the main goal will be to use gnocchi as a storage backend, to be able to collect data and then push them back "computed" in gnocchi. 14:34:33 This way we can limit the number of databases needed and have a way faster backend. 14:35:01 So are the resources for Gnocchi going to be different from the Ceilo resources? 14:35:39 Yes they are different is some ways. For example gnocchi links different resources where ceilometer references metadata directly on the resource. 14:37:04 Are there some questions about gnocchi integration? 14:37:45 Good. Let's talk about performances and scaling. 14:37:53 No! 14:38:00 #topic Threading/Clustering 14:38:39 I don't think we'll be able to address this before Liberty release but we need to modify cloudkitty in order to improve scalability. 14:39:58 When can we expect to see a POC? 14:40:01 Most of the code is here we just need to add threading. A previous patch refactored code in order to be able to create workers. 14:40:41 I don't know we need to find time and people whilling to work on this. 14:41:10 Base code is here but we need to have distributed locking (tooz) and local threading to handle the worker pool 14:41:24 This needs a BP before we implement this. 14:42:17 The first step is to have multiple processors working on different tenant calculations in parallel. 14:42:41 OK, I could work on this I think 14:43:34 #action Qu4tre to work on cloudkitty scaling 14:44:41 Some questions or ideas about ck scaling? 14:45:31 Fine, let's talk about translation then and we'll finish with the last bits of API needing refactoring. 14:45:40 #topic Translation 14:45:49 huats: It's your time. 14:46:24 thanks sheeprine 14:46:38 as I said ealier (sorry for interrupting you) 14:46:56 I am really looking for helping/working ont the translation ok Clouditty 14:47:11 I might just need some guidance 14:47:23 Congrats jroll! 14:47:41 sambetts: wrong channel? :) 14:47:42 I'll come and ask for it on #cloudkitty 14:47:53 jroll: yes :( 14:47:57 We'll talk about this on #cloudkitty 14:48:07 sorry for the noise 14:48:10 But this work needs to be cut in two parts 14:48:19 no worries 14:48:54 First we need to tag all the strings with oslo.i18n, most of the strings are not ready to be extracted ATM. 14:49:04 Then we'll work on translation. 14:49:08 sheeprine: ok 14:49:16 I am willing to help on both sides 14:49:23 We can talk about this on #cloudkitty channel to see how you can implement this. 14:49:38 huats: Do you have more things to ask? 14:49:43 nope 14:50:00 thanks sheeprine 14:50:10 You're welcome :) 14:50:28 One last tiny points before we define the roadmap 14:50:42 #topic report API refactor 14:51:20 When I was writing gabbi tests I stumbled upon a tiny problem. 14:51:45 The reporting API is not using proper WSME objects to expose data. 14:51:56 It's mostly json dumps. 14:52:48 the "forgotte" endpoints? 14:52:49 We need to define the data model for the reporting API and to migrate the reporting API to WSME objects. 14:53:03 Qu4tre: Yes, I guess it when undetected. 14:53:09 s/when/went/ 14:53:45 We've reached the end of today's agenda. Does anyone have more points to discuss? 14:53:56 #topic other topics 14:54:01 not from my side 14:54:20 non 14:54:43 Ok, we'll use the last minutes we've got to define priorities and assign tasks. 14:55:17 #topic work dispatching 14:55:34 huats: I guess you'll be working mostly on translations? 14:55:38 yes please 14:55:41 thanks sheeprine 14:55:47 #action huats is going to work on i18n 14:55:50 that would be a good start 14:56:20 Qu4tre: Do you have more time to assign to tasks? 14:56:37 Do you feel like you'll be able to work on report API for example? 14:56:49 That's not of my resort 14:56:53 I'll ask! 14:57:12 Ok, for now you'll focus on threading 14:57:48 gpocentek wasn't able to attend this meeting, I'll contact him and see what he can contribute. 14:58:49 venkatesh is not available too, I'll contact him later to see what he's willing to contribute. He wanted to contribute on threading/scaling it was to much time to invest for him. 14:59:07 Regarding my next task, I'll mostly work on blueprints 14:59:16 ok 14:59:35 I'll push the dynares patch in review so everyone can comment and check if the concept is right. 14:59:56 Then I'll blueprint new API and models to prepare its integration. 15:00:19 I guess we'll vote about its integration or not in a future meeting 15:00:38 I think that's it. Does anyone as something to add? 15:00:48 Nope 15:01:08 I guess we're out of time. Thank you all for attending. 15:01:11 #endmeeting