4

I'm currently following Juju 2.0 Bug# 1576003 which will hopefully make this problem obsolete. Until then...

JuJu seems to cut-out before landscape deployment completes in a MaaS environment. In previous version I could alter "bootstrap-timeout" in the environments.yaml. However, in JuJu 2 I can't figure out how to set this while using Autopilot installer via: conjure-up openstack

Background for Posterity (and anyone else struggling along)

As per the current (May-2016) AutoPilot Instructions (www.ubuntu.com/download/cloud/install-openstack-with-autopilot).

  • Ubuntu Server 16.04 LTS (xenial)
  • MaaS: 2.0.0 (beta3+bzr4941)
  • JuJu: 2.0-beta6-xenial-amd64

I understand JuJu 2 and Maas 2 may not play nicely as I am currently tracking JuJu 2 and MaaS 2 Integration [This should now work as of Juju 2.0-beta7]

I've had to alter Step 6 accordingly(Is Autopilot Openstack 16.04 available?), replacing sudo openstack-install with conjure-up openstack

I've had to alter /usr/share/openstack/config.json replacing "bootstrapSeries": "trusty" with "bootstrapSeries": "xenial" on "key": "landscape-dense-maas" to get JuJu to deploy on xenialas Step 3 of the instructions has us import the xenialimage and not the trustyimage that config.json defaults with.

When conjure-up openstack errors out (e.g. by entering the full MAAS UI url in the 'maas-server' field instead of just the IP Address, or an incorrect API Key in the 'mass-oauth' field), I've had to sudo rm ~/.local/share/juju/credentials.yaml so as to avoid the ERROR loading credentials: credentials.maas.<random>.maas-oauth: expected string, got nothing on subsequent conjure-ups. Seeing as how I can't seem to find a juju kill-credentials type of command in JuJu 2.

At this point I am able to get JuJu 2 and MaaS 2 to begin landscape deployment with Ubuntu 16.04, but it appears timeout prevents this from finishing. I believe I can circumvent this with the JuJu CLI, but I've progressed this far with Autopilot...

Follow up

Removing Credentials

To remove credentials:

juju remove-credential maas <random>

However, this is broken if the credential is invalid so I've still had to use:

sudo rm ~/.local/share/juju/credentials.yaml

Adjusting bootstrap-timeout

I believe the following is a bit of a hack:

I was able to update the bootstrap-timeout by modifying line 121 of

/usr/share/conjure-up/conjure/juju.py

From:

"--config image-stream=daily ".format(

To:

"--config bootstrap-timeout=3000 --config image-stream=daily ".format(

Instead I should probably be editing /usr/share/openstack/bundles/landscape-dense-maas/pre.sh with Juju config commands.

More info on pre.sh can be found in conjure-up git wiki: (www.github.com/ubuntu/conjure-up/wiki/Customizing-bundle-deployments)

Juju 2 commands: (www.jujucharms.com/docs/devel/commands)

Sorry, not enough rep to actually link

While this does technically answer my own question, I was not able to get AutoPilot to work even with the increased timeout. I suppose I will be waiting for all the individual updates to talk appropriately for now.

Bug tracker update: (Juju 2.0 should support MAAS 2.0) Juju 2.0-beta7 released in ppa:juju/devel

Final comments

Editing /usr/share/conjure-up/conjure/juju.py as mentioned above does alter the time-out. However, the appropriate fix is to modify the conjure-up config files. Unfortunately, until documentation catches up with development this method is more troublesome than its worth to me. I have ultimately abandoned AutoPilot with Xenial/Mikata, as Openstack itself has current issues in installation without the added layer of AuotPilot/Landscape (see: https://bugs.launchpad.net/openstack-manuals/+bug/1575688).

If anyone following along has the correct format for the conjure-up config files for passing --config bootstrap-timeout= throw it on here as an answer so we can appease the mods. Until that time, consider my investment here abandoned. Good luck.

closed as off-topic by Jorge Castro, qbi, MadMike, Mahesh, Wild Man Jun 14 '16 at 13:52

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "This describes a problem that can't be reproduced that seemingly went away on its own or was only relevant to a very specific period of time. It's off-topic as it's unlikely to help future readers." – Jorge Castro, qbi, MadMike, Mahesh, Wild Man
If this question can be reworded to fit the rules in the help center, please edit the question.

  • Can you post your solution as an answer so we can mark this done? Did this end up working for you or not? It's unclear to me if beta7 sorted this for you, thanks. – Jorge Castro Jun 8 '16 at 13:40
  • This method does indeed modify the boot-strap timeout, but this solution (in my opinion) is not an answer because I had to alter the python files instead of applying appropriate configs to conjure-up. It wasn't worth investigating what the appropriate configs would be at the time as it was clear that the JuJu bootstrap would still fail in this attempt. Personally, I would just mark this thread abandoned, as my method will more than likely result in confusion for most users trying to follow along with the AutoPilot instructions, if and when documentation catches up with development. – UbuntuUser Jun 10 '16 at 2:48
  • @UbuntuUser will you file a bug on github.com/ubuntu/conjure-up/issues to get support for passing the bootstrap timeout via conjure-up to juju? – battlemidget Jun 13 '16 at 20:06
  • @UbuntuUser this is addressed in github.com/ubuntu/conjure-up/issues/171 for the upcoming prerelease July 5th – battlemidget Jun 29 '16 at 5:17