/srv/irclogs.ubuntu.com/2015/09/04/#juju.txt

stokachuanyone seen an error like this http://paste.ubuntu.com/12266891/, running on wily inside a wily container (as in juju bootstrap while inside the container)01:41
stokachuand a custom juju_home /home/ubuntu/.cloud-install/juju/local01:42
=== lukasa is now known as lukasa_away
=== lukasa_away is now known as lukasa
=== lukasa is now known as lukasa_away
=== lukasa_away is now known as lukasa
=== Spads_ is now known as Spads
stubaisrael: With the new charm, you will get the same database if you recreate the service with the same service name. With the old charm, it deliberately won't clean up (because that would be dataloss).06:08
stubaisrael: We could provide actions for some of these operations, for people uncomfortable with reaching in and dealing with PG directly.06:09
jamespagecoreycb, does https://bugs.launchpad.net/charms/+source/neutron-api/+bug/1456291 ring bells for you? I remember a fix for keystone token handling that you did but I can't find it10:29
mupBug #1456291: HA deploy: one neutron-api unit had wrong credentials in memory <landscape> <neutron-api (Juju Charms Collection):New> <https://launchpad.net/bugs/1456291>10:29
aisraelstub: The problem I see with the new behavior is that the schema (tables and such) are owned by the previous user. Would it make sense to change ownership of those things when new credentials are handed out?13:05
ParsectiXHi guys. I find the idea of juju very interesting. I'm wondering about the H/W and what I need to lunch my own private juju service.13:18
ParsectiXCan someone advice about physical deployments ?13:18
coreycbjamespage, yes there was an sru to python-keystonemiddleware in (at least) utopic for that13:27
jamespagecoreycb, oh - right so for juno only  gotcha13:29
aisraelstub: cleanup from the -broken relation doesn't work because the credentials are already removed from the database. I don't see a way for the charm author to deal with this.13:48
jamespagebeisner, coreycb, zul, gnuoy: liberty is deployable from trusty-liberty-proposed with next charms14:10
jamespagebasic boot and access worked OK14:10
beisner \o/14:10
gnuoytip top14:10
jamespageI'm tempted to slam-dunk that straight into updates as well and bank it now14:10
beisnerjamespage, i queued up a deploy test w/ tempest etc in uosci14:14
jamespagebeisner, yeah - that's not working so well right now14:14
beisnerjamespage, ah but a point of reference "the beginning"  ;-)14:15
jamespageindeed14:15
jamespagebeisner, lol - I just screwed up my tempest.conf that's all14:34
apuimedojamespage: ping14:40
jamespageapuimedo, hey14:43
jamespagecoreycb, zul: b3 next week then :-)14:43
apuimedojamespage: just a question about the rendering14:43
apuimedoof the templates in charmhelpers/openstack/templating.py14:44
apuimedowhat is creating the target directories for the the rendering?14:44
jamespageapuimedo, directories are not created by the templating framework - normall they are overwriting configuration files provided in packaging14:45
jamespageapuimedo, if not then charm-helpers provides a mkdir function that you can call before trying to render anything.14:45
jamespageallowing you to secure things as required...14:46
apuimedojamespage: I see, thanks ;-)14:46
apuimedoI did put the mkdir workaround but stupidly did it before neutron got installed so the user that I was using for ownership of the dir did not exist back then14:46
apuimedo:P14:47
apuimedoI was checking how nuage and calico deal with the lack of creation of the plugin dir14:49
apuimedobut I could not find any mkdir that they issue for /etc/neutron/plugin/{nuage,calico} so I guess that their packages create those directories14:49
jamespageapuimedo, normally yes14:49
apuimedojamespage: I'll file a bug agains midonet plugin packaging then to create the empty dir or maybe even with an example config :-)14:50
apuimedojamespage: thanks for the info ;-)14:51
jamespageapuimedo, http://paste.ubuntu.com/12273645/14:51
jamespageok in distro14:51
apuimedojamespage: unfortunately those are outdated from back when the vendor plugins were in the neutron tree14:52
apuimedojamespage: we are moving to have a ppa14:55
apuimedoand we want to move it inside cloud-archive14:55
lazyPowerapuimedo: I assume the service you're writing files for is not a subordinate service?14:58
apuimedono15:00
apuimedolazyPower: it is neutron-api15:00
lazyPowerah hokay15:00
apuimedolazyPower: why, would that complicate matters?15:01
apuimedo(well, ordering could)15:01
lazyPowerapuimedo: i was going to suggest that it could be easier :)15:01
apuimedolazyPower: well, I'm really looking forward to the neutron plugin configuration being based on subordinates15:02
apuimedoI think it was jamespage who showed me the plans and they looked really nice15:02
lazyPowerapuimedo: http://bazaar.launchpad.net/~charmers/charms/trusty/neutron-api-plumgrid/trunk/view/head:/metadata.yaml - it can be today unless i'm missing something15:03
lazyPoweri just reviewed this stack earlier in the week15:03
lazyPoweryeah jamespage is a bit of a local folk hero 'round these parts :)15:04
lazyPowerapuimedo: is this ready for re-review and hasn't gotten any attention or are we just monitoring for progress at the moment? https://bugs.launchpad.net/charms/+bug/145367815:06
mupBug #1453678: New charms: midonet-host-agent, midonet-repository, midonet-api <Juju Charms Collection:New> <https://launchpad.net/bugs/1453678>15:06
apuimedolazyPower: I was blocked due to other work15:08
apuimedolazyPower: this week I got back to it15:08
lazyPowerack, just checking in, no pressure :) Wanted to make sure you weren't blocked on us.15:08
apuimedolazyPower: no, not yet15:08
apuimedothanks15:08
apuimedoall ready for the Charmers Summit?15:08
lazyPowernot exactly - but getting there :)15:10
apuimedo:-)15:11
lazyPowerapuimedo: so, we're going to have a couple sessions about rapid charming w/ layers to deliver app containers re-using components that mbruzek and I have built15:12
lazyPowerbased on our last convo, might be applicable to your efforts15:13
apuimedolazyPower: sounds like it15:13
* mbruzek waves at apuimedo15:13
apuimedoI'll have to make one last effort to get approval to join15:13
apuimedombruzek: hey!15:13
mbruzekhello apuimedo!15:14
jamespagelazyPower, apuimedo: can't really take credit for that - gnuoy did the work :-=)15:15
apuimedognuoy: good job on that ;-)15:15
jamespageapuimedo, two of thos base layers should be 'neutron-api-subordinate' and 'neutron-edge-suboridate' - I need to flesh those out15:28
apuimedojamespage: will there be a session about that in the charmers summit?15:29
jamespageapuimedo, hopefully15:29
apuimedo:-)15:34
apuimedocatbus1: nice nick15:34
catbus1:)15:34
lazyPowerapuimedo: i'm going to mark 1453678 as in progress since you're working on it and its sitting in teh queue at 30 days, unreviewed, and its not ready for re-review.15:40
apuimedook15:40
lazyPowerwhen you're ready, make sure you update that bug to fix-committed or new and it'll make its way back in15:40
apuimedolazyPower: ok, thanks!15:41
apuimedolazyPower: is there some way to change history in launchpad's bzr?15:46
lazyPowerapuimedo: in what context?15:47
lazyPoweras in force push your repository?15:47
jamespagebeisner, we'll need todo a general charm update for liberty to switch mysqldb -> pymysql15:52
beisnerjamespage, huh where?15:53
jamespagebeisner, all over15:57
jamespagemysql:// -> mysql+pymysql://15:57
beisnerjamespage, in the db_uri in amulet tests?  or even broader?15:59
jamespagebeisner, for liberty configuration file templates - and I guess the amulet tests as well16:06
=== frankban_ is now known as frankban
beisnerjamespage, gotcha.   kind of a weird db uri.  is that going to stick @ L?16:07
beisnerthey must have some add'l uri parser foo in L16:08
jamespagebeisner, yeah - its in sqlalchemy16:10
jamespagemost of our charms continue to work as they use the mysqldb syntax and explicitly install the mysqldb package16:11
jamespagebut there are good reasons to switch to pymysql16:11
jamespagepy3, better aio16:11
jamespagebeisner, hmm - although I think that coreycb may have tried to fix this up in sqlalchemy16:14
beisnerjamespage, coreycb - trusty-liberty-proposed - basic deploy check ok, just 2 tempest fails;  http://10.245.162.77:8080/job/deploy_with_deployer/11245/consoleFull16:16
=== frankban_ is now known as frankban
beisnerjamespage, can you review this nova-compute ppc64el MP?  i may also do a separate proposal later to make it smarter / more automagic, but needed to at least expose these controls to have a working bundle.  https://code.launchpad.net/~1chb1n/charms/trusty/nova-compute/cpu-mode/+merge/26995216:19
jamespagebeisner, one niggle16:24
jamespagebeisner, also does that context get used for nova.conf?16:24
beisnerjamespage, ack re: arch detection conditional;   yep, nova.conf.16:25
beisnerjamespage, on the topic of arch detection, should we go as far as to make the nova-compute charm just do those things when deployed on ppc64el, and indicate that in the config.yaml config descriptions?16:27
beisnerie.  just work16:27
jamespagebeisner, yes16:29
=== ben`` is now known as benbc
jamespageskip if its not ppc64el16:29
jamespageno-op16:29
beisnerjamespage, and if user sets options explicitly, use those in all cases?16:29
beisnerexcept non ppc64el of course16:30
beisnerie. explict trumps automagic16:30
beisnerexplicit even16:30
=== natefinch is now known as natefinch-afk
benbcHello. What is the normal approach to installing different versions of software? Do users expect to see charms named for different versions (e.g. `juju deploy postgresql-9.3`)? Or are charms parameterized with the version number (e.g. `juju deploy --config config.yaml postgresql` with `version: 9.3` in config.yaml?) or do all charms in practice just install the latest version of the software?16:38
benbcOr some other possibility that hasn't occured to me?16:39
jamespagebeisner, oh wait - I see what you're saying16:44
jamespagebeisner, ok - how about we reword that config option to be a boolean - as its on/off true/false16:44
jamespageprovide a suitable default, and only apply it on ppc64el16:44
beisnerjamespage, int is a valid value in that cmd16:44
beisneron/off/int16:45
jamespageoh16:45
jamespagewhat does int do?16:45
beisnerthere are smt modes, which can be set by ints16:46
jamespagebeisner, I need to eod - my brain is fried16:48
beisnerjamespage, np.  thx for the input.  i won't be doing much with that until next wk, no worries.16:48
jamespagebeisner, ok - it sounds like on/off/int is valid then but that might be better modelled as two config options - smt on/off16:48
jamespageand then an optional 'int' value if its turned on?16:49
jamespagedoes 'on' do a sane default?16:49
beisnerjamespage, or no config options and it all just works ;-)   jk, kind of.16:49
beisnerjamespage, no it would need to be off for nova-compute16:49
jamespagebeisner, we should provided an optionionate default for our experience, with knobs for experts16:49
jamespagedoes that make sense16:50
jamespage?16:50
beisnerjamespage, yep, agree16:50
jamespageand make sure that if someone tries this on amd64 - it no-op's16:50
jamespagethat's my guidance - I'll review again on monday if you want to update today :-)16:50
jamespagettfn16:50
beisnerjamespage, ack, will adjust next wk  or on my next ppc64el endeavor.16:50
jamespagebeisner, oh - btw - I've pushed proposed->updates for liberty16:50
jamespageits OK for now16:50
beisnerwoot16:50
jamespagebeisner, I've also switch the default mysql dialect in sqlalchemy to be pymysql16:51
jamespageso that the existing mysql:// string dtrt16:51
beisnerah nice16:51
skylerbergbeisner: I am getting CI failure's on my patch (https://code.launchpad.net/~sberg-l/charms/trusty/nova-compute/tintri-interface/+merge/269998).17:35
skylerbergI think the issue is on the CI server's end, because it looks like a deployment is timing out and my commit shouldn't have any impact on that process really.17:36
beisnero/  skylerberg, commented, re-queued the job.17:39
skylerbergbeisner: thanks!17:40
beisnerskylerberg, welcome17:43
DrewTanyone here have experience deploying openstack using the postgresql charm? I can't get the keystone charm to populate the db after db_sync creates the schema19:53
=== natefinch-afk is now known as natefinch
marcoceppiDrewT: I've not tried actually, I've always just kind of used mysql20:05
marcoceppibeisner: do we have a test in OSCI for postgresql?20:05
=== scuttlemonkey is now known as scuttle|afk
=== lukasa_ is now known as lukasa
beisnerhi marcoceppi - pgsql isn't watched by uosci21:00
marcoceppibeisner: DrewT was having some issues with psql and keystone, was wondering if it was tested at all21:01
beisnermarcoceppi, we exercise mysql + keystone || percona xtradb + keystone, but not pgsql21:01
=== zz_CyberJacob is now known as CyberJacob
=== CyberJacob is now known as zz_CyberJacob
dbainbriwith the docker charm I can deploy docker and then use juju run to execute a container on the docker instance, but what I am looking for is a way to expose one or more servers running docker as a "machine" onto which I can "place" docker based charms. So that in the JuJu UI I can create configurations based on docker charms and then commit them to be placed at which point they will be deployed to those systems that are running docke21:37
beisnerthedac, ok, rabbits released to wolves @ https://code.launchpad.net/~1chb1n/charms/trusty/rabbitmq-server/amulet-refactor-1509b/+merge/270102    ...thanks!21:48
thedacbeisner: great, thanks21:48
marcoceppidbainbri: you should talk with mbruzek and lazyPower, they might be able to help you there21:50
dbainbrimarcoceppi: thx.21:51
mbruzekdbainbri: There is a lot of docker in your question.  Let me ask a few questions.21:54
dbainbrimbruzek: fire away21:54
mbruzekdbainbri: How would the Juju UI create configurations ?21:55
mbruzekOne could certainly write a charm that installs docker, and as a configuration option lets you configure which docker image to pull and run.21:56
mbruzekThat configuration option could be changed via the UI (or command line).21:56
mbruzekI don't think I understand your question correctly.21:56
dbainbrimbruzek: i am a newbie wrt Juju so please bear with me. You mean configurations for the containers or for the docker instances?21:56
marcoceppimbruzek: it sounds like, and correct me if I'm wrong dbainbri, that you have a docker solution for something, but you want to wrap a charm around it so you can deploy it with docker, get density, but still use juju to manage it (relations, etc)21:57
dbainbriI would like to point Juju at a bunch of docker instances (hosts running docker)21:57
mbruzekdbainbri: I am not sure we can do that at the moment.  Juju would have to have deployed those docker instances to be able to orchestrate/manage them.21:58
dbainbrimbruzek: I would like Juju to treat hosts running docker as a machine on which "docker" charms can be placed.21:58
mbruzekah21:58
mbruzekdbainbri: That does not work at the moment, we do have a container technology called LXC that is very similar to Docker, but it models a machine container, rather than an application container.21:59
mbruzekBut since LXC is not Docker you can't run your favorite Docker image in LXC.21:59
dbainbrimbruzek: is there a writeup of that somewhere?22:01
mbruzekJuju can currently treat the Virtual Machines that you get from Amazon, GCE, OpenStack as LXC hosts and you can put many LXC images inside a VM.22:01
dbainbriand those LXC images are "placed" much like a charm on a host in Juju?22:02
mbruzekdbainbri: yes.22:03
mbruzekdbainbri: I am looking for some documentation for you, the problem is LXC is also our "local" cloud story.22:03
dbainbrithat sounds like what I am looking for except I am looking for that on a local hosts in Juju and with docker22:03
mbruzekUsing LXC you can make your computer look like a cloud, so you can deploy multiple LXC images to your desktop or latop22:04
marcoceppithe problem with this is that you still ahve to code up how to install the software onto the LXC container, the LXC image is just a base clodu image22:04
mbruzekBut that is not what you are looking for, unfortunately that is all I find in the search results.22:04
dbainbriany desire / plan to add this same capability with docker or the open container work?22:04
marcoceppidbainbri: yes, we're actively working on something like this in juju though I'm not sure if it's exactly how you described it22:05
dbainbrimarcoceppi: where are my thoughts off from what is being worked on?22:05
marcoceppidbainbri: we're working to expose "workloads"/process running in juju, so you could deploy the docker charm, add workloads. Or deploy kubernetes, rocket, KVMs, and the charm would tell juju that it's running these items22:07
mbruzekdbainbri: We don't have as good of integration with Docker as you want.  Even the current work I am not sure it will be what you are looking for.22:08
marcoceppidbainbri: it wouldn't directly allow you to configure it, but we have tools that will let you wrap docker in charms, so if you have a foo server in docker, you can easily build a charm around that, exposing configuration, etc, then deploy it and manage it with juju22:08
marcoceppimbruzek lazyPower do you guys ahve examples using the docker layer stuff?22:09
mbruzekmarcoceppi: we are writing that up now, it is very rough and not what dbainbri has described22:09
marcoceppimbruzek: right, but if you take the docker composer items, and use juju deploy --to22:10
mbruzekThat is writing a docker charm, he wants to deploy charms to a docker host22:10
dbainbrimarcoceppi: i thought i saw a docker-seed charm that could be expanded to run a single (or multiple) docker containers in a charm, but it really is just a wrapper to run a static set of containers22:10
mbruzekdbainbri: That is where we are at at the moment22:11
mbruzekdbainbri: https://jujucharms.com/docs/stable/charms-deploying#deploying-to-specific-machines-and-containers22:11
mbruzekdbainbri: So when you deploy by default Juju gives you a new Virtual Machine.  You can use "--to <machine number>/lxc/1" to deploy the same charm to an LXC container22:13
mbruzekI know that is not docker but that is how we use containers in Juju at the moment.22:13
dbainbrimbruzek: i suppose the "docker-ssed" charm could take a config file that is a set of containers to start and how to connect them (a docker-compose file for example)22:13
mbruzekThe Juju GUI also has a tab called "machine view" where you can deploy to LXC containers within a VM as well.22:13
dbainbrior use Juju to deploy a bunch of docker instances and then Kubernetes or or compose to layer containers on them.22:14
mbruzekdbainbri: Yeah I think you are on to something there.22:14
mbruzekdbainbri: We have kubernetes charms, but that creates a cluster for you and then you would have to deploy things to the cluster with kubectl22:14
dbainbridoes every charm map to a VM ?22:14
marcoceppialmost always22:15
mbruzekdbainbri: Except for the "subordinate" charms, which can share a VM with another charm.22:15
marcoceppimbruzek: and manual placement via --to22:15
marcoceppiand containers which really aren't vms22:15
marcoceppiand in the case of bare metal22:16
mbruzekdbainbri: but yes almost always a VM.  And you can pack many LXC containers on one VM similar to Docker22:16
marcoceppiI think "machine" may be more appropriate verbiage22:16
dbainbrimbruzek: subordinate charms, sounds interesting. do subordinate charms show up in the UI as first class citizens?22:16
mbruzekyes22:16
mbruzekhttps://jujucharms.com/docs/1.24/authors-subordinate-services22:16
dbainbriso could "docker container charms" be subordinate charms that you could dynamically relates to a docker charm?22:16
marcoceppidbainbri: yes22:17
mbruzekSubordinates don't use container technology at all, they just share the filesystem with a VM.22:17
dbainbriah, ok22:17
marcoceppimbruzek: well, what he described could work22:17
dbainbriso i couldn't make a subordinate charm that essentially did a "docker run"22:17
marcoceppimbruzek: docker base charm, that manages installing docker, subordiante that provides a relation that describes the container it's installing22:17
mbruzekdbainbri: and one strategy could be to deploy a VM running Docker (via a docker charm) and then deploy a bunch of subordinates that know how to start up their own docker services.22:18
dbainbrimarcoceppi: yes something like that22:18
marcoceppiokay, I think we're straying a bit in this conversation22:18
mbruzekThere you go22:18
marcoceppiSo, from a juju perspective you have services, units, and machines22:19
dbainbrimbruzek: would agree we are straying. just looking at possibilities. would prefer that docker instances could be treated as "object on which docker based charms could be placed, but interested in what can be done now as well.22:19
marcoceppiservices are charms, units are the number of machines that are running in that service (think scale out), and machines are the resources in a cloud that are deployed22:19
marcoceppiwith that model, you could create a charm for each docker service you want to deploy, and then have juju provision one machine and force each unit of the charm to live on that single machine.22:20
marcoceppithe second workflow is a subordinate workflow, but subordinates aren't first class citizens, they don't get assigned to machines (and machines are a full operating system so either bare metal, a cloud instance, or an LXC container)22:20
marcoceppiinstead they are attached to primary services, so think of things like monitoring agents or logging agents22:21
marcoceppiit doesn't make sense to have them on their own machine, but instead on an existing workload22:21
marcoceppiso you could use a subordinate model to drop workloads on a docker service22:21
dbainbrimarcoceppi: with respect to your first option. ultimately you could build out several units for "docker" and then the docker services are forced to one of those machines22:21
marcoceppidbainbri: So the first solution isn't the worst, i think for what you're describing it's the best course of action until juju grows app containers as a first class citizen22:22
dbainbrimarcoceppi: * nod *22:23
marcoceppidbainbri: if you force X primary services onto a single machine, you run the risk of collisions, so if the charm was clever enough (ie, is docker installed? no - install, other wise just docker run) and the containers didn't conflcit with resources22:23
marcoceppidbainbri: if you were to "scale out" any of those charms, they'd just get a fresh machine from the provider, where as you can't scale out a subordinate without scaling the base. So if you have foo and bar subordiantes, and you scale the docker primary service, you get an additional foo and bar container running22:24
marcoceppiI feel like I'm not doing the explaination justice, it's a pretty niche scenario, we call it "hulk-smashing" and it typically ends up broken deployments. (ie, forcing mysql and mariadb to the same machine in juju will break because they'll stomp on each other)22:25
mbruzek(use the same files)22:25
marcoceppithis is why we have LXC support in juju, you can have one machine in juju, but juju can create LXC containers, full system containers, on this machine, so MySQL and MariaDB could be deployed to two LXC containers on one machine without conflicting22:26
marcoceppithe charm has no idea, it just has root on an operating systema and runs as expected22:26
dbainbrimarcoceppi: with docker that conflict would likely be at exposing ports on the hosts.22:26
marcoceppidbainbri: exactly, so you'd have to make sure port was configurable in each image, and you'd have to make it a configuration option on each of the charms22:26
marcoceppidbainbri: so you could map each port yourself in the deployment22:27
marcoceppiagain, it's not the prettiest, and it's an edgecase, but there are ways to achieve what you've described22:27
marcoceppidbainbri: I'd be happy to write up a little example set of charms if you're interested22:27
marcoceppidbainbri: also, not sure where you are in the world, but we've got a juju charmer summit coming up in two weeks: http://insights.ubuntu.com/event/juju-charmer-summit-2015/ if you're interested in attending and chatting more about this22:28
dbainbrimarcoceppi: i am interested if you are willing to do the write up ;) i am on the left coast (US) so not near DC (used to live in Boston, but now in CA)22:29
marcoceppidbainbri: sure, I'll try to create a few real simple examples22:30
marcoceppidbainbri: I'm not really proficent in docker, but mbruzek and lazyPower have some great examples already22:30
dbainbrii will start by playing with the docker-seed and expanding it, seeing what i can do there. but any info from those with more knowledge is more than appreciated.22:32
dbainbrithx everyone, just for this chat, very helpful.22:32
mbruzekwelcome22:32
=== JoshStrobl is now known as JoshStrobl|Busy

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!