08:04:12 #startmeeting multisite 08:04:12 Meeting started Thu Mar 3 08:04:12 2016 UTC. The chair is joehuang. Information about MeetBot at http://wiki.debian.org/MeetBot. 08:04:12 Useful Commands: #action #agreed #help #info #idea #link #topic. 08:04:12 The meeting name has been set to 'multisite' 08:04:19 #info Ashish 08:04:27 #info joehuang 08:04:39 #info dimitri 08:05:02 let's discuss quota api 08:05:09 yeah. please. https://review.openstack.org/#/c/284137/2/kingbird/api/README.rst 08:05:28 I have some comments on Ashish patch about API 08:05:48 I have replied to few of them 08:05:54 let us discuss those 08:06:02 Yes 08:06:34 May I introduce a little about quota in Nova,Cinder about the default quota 08:06:59 sure. 08:07:03 sorry. May I introduce a little about default quota in Nova,Cinder 08:07:25 At first, the default quota is configured in the configuration file 08:07:45 but later, it's difficult to change default quota 08:07:47 this default quota is for all the tenants 08:07:58 generic quota 08:08:05 or global quota 08:08:17 for example, API can run multiple instances 08:08:38 so if you change one file, the other one is not changed yet 08:09:22 In Nova and Cinder, use quota_class to define the default quota, so that the default quota is easy to change 08:09:51 and can bring different default quota for different level tenants 08:10:08 for example, "golden class" can have 100 instances 08:10:30 but for "metal class" the default may be 10 08:11:02 is that this cuztomised quota for a tenant 08:11:06 but currently, almost the classification of default quota is not used 08:11:09 isnt this* 08:11:22 only "default" class is used 08:11:40 no, it's customization for "default" value 08:11:42 customized quota is stored in the quota table 08:11:55 classes on the other hand are in quota_classes 08:11:55 yes, Dimitri is right 08:12:03 correct 08:12:09 which we currently don’t have from the db point of view 08:12:20 this needs to be added in that case 08:12:33 but in fact, only "default" class has been used currently 08:12:52 and the default quota by configuration is deprecated way of using 08:13:02 okay 08:13:39 i can add a db layer for it 08:14:16 if you change the default value in the quota-class, all project's default value will be changed 08:14:22 great 08:15:42 so the question is do we need to provide api for quota_class ? 08:16:25 In nova/cinder, if there is some value in quota_class, then this value will be used by priority 08:16:58 in the long run I would like to have kb to support quotas the way other services do 08:17:04 but if no data in quota_class, configuration default value will be used instead, although it's deprecated 08:17:20 so that it was easier for everyone to switch to kb as quota records repository 08:17:42 agree, we can add step by step 08:17:42 I’m not sure that quota classes are used widely 08:17:50 haven’t seen this to be honest 08:17:53 if we maintain quotas in kb DB, then we need not depend on neutron 08:18:00 as neutron doesnot have this 08:18:20 neutron is a special case, i agree 08:18:51 there will be no classes for neutron related limits 08:19:38 so I would suggest to have the quota API layer the same as in Cinder/Nova 08:19:39 ok, this is some background for reference 08:20:10 focus on finishing quota management part and see that it runs for once 08:20:23 +1 to dimitri 08:20:31 then, as a next step we can start landing quota classes patches 08:20:34 and so on 08:20:46 we can’t grab everything in one go 08:21:20 That's why I hope not to provide quota post, to keep alignment to other services as much as possible 08:21:44 I suggested Ashish to reuse the API reference from Cinder as much as possible 08:22:07 no quota "post" in other services, only "put" to update quota 08:22:15 yes. For the structure I have followed that 08:22:41 update has to happen in DB in our case 08:23:03 Ashish, can you change your patch to reflect what we’ve talked about? 08:23:39 You mean quota "post"? 08:24:00 DB can be update by "put" too 08:24:01 that too 08:24:13 okay. 08:24:23 but also update the API reference 08:24:43 apiary?? 08:24:54 no that later 08:25:01 I mean use this format 08:25:11 http://developer.openstack.org/api-ref-blockstorage-v2.html#os-quota-sets-v2 08:25:16 or at least similar 08:25:44 yeah.. we have the same.. 08:25:47 in current patch 08:26:18 format is almost same 08:26:29 https://review.openstack.org/#/c/284137/2/kingbird/api/README.rst 08:26:36 please refer the API structure here 08:26:56 I will remove post API 08:27:20 using put I will create/update limits 08:27:28 and delete specific resource's quota value 08:27:49 no this interface in other services, do we need to add this one? 08:28:57 If there are multiple quota limits and you want to delete only one limit 08:29:04 one or few of themm 08:29:18 I felt its need so kept it 08:29:36 ok 08:29:50 #info remove post API request 08:30:28 delete is not to delete quota record, but to restore it to default quota 08:30:40 other to discuss? 08:31:10 yes. delete will remove from DB, so that defaults from conf will be used 08:31:18 +1 08:31:20 the preference is like this first check in DB 08:31:26 if not then in conf 08:31:28 okay 08:31:55 1) http://127.0.0.1:8118/v1.0/admin_tenant_id/os-quota-sets/tenant1/defaults this one will get the default quota 08:31:59 this one 08:32:12 joe, we should clarify the talks 08:32:22 but we can take it later 08:33:33 if we follow cinder, no "http://127.0.0.1:8118/v1.0/admin_tenant_id/os-quota-sets/tenant1/defaults" api 08:33:37 this is the API reference for getting default /v2/​{tenant_id}​/os-quota-sets/defaults 08:34:22 for cinder it is /v2/​{tenant_id}​/os-quota-sets/defaults 08:34:22 ok, follow Cinder. Nova has a little bit different API for defaults 08:34:27 yes 08:34:35 yes. 08:34:48 For nova, it's the first one you mentioned 08:35:11 sometimes it annoy 08:35:28 yes. 08:35:44 can you tell me the use of admin_tenant_id in API 08:36:00 don't we have to validate it 08:36:06 ? 08:38:01 It's often validate the admin role in context, seldom to see to compare the tenant_id with cfg.CONF 08:38:32 then admin_tenant_id is not of much significance here 08:39:29 it's useful in hierarchy multitenancy quota, will check to see if admin_tenant_id is the parent of tenant_id 08:39:42 through query the data from keystone 08:40:08 we need to pass this id to other region Cinder, Nova 08:40:12 okay. thanks 08:40:43 it's useful :) 08:40:51 yes. it is 08:41:02 I will be pushing on demand quota sync for a project soon 08:41:06 also periodic quota sync 08:41:23 any other question on my comment? 08:41:46 but for now It will be only w.r.t nova resources, let us first get nova syncing in then will add cinder and neutron 08:42:29 periodic/OnDemand quota sync related to nova resources. 08:42:47 step by step, ROMA is not built in one day 08:43:05 hahah. yes. No questions on your comments 08:43:37 other topics 08:43:43 i suggest we close here 08:44:00 ok, thanks for your time. Great to work with you 08:44:20 welcome. Same here:) 08:44:22 Hi Dimitri, check your mail for the talk update in OpenStack summit 08:44:37 did we get it? 08:44:58 they mentioned it will be in first week on March 08:45:12 another topic, needs merge with some other topic, and update the abstract needed 08:45:12 any update ? 08:45:36 may be by the weekend 08:45:54 ok bye 08:45:59 #endmeeting