Please note that this email is about a feature that needs to be significantly finished by Friday, so if you think you might want to comment, please do so ASAP.
There is currently a requirement <https://docs.google.com/a/canonical.com/document/d/1YMn6WECWq3pPO3UKc5TvEZXvrGKRrdoNuWnROvMhnwM/edit> to let ensure-availability create state servers in containers on existing machines in a juju environment. The way this would work is just like the standard placement directives, i.e. you'd use something like lxc:1 to put a state server in a new container on machine 1. There are a couple changes I'd like to propose to the requirements listed (I'd add them in the doc itself, but it's read-only for me.... Ian or whoever wrote it, could you make it writeable or at least comment-able?) Ensure-availability may create multiple machines, so we need to support multiple placement directives. Currently, the requirements doc says that if you have fewer placements than machines that need to be created, any remaining machines will be created using the default policy of grabbing a new machine from the provider. However, in talking with John, we don't think this is good behavior. We would prefer that the placement be explicit, so that if you need 4 new machines, you have to explicitly say where to place all of them. This way, if you make a mistake and don't specify enough placements, we can give you an error. We think this is preferable, because where your state machines live is quite important, and very difficult to change, so helping a user avoid mistakes is quite valuable. Example: Bill has one state machine, and wants to go to HA with 3 machines. He runs the following command: $ juju ensure-availability --to lxc:1 > Error: Two state servers need to be added, but only one placement > specified. To support this, we need a way to say "use the default placement policy". For this, we propose the keyword "default". Thus, to fix the above example, Bill would type this: $ juju ensure-availability --to lxc:1,default > <success output here> Note that this change in no way fixes all of HA's UX problems, and that it actually makes some of the problems a lot more obvious (such as the fact that the number of placements you need can be different even for the same command, depending on the state of the environment). This will be fixed when we revamp the CLI, but for now we'll have to live with it. -Nate
-- Juju-dev mailing list [email protected] Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/juju-dev
