13:00:27 <Qiming> #startmeeting senlin
13:00:28 <openstack> Meeting started Tue Jul 21 13:00:27 2015 UTC and is due to finish in 60 minutes.  The chair is Qiming. Information about MeetBot at http://wiki.debian.org/MeetBot.
13:00:29 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
13:00:29 <yanyanhu> hi
13:00:31 <openstack> The meeting name has been set to 'senlin'
13:00:48 <jruano> hello
13:00:49 <Qiming> let's get started?
13:00:54 <Qiming> hi
13:01:20 <Qiming> pls feel free to add agenda items: https://wiki.openstack.org/wiki/Meetings/SenlinAgenda
13:01:20 <yanyanhu> Qiming, your hello is a little earlier ;)
13:01:31 <lkarm> o/
13:01:33 <Qiming> #topic add agenda items
13:01:38 <Qiming> hi lisa
13:02:33 <Qiming> #topic liberty-2 targets
13:02:46 <Qiming> #link https://etherpad.openstack.org/p/senlin-liberty-workitems
13:03:18 <Qiming> seems we have accomplished a lot, :)
13:03:28 <yanyanhu> yes, progress is good I think
13:03:34 <lixinhui_> if any update on binding.rst?
13:03:47 <Qiming> doc?
13:03:53 <lixinhui_> yes
13:04:34 <yanyanhu> latest unit test cover rate is 71% in my local env :)
13:04:36 <Qiming> here: https://review.openstack.org/#/c/201009/
13:05:39 <Qiming> we still have some monsters to kill?
13:05:51 <yanyanhu> yes, about action and also some drivers
13:05:52 <jruano> yes i am working on a few
13:05:57 <lixinhui_> I wanna try something about policy binding of node-placement policy
13:06:12 <Qiming> lixinhui_, that would be good
13:06:19 <Qiming> thanks, jruano
13:07:00 <Qiming> maybe we can target a placement policy implementation for liberty-3?
13:07:13 <Qiming> liberty-3 is 2015-09-01 I think
13:07:19 <yanyanhu> that will be cool
13:07:32 <yanyanhu> now we don't have any implementation about this policy
13:07:38 <Qiming> it doesn't have to be a full-featured version
13:07:46 <yanyanhu> yes
13:08:06 <Qiming> I think lixinhui_ has got some problems passing 'scheduler_hints' to nova
13:08:25 <Qiming> and sometimes this is intermingled with the server-group nova api
13:09:07 <Qiming> as far as I know, the nova server profile has something to be hardened
13:09:39 <Qiming> for example, the 'networks' property might be 'nics'
13:09:39 <lixinhui_> yes, seems openstacksdk will transfer all attrs into server: {}
13:09:50 <Qiming> we need to look into the nova-api to find out the details
13:10:04 <lixinhui_> but scheudler_hints should be os:scheudler_hints: {}
13:10:41 <Qiming> okay, it would be good if we can find the latest nova api doc
13:12:02 <yanyanhu> Qiming, maybe also the trust API doc
13:12:08 <Qiming> there are some other notions in sdk: server_interface, server_metadata and server_meta
13:12:57 <yanyanhu> yes, I noticed that the function calls related to server_metadata are still not there
13:12:58 <Qiming> yanyanhu, trust for api invocation?
13:13:35 <yanyanhu> yes
13:13:40 <Qiming> I have proposed a server_group resource to sdk, but their acceptance of new resource types is frozen for the moment
13:14:07 <Qiming> I don't think trust would be part of nova api
13:14:13 <yanyanhu> last time, you shared a link where the trust API description is a little different from the current one we are refering
13:14:18 <yanyanhu> yes, sure
13:14:19 <Qiming> it is completely an interaction with keystone
13:14:23 <yanyanhu> I mean keystone v3 API
13:14:59 <Qiming> ah, that wiki page, I checked the history, it was written in 2013, may be outdated long time ago
13:15:09 <Qiming> the only thing you can trust is the code itself
13:15:16 <yanyanhu> ok...
13:15:17 <yanyanhu> http://developer.openstack.org/api-ref.html
13:15:25 <yanyanhu> not sure whether this doc is updated
13:15:40 <Qiming> for some projects, I believe so
13:15:46 <Qiming> for others ... em
13:15:49 <Qiming> definitely no
13:16:04 <yanyanhu> but I found neutron related API doc is right
13:16:05 <Qiming> for example, you can check the ceilometer api there
13:16:09 <yanyanhu> ok
13:16:12 <yanyanhu> need test
13:16:30 <Qiming> right
13:16:38 <lixinhui_> report a bug
13:16:52 <Qiming> ?
13:17:57 <lixinhui_> http://paste.openstack.org/show/395684/
13:18:05 <lixinhui_> poor network at home
13:19:08 <Qiming> lixinhui_, you will check the senlin-api output for this
13:19:37 <lixinhui_> okay
13:19:40 <Qiming> 500 Internal Server Error means a real problem at api/engine side
13:20:06 <Qiming> look for this line "Failed checking service user checking." in senlin code
13:20:07 <haiwei_> I found something similar like this
13:20:12 <Qiming> you will know what happened
13:20:37 <Qiming> please file a but for this
13:20:43 <Qiming> I think it could be a configuration problem
13:20:59 <Qiming> for example, if you are using 'demo' user in the 'demo' project
13:21:31 <Qiming> the user has to be configured as the 'admin' of the project, or else some keystone policies will block you from doing useful work
13:21:55 <Qiming> if that is the case, we need to update the setup document and the devstack plugin code
13:23:01 <Qiming> another improvement I see is the client code, the client can be improved to understand this kind of errors instead of reporting an 'ValueError'
13:24:06 <Qiming> so .. please file bugs when things don't work
13:24:52 <Qiming> anything else for the liberty-2 targets?
13:25:00 <yanyanhu> hi, Qiming, last time, you mentioned that maybe we can try to provide a first release
13:25:10 <yanyanhu> by the end of liberty-2
13:25:33 <Qiming> with just 1 week left?
13:25:47 <yanyanhu> em, a little difficult I think
13:26:17 <yanyanhu> but we need a plan I think ;)
13:26:37 <Qiming> it would be a good practice though I don't think the release itself will change the world
13:26:55 <yanyanhu> sure
13:27:12 <Qiming> #action Qiming to investigate release procedure
13:27:46 <Qiming> anyway, we will definitely do a release by liberty-3
13:27:54 <yanyanhu> yes
13:28:02 <haiwei_> nice
13:28:49 <Qiming> let's think about it -- what do we want to go into the release
13:29:05 <Qiming> we can discuss it in our next meeting
13:29:16 <yanyanhu> em, especially what features will be included in the first release
13:29:17 <yanyanhu> ok
13:30:01 <lixinhui_> another thing I do not know if we should do in senlin is locale
13:30:22 <Qiming> lixinhui_, you mean internationalization?
13:30:26 <lixinhui_> yes
13:30:34 <lixinhui_> a light one ...
13:30:55 <Qiming> em ... I can read a little French, a little German ...
13:31:17 <lixinhui_> each time I wanna run senlin on my mac, I have to resolve local UTF-8
13:31:25 <lixinhui_> ...
13:31:35 <Qiming> haiwei_ can do some Japanese I think
13:32:02 <Qiming> UTF-8 is the standard encoding, especially for Python 3
13:32:14 <haiwei_> I am using a English environment
13:32:26 <lixinhui_> :-)
13:32:37 <Qiming> we do have infrastructure to extract strings for translation
13:33:00 <Qiming> the community has a shared project doing that: i18n
13:33:49 <Qiming> so far we have been transmitting and storing data in UTF-8 I think
13:33:57 <Qiming> okay, let's move on
13:34:22 <Qiming> #topic update on complex (scaling) policy
13:34:32 <Qiming> this has been my focus recently
13:35:03 <Qiming> I haven't checked in any code yet, because nothing is in good shape yet
13:35:32 <Qiming> in this work, I'm trying to model a scaling policy in 3 sections:
13:35:44 <Qiming> signal, schedule, handlers
13:36:10 <Qiming> a signal can be a ceilometer alarm, a monasca alarm, a zaqar message, for example
13:36:45 <Qiming> but the policy will contain only a single signal entry, that is a restriction to simplify implementation
13:37:31 <Qiming> when modeling the signal section, I spent some time studying the ceilometer alarm API doc, which is in nowhere
13:37:55 <Qiming> there are threshold alarm, combination alarm and ... gnocchi alarms
13:38:31 <Qiming> properties vary between different alarm types
13:39:03 <Qiming> and .... I saw this command:
13:39:28 <Qiming> ceilometer alarm-gnocchi-aggregation-by-metrics-threshold-create
13:39:50 <Qiming> kind of driven crazy by this ...
13:39:54 <haiwei_> a long command
13:40:31 <Qiming> and things like this: ceilometer alarm-gnocchi-aggregation-by-resources-threshold-create
13:40:38 <Qiming> sigh ...
13:41:13 <Qiming> any way, I will try my best to make the 'signal' specification applicable to most alarm types
13:41:26 <Qiming> the second 'section' is 'schedule'
13:42:00 <Qiming> this is designed for scheduled action triggering, it can be used with and without a signal section
13:42:13 <lixinhui_> knock knock
13:42:34 <lixinhui_> seems you once said ceilometer
13:42:40 <Qiming> if there is a signal and a schedule section, it means some action will be triggered during the 'schedule' window
13:42:42 <lixinhui_> will change the alar
13:43:01 <yanyanhu> yes, they have a plan to split alarm out of ceilometer
13:43:26 <haiwei_> to where?
13:43:32 <jruano> they are keeping ceilometer alarms for now until they make sure they don't break anything
13:43:42 <Qiming> if only 'schedule' section is provided, then the policy will take effect only during the target window
13:43:46 <jruano> heat team almost had a heart attack
13:43:57 <lixinhui_> :-)
13:44:00 <jruano> the switch is supposed to be transparent
13:44:03 <Qiming> yes, that is ....
13:44:30 <Qiming> I'm speechless over that patch
13:44:31 <yanyanhu> haiwei_, a new project named Aodh
13:44:47 <haiwei_> difficult to read
13:45:13 <Qiming> so, we need to keep an eye on that, and hopefully understand their new api design soon
13:45:49 <Qiming> the last section in the complex scaling policy is about 'handlers', yes, plural form
13:46:11 <Qiming> it is a list of actions to be triggered when some 'alarm' or 'message' is received
13:46:43 <Qiming> the good news is that both Ceilometer and Monasca support a list of webhook urls
13:47:21 <Qiming> I have almost finished the parsing of the 'handler' section
13:47:40 <Qiming> maybe I should check in a WIP for you guys to comment
13:47:52 <Qiming> but don't +2 on it yet, cores
13:48:20 <yanyanhu> :)
13:48:35 <yanyanhu> will help to review the code one you submit it
13:48:46 <Qiming> thanks, that would be great
13:48:54 <Qiming> please as picky as you can be
13:50:22 <Qiming> any questions/comments so far?
13:50:30 <jruano> i like the design approach. would be nice to investigate the code
13:50:52 <Qiming> okay, will check in the code tomorrow
13:51:07 <lixinhui_> hoho~
13:51:16 <Qiming> #topic open discussions
13:52:04 <haiwei_> the error lixinhui_ has reported is similar like this https://bugs.launchpad.net/python-senlinclient/+bug/1472557
13:52:05 <openstack> Launchpad bug 1472557 in python-senlinclient "cluster, profile and node can't be updated" [Undecided,New]
13:52:05 <uvirtbot> Launchpad bug 1472557 in python-senlinclient "cluster, profile and node can't be updated" [Undecided,New]
13:52:05 <Qiming> one thing above my head is about the talk proposal
13:52:06 <uvirtbot> Launchpad bug 1472557 in python-senlinclient "cluster, profile and node can't be updated" [Undecided,New] https://launchpad.net/bugs/1472557
13:52:52 <jruano> yes, need to get started on an outline and some initial content
13:53:09 <Qiming> haiwei_, will look at it later, thanks for reporting
13:53:27 <yanyanhu> and anyone has decided to join the summit?
13:53:36 <Qiming> we need a POC implementation of a container cluster
13:54:08 <Qiming> it won't be very difficult if you are using CoreOS guest image
13:54:35 <Qiming> I had some experiments before, though not a cluster environment
13:54:37 <yanyanhu> but we need a driver for this?
13:54:52 <Qiming> it is just a nova server
13:55:08 <Qiming> with some extra metadata
13:55:17 <yanyanhu> oh, you mean lxc supported by nova
13:55:21 <yanyanhu> understand
13:55:36 <Qiming> someone need to dive into magnum code to find out what else do they need from a VM to run containers
13:55:49 <Qiming> no, not lxc
13:56:25 <Qiming> magnum is building bays using nova servers (VMs) and then create containers inside the VMs
13:56:57 <jruano> ah i see, so just some extra nova server data
13:57:12 <Qiming> yes, that could be a quick experiment
13:57:32 <Qiming> you need some k8s or docker packages in the image
13:57:37 <jruano> i can take a look. when do you need it by?
13:57:55 <yanyanhu> with user_data and cloud-init?
13:58:04 <Qiming> jruano, the earlier the better
13:58:11 <Qiming> yes, yanyanhu
13:58:15 <yanyanhu> ok
13:58:27 <jruano> ill see if i can get to it later today
13:58:33 <Qiming> thanks, jruano, ping me if you need some help on starting this
13:58:38 <jruano> np
13:59:00 <Qiming> #action Julio to experiment with containers
13:59:08 <Qiming> okay, time's up
13:59:17 <Qiming> let's go to #senlin
13:59:23 <Qiming> thank you all
13:59:28 <Qiming> #endmeeting