2

I've seen other posts (e.g. this link), but I'm still struggling to install juju on my openstack cluster.

I have swift working, but juju doesn't seem to want to bootstrap. I created the bucket (I tried without the bucket existing and had the same problem):

zestrada@cloud1:~$ swift list
juju-44c885823005ec6033e09c81f99980a6

zestrada@cloud1:~$ juju bootstrap -e openstack -v
2013/04/24 01:46:36 INFO environs/openstack: opening environment "openstack"
2013/04/24 01:46:36 INFO environs/openstack: bootstrapping environment "openstack"
2013/04/24 01:46:46 INFO environs: reading tools with major version 1
2013/04/24 01:46:46 INFO environs: falling back to public bucket
2013/04/24 01:46:46 ERROR command failed: no tools available
error: no tools available

I've tried with and without the -e openstack switch, yielding identical results. Trying with juju-origin: ppa resulted in ERROR command failed: juju-origin: expected nothing, got "ppa"

I also tried manually specifying the auth-url - but again, no change.

Here are the relevant parts of my environments.yaml:

zestrada@cloud1:~$ grep -A25 openstack: .juju/environments.yaml  | grep -vP "\s+#"
  openstack:
    type: openstack
    admin-secret: SECRET
    control-bucket: juju-44c885823005ec6033e09c81f99980a6
    default-image-id: "119295c7-2afc-4eda-bd64-2f8bef894b0d"
    default-instance-type: "1.small"
    auth-mode: userpass

My environment variables are correct since I can access all installed services (nova, swift, cinder, glance, keystone) with no trouble.

zje
  • 221

2 Answers2

1

See my answer here. How can I copy Juju tools for use in my deployment?

nutshell use $ juju sync-tools to copy from a globally available release to your private cloud.

Kapil
  • 41
  • 1
  • I see, but is seems like this requires a bootstrap: I get error: environment has no access-key or secret-key Or is there something missing in my environments.yaml? Thanks! – zje Apr 29 '13 at 02:00
  • I am getting ERROR gomaasapi: got error back from server: 500 INTERNAL SERVER ERROR when I try and run juju sync-tools – Cleanshooter Jan 17 '14 at 19:11
1

If your juju version is 1.10.0 then I think you just ran in to what I did; which in turn I believe is explained by the following: https://bugs.launchpad.net/juju-core/+bug/1172973

Basically, when juju attempts to access the public bucket (where the charms are downloaded for local storage) it uses credentials stored within code. These hard-coded credentials do not include an access-key or secret-key. But before a connection is made, there is an assertion which requires these credentials - thus the sync-tools attempt is failing (and I'm guessing this is what is causing the ERROR after it falls back to the public bucket on bootstrap).

Brendan McGrath
  • 374
  • 2
  • 4
  • Hmmm this seems plausible, how can I get the credentials? I'm getting this: error: The AWS Access Key Id you provided does not exist in our records. – zje May 07 '13 at 22:05
  • 1
    I took a guess and used the credentials from my Amazon Web Services account (this is where the public bucket is hosted). However, I should warn that I haven't found any official documentation that stated this is required/recommended. If you want to try this you can head over to http://aws.amazon.com and sign-up (it won't cost you anything but time). Then go to My Account / Console -> Security Credentials. Under the Access Keys tab is your Access Key ID and click show to see your Secret Access Key. Though, I had more success when I built juju-core myself: https://github.com/prabhakhar/juju-core – Brendan McGrath May 10 '13 at 08:28
  • Thanks so much! I'm against some tight deadlines on another project right now, but it definitely sounds like it's worth a shot - so I'll give it a go next week! – zje May 10 '13 at 22:25