On Fri, Jun 13, 2014 at 10:45 PM, Kapil Thangavelu < kapil.thangav...@canonical.com> wrote:
> > > > On Fri, Jun 13, 2014 at 12:23 AM, Andrew Wilkins < > andrew.wilk...@canonical.com> wrote: > >> Hi all, >> >> I'm pleased to say that availability zone support for AWS and OpenStack >> has now landed on trunk, and will be available in 1.19.4. I'll write a blog >> post and maybe even some docs about it, but for now here's a brief >> description how you can use this feature. >> >> FYI: not all OpenStacks are created equal. Yours may not support >> availability zones. HP's revamped HP Cloud offering does offer several >> availability zones in the US West region. >> >> Explicit AZs >> ========= >> >> When bootstrapping or adding a machine, you can specify the availability >> zone explicitly as a placement directive. e.g. >> >> juju bootstrap --to zone=us-east-1b >> juju add-machine zone=us-east-1c >> >> > >> Automatic AZ spread >> ================ >> >> TL;DR: "juju deploy -n 10 <service>" will automatically and uniformly >> distribute the units to instances spread across the AZs within the region. >> Assuming the charm and service being charmed is well written, then you >> should be able to rest assured that IaaS downtime will not affect your >> application. >> >> When adding machines without an AZ explicitly specified, or when adding >> units to a service, the ec2 and openstack providers will now automatically >> spread instances across all available AZs in the region. The spread is >> based on density of instance "distribution groups". >> >> State servers compose a distribution group: when doing "juju >> ensure-availability", state servers will be spread across AZs. Each >> deployed service (e.g. mysql, redis, whatever) composes a separate >> distribution group; the AZ spread of one service does not affect the AZ >> spread of another service. >> >> > > Awesome, that's a pretty nice and simple abstraction. > > Two caveats to be aware of, This potentially can cause an issue with our > ongoing work for vpc support as subnets are bound to azs, but i may have > azs without subnets in them. > Thanks for the heads up. That sounds like we'd want a network constraint that filters the usable AZs. Shouldn't be too difficult. Also there are diminishing returns on azs, ie. most people don't use more > than three for an app, even though they may have up to 5 available to them > in a region. maximal az usage actually increases app likelihood of dealing > with az outage or network partition. As noted privately, some services will > still want explicit placement instead of implicit. > Fair point. We may need to add some kind of constraint to set the maximum spread. This may also be useful as a means of pinning an entire service to an AZ. Something like: juju deploy myservice --to zone=us-east-1b --constraints max-spread=0 (not really sure how to model the spread; % perhaps isn't all that useful, and a number of zones doesn't make much sense for the abstraction)
-- Juju-dev mailing list Juju-dev@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/juju-dev