Bindings can be set explicitly in bundles because each piece of the bundle takes different bindings.
mysql: ... bindings: "": space telemetry: ... bindings: "": space You can't specify deploy bundle with binding because each application is likely to be bound differently. John =:-> On Fri, Mar 10, 2017 at 8:28 AM, Patrizio Bassi <patrizio.ba...@gmail.com> wrote: > Hi John, > > i do agree about ip addresses may be changing from application to > application but the ip addresses showed should be the ip juju > controller/client may reach the vm/container/bare metal. It should be, if > possibile, the machine hostname or the reverse lookup in the dns server, if > any. > > For instance in my case i just have 2 ethernet interfaces, quite simple > design: eth0 is the public one, with its hostname in the dns, eth1 is other > net with a private one. Why should juju show the private one? Infact it's > not working (question is, how do you deploy openstack with juju with more > than 1 eth ports?). > > I tried with a openstack telemetry bundle. --bind cannot be passed to a > bundle so i tried just to add a > constraints: spaces=management > for all machines described in the bundle, but, as design, it just select a > machine that has access to that space, doesn't bind anything > > Basically all containers fail because of networking. > > 0/lxd/3: > juju-status: > current: pending > since: 10 Mar 2017 10:53:59Z > instance-id: pending > machine-status: > current: allocating > message: 'failed to start instance (unable to setup network: no > obvious > space for container "0/lxd/3", host machine has spaces: > "management", > "private"), retrying in 10s (3 more attempts)' > > This is blocking everything for me. > > Patrizio > > > > 2017-03-10 14:35 GMT+01:00 John Meinel <j...@arbash-meinel.com>: > >> The Address reported for the Machine is not necessarily the address that >> is given to the applications themselves. You can run more than just 1 >> application on a machine, so they aren't strictly correlated. The question >> is whether when relating that application to another application what >> addresses it will share. And I'm pretty sure that is actually accurate. >> >> John >> =:-> >> >> >> On Fri, Mar 10, 2017 at 2:41 AM, Patrizio Bassi <patrizio.ba...@gmail.com >> > wrote: >> >>> Good morning John, >>> >>> I tested it, i destroyed the controller and rebuilt from scratch. >>> >>> after juju bootstrap i got "No packaged binary found, preparing local >>> Juju agent binary" because it could not find 2.1.2 version in the repos, >>> which is great. >>> >>> with >>> $ juju deploy ceph-osd --bind <space> >>> >>> The unit deployed but $ juju status and $ juju show-machine 0 both show >>> the secondary ip address as public address and not the one should come from >>> subnet forced by --bind <space> >>> >>> So i tried without --bind >>> $ juju deploy ceph-osd >>> >>> and it worked (deployed) as well, exactly as first attempt with bind. So >>> i suspect the patch is just working for the cmd line parser but not >>> affecting the interface/space selection, and my issue got fixed somehow >>> while rebuilding the controller from scratch. >>> >>> $ juju show-machine 0 continues to show dns-name to an ip address and >>> not the hostname in the dns (in the <space>) for instance. >>> >>> So it's not complete for me, sorry. >>> >>> Patrizio >>> >>> >>> 2017-03-09 20:28 GMT+01:00 John Meinel <j...@arbash-meinel.com>: >>> >>>> The build for trusty is the same as Xenial, it is just called trusty >>>> for historical reasons. >>>> >>>> John >>>> =:-> >>>> >>>> >>>> On Thu, Mar 9, 2017 at 12:32 PM, Patrizio Bassi < >>>> patrizio.ba...@gmail.com> wrote: >>>> >>>>> Ok! I'll test tomorrow, but i need a xenial build as i'm on 16.04 >>>>> release >>>>> >>>>> Patrizio >>>>> >>>>> Il 09/mar/2017 07:29 PM, "John Meinel" <j...@arbash-meinel.com> ha >>>>> scritto: >>>>> >>>>>> http://data.vapour.ws/juju-ci/products/version-4977/build-bi >>>>>> nary-trusty-amd64/build-2159/juju-core_2.1.2-0ubuntu1~14.04. >>>>>> 1~juju1_amd64.deb >>>>>> >>>>>> Should have the fix for empty binding names. >>>>>> >>>>>> John >>>>>> =:-> >>>>>> >>>>>> >>>>>> On Thu, Mar 9, 2017 at 11:43 AM, Ante Karamatić < >>>>>> ante.karama...@canonical.com> wrote: >>>>>> >>>>>>> My snap is pending review. In the meantime you can try with: >>>>>>> >>>>>>> https://launchpad.net/~ivoks/+archive/ubuntu/ppa >>>>>>> >>>>>>> On Thu, Mar 9, 2017 at 6:38 PM John Meinel <j...@arbash-meinel.com> >>>>>>> wrote: >>>>>>> >>>>>>>> We should as soon as I have it landed in the 2.1 branch and CI >>>>>>>> starts to run we can use it's deb. >>>>>>>> >>>>>>>> John >>>>>>>> =:-> >>>>>>>> >>>>>>>> On Mar 9, 2017 09:48, "Patrizio Bassi" <patrizio.ba...@gmail.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>> Fantastic job John! >>>>>>>> >>>>>>>> do you have a .deb i can already test on my environment? >>>>>>>> >>>>>>>> Patrizio >>>>>>>> >>>>>>>> 2017-03-09 16:24 GMT+01:00 John Meinel <j...@arbash-meinel.com>: >>>>>>>> >>>>>>>> I do have a fix up for review: >>>>>>>> https://github.com/juju/juju/pull/7081 >>>>>>>> And I have tested it live against a local maas, though my maas >>>>>>>> doesn't have multiple interfaces, I can see the bindings get requested >>>>>>>> appropriately and not fail with the "empty binding name" failure. >>>>>>>> >>>>>>>> I'm pushing to get a 2.1.2 out to include this fix once it lands >>>>>>>> for review and CI, etc. If it all goes well then 2.1.2 will be out >>>>>>>> later >>>>>>>> this week. >>>>>>>> >>>>>>>> John >>>>>>>> =:-> >>>>>>>> >>>>>>>> >>>>>>>> On Thu, Mar 9, 2017 at 8:40 AM, Patrizio Bassi < >>>>>>>> patrizio.ba...@gmail.com> wrote: >>>>>>>> >>>>>>>> @John >>>>>>>> great. i'm using juju 2.1.1 and maas 2.1.3. >>>>>>>> >>>>>>>> Regarding the workaround...it's not a matter of a particular charm, >>>>>>>> it's a matter of all (i will deploy openstack-telemetry charm with some >>>>>>>> modifications), because when we allocate a machine with juju i would >>>>>>>> like >>>>>>>> it to pick a public (dns) name, the one on the --bind <space>, no >>>>>>>> matter >>>>>>>> which extra binding is declared in the charm, if any. >>>>>>>> >>>>>>>> Plus: i would even add another option, such as bind to a particular >>>>>>>> net interface as a machine may have 2 subnet belonging to the same >>>>>>>> space >>>>>>>> address (ok, we may model this in maas by designing 1-to-1 >>>>>>>> subnet-to-space). >>>>>>>> >>>>>>>> Again: some charms may use the juju network spaces, but it would be >>>>>>>> great juju to be charm agnostic when asking resources to maas (with >>>>>>>> bind >>>>>>>> constraint of course). >>>>>>>> >>>>>>>> I'm ready to test if you have a fix. >>>>>>>> >>>>>>>> Patrizio >>>>>>>> >>>>>>>> >>>>>>>> 2017-03-09 15:05 GMT+01:00 Sandor Zeestraten <zando...@gmail.com>: >>>>>>>> >>>>>>>> Where do we find which bindings a charm has so they can be >>>>>>>> specified directly? >>>>>>>> According to the docs on the metadata ( >>>>>>>> https://jujucharms.com/docs/stable/authors-charm-metadata) there's >>>>>>>> a section called extra-bindings but that only seems to be used in some >>>>>>>> charms. >>>>>>>> >>>>>>>> -- >>>>>>>> Sandor Zeestraten >>>>>>>> >>>>>>>> On Thu, Mar 9, 2017 at 2:34 PM, John Meinel <j...@arbash-meinel.com >>>>>>>> > wrote: >>>>>>>> >>>>>>>> In the meantime, you can work around it by specifying the bindings >>>>>>>> directly: so in the case of mysql that would be: >>>>>>>> juju deploy mysql --bind "db=db-space monitors=db-space >>>>>>>> ha=db-space ..." >>>>>>>> >>>>>>>> John >>>>>>>> =:-> >>>>>>>> >>>>>>>> >>>>>>>> On Thu, Mar 9, 2017 at 7:25 AM, John Meinel <j...@arbash-meinel.com >>>>>>>> > wrote: >>>>>>>> >>>>>>>> "juju deploy mysql --bind db-space" is exactly the syntax that >>>>>>>> should be working, and I'm seeing it failing now. I will work to fix >>>>>>>> that >>>>>>>> and make sure we don't regress here. We certainly should have caught >>>>>>>> that >>>>>>>> before release. >>>>>>>> >>>>>>>> John >>>>>>>> =:-> >>>>>>>> >>>>>>>> >>>>>>>> On Thu, Mar 9, 2017 at 1:47 AM, Patrizio Bassi < >>>>>>>> patrizio.ba...@gmail.com> wrote: >>>>>>>> >>>>>>>> Hi Ante, >>>>>>>> >>>>>>>> no that is not working, but i think it's by design. >>>>>>>> That constraint means: pick up a machine that has a leg in the >>>>>>>> db-space leg. >>>>>>>> >>>>>>>> So my machine with 2 eth ports in two different spaces satisfy that >>>>>>>> constraint, >>>>>>>> it is picked, but the IP is wrong. >>>>>>>> >>>>>>>> Another option i tried is: >>>>>>>> >>>>>>>> juju deploy mysql --constraints spaces=db-space,^space_i_dont_want >>>>>>>> >>>>>>>> in that case the machine is filtered out, because, as i said >>>>>>>> before, it means "a machine that is in db-space space but not in >>>>>>>> space_i_dont_want >>>>>>>> space". >>>>>>>> >>>>>>>> i just want it to pick the right ip! >>>>>>>> >>>>>>>> I checked the json coming from maas: it seems sorting ipv4 >>>>>>>> addresses from "smallest" to biggest and juju just picks the first >>>>>>>> one. in >>>>>>>> juju status i continue to see "dns-name" set to the wrong ip address, >>>>>>>> which >>>>>>>> doesn't resolve too. >>>>>>>> >>>>>>>> even using --to fqdn it doesn't get the right ip >>>>>>>> >>>>>>>> So i think there are two bugs: >>>>>>>> 1) juju deploy --bind cannot find space name reporting "empty >>>>>>>> names" error msg >>>>>>>> 2) juju doesn't try to resolve ips/hostname to check what's the >>>>>>>> machine name >>>>>>>> >>>>>>>> can you reproduce it? >>>>>>>> >>>>>>>> Patrizio >>>>>>>> >>>>>>>> >>>>>>>> 2017-03-09 8:39 GMT+01:00 Ante Karamatić < >>>>>>>> ante.karama...@canonical.com>: >>>>>>>> >>>>>>>> Hi Patrizio, >>>>>>>> >>>>>>>> this is exactly what I saw yesterday too, unrelated to this thread. >>>>>>>> What you could do is: >>>>>>>> >>>>>>>> juju deploy mysql --constraints spaces=db-space >>>>>>>> >>>>>>>> Let me know if the constraints workaround works for you. >>>>>>>> >>>>>>>> On Thu, Mar 9, 2017 at 8:28 AM Patrizio Bassi < >>>>>>>> patrizio.ba...@gmail.com> wrote: >>>>>>>> >>>>>>>> Hi John, >>>>>>>> >>>>>>>> i simply would like to do what's written in >>>>>>>> https://jujucharms.com/docs/2.1/charms-deploying >>>>>>>> >>>>>>>> "When deploying an application to a target with multiple spaces, >>>>>>>> the operator must specify which space to use because ambiguous bindings >>>>>>>> will result in a provisioning failure." >>>>>>>> >>>>>>>> This is exactly my case: a machine with 2 eth ports, two different >>>>>>>> subnets in two different spaces. >>>>>>>> >>>>>>>> the doc says i may do (c/p): $ juju deploy mysql --bind db-space >>>>>>>> >>>>>>>> and so bind a maas space for all the application. Unfortunately it >>>>>>>> seems not working (i get the "empty names" error). >>>>>>>> >>>>>>>> Patrizio >>>>>>>> >>>>>>>> 2017-03-08 20:40 GMT+01:00 John Meinel <j...@arbash-meinel.com>: >>>>>>>> >>>>>>>> So without bindings, I would expect the behavior, the question is >>>>>>>> why you would be seeing: >>>>>>>> "cannot run instances: cannot run instance: interface bindings >>>>>>>> cannot have empty names" >>>>>>>> >>>>>>>> Can you open a bug on https://bugs.launchpad.net/juju/+filebug and >>>>>>>> include some more information like the logs from the controller >>>>>>>> machine? >>>>>>>> >>>>>>>> I'm not quite sure I understand what you mean by "my binding should >>>>>>>> be global for a local bundle charm". >>>>>>>> >>>>>>>> John >>>>>>>> =:-> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Mar 8, 2017 at 9:36 AM, Patrizio Bassi < >>>>>>>> patrizio.ba...@gmail.com> wrote: >>>>>>>> >>>>>>>> i just upgraded to 2.1.1-xenial-amd64, same behaviour unfortunately. >>>>>>>> >>>>>>>> As i'm going to deploy openstack services (now i'm using ceph-osd >>>>>>>> just to test, than my binding should be global for a local bundle >>>>>>>> charm) i >>>>>>>> would like to say: all juju endpoint (bare metal/lxd containers) just >>>>>>>> get a >>>>>>>> 10.xxx address, not 192.xxx. >>>>>>>> >>>>>>>> Patrizio >>>>>>>> >>>>>>>> >>>>>>>> 2017-03-08 16:27 GMT+01:00 John Meinel <j...@arbash-meinel.com>: >>>>>>>> >>>>>>>> Is it possible for you to test with Juju 2.1? I haven't seen that >>>>>>>> particular bug with binding, but I have done a lot more testing with >>>>>>>> 2.1. I >>>>>>>> didn't think we changed the particular "empty space" differences. >>>>>>>> >>>>>>>> The other possibility is to try and explicitly list the endpoints: >>>>>>>> >>>>>>>> juju deploy ceph-osd --bind "public=XXX cluster=YYY" >>>>>>>> >>>>>>>> I would have thought you would want something more like: >>>>>>>> >>>>>>>> juju deploy ceph-osd --bind "management public=PUBLIC" >>>>>>>> >>>>>>>> ... > > [Message clipped]
-- Juju mailing list Juju@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/juju