3

I have the below setup in my lab vSphere to test Openstack deployment with juju.

  1. MAAS server vm have 2 interfaces [ one have internet access using proxy and another internal 192.168 n/w for dhcp and dns ] ( raring release )
  2. MAAS nodes have one interface in 192.168 n/w. ( quantal release)
  3. Have a Local mirror of quantal for MAAS node to pxe boot.

I am able bootstrap my juju environment and one node under MAAS server got Allocated for that. Because WOL is not available in vSphere vms, I booted that specific VM (node3.juju.local) manually.

After the pxe boot is completed.

My Observations

  • Not able to get the juju status in MAAS server. getting stuck here

    2013-10-22 06:18:27 INFO juju.state open.go:68 opening state; mongo addresses: ["node3.juju.local :37017"]; entity ""

  • So I logged into the node3.juju.local machine.

  • last few lines of /var/log/cloud-init-output.log

    2013-10-21 13:04:56 DEBUG juju.state open.go:88 connection failed, will retry: dial tcp 127.0.0.1:37017: connection refused

    2013-10-21 13:04:57 DEBUG juju.state open.go:88 connection failed, will retry: dial tcp 127.0.0.1:37017: connection refused

    2013-10-21 13:04:57 ERROR juju.agent agent.go:470 failed to initialize state: no reachable servers

    2013-10-21 13:04:57 ERROR juju supercommand.go:282 no reachable servers

    *2013-10-21 13:04:57,960 - util.py[WARNING]: Failed running /var/lib/cloud/instance/scripts/runcmd [1] 2013-10-21 13:04:57,962 - cc_scripts_user.py[WARNING]: Failed to run module scripts-user (scripts in /var/lib/cloud/instance/scripts)*

    2013-10-21 13:04:57,963 - util.py[WARNING]: Running scripts-user () failed

    Cloud-init v. 0.7 finished at Mon, 21 Oct 2013 13:04:57 +0000. Datasource DataSourceMAAS [http://192.168.124.10/MAAS/metadata/]. Up 1532.83 seconds

    Cloud-init v. 0.7 running 'init-local' at Mon, 21 Oct 2013 15:53:08 +0000. Up 3.88 seconds.

  • It is clear MongoDB is not started I checked that by going through runcmd (cloud-init) script and cloud-init-output.log

  • Mongod version installed 2.0.6 and mongod didn't have below options SSL options:

    --sslOnNormalPorts use ssl on configured ports

    --sslPEMKeyFile arg PEM file for ssl

    --sslPEMKeyPassword arg PEM file password

  • which is mentioned in runcmd script ( cloud-init )

    *exec /usr/bin/mongod --auth --dbpath=/var/lib/juju/db --sslOnNormalPorts --sslPEMKeyFile '/var/lib/juju/server.pem' --sslPEMKeyPassword ignored --bind_ip 0.0.0.0 --port 37017 --noprealloc --syslog --smallfiles*


  1. What could be the problem? whether maas node not having internet access is the problem?
  2. My raring juju+LXC setup works fine so I copied the required mongo binaries from that machine to node3.juju.local machine and rebooted the server this time mongod started but the juju status didn't give the below error ( DNS, nslookup all are proper)

    2013-10-22 06:18:27 INFO juju.state open.go:68 opening state; mongo addresses: ["node3.juju.local :37017"]; entity ""

    2013-10-22 06:28:27 ERROR juju supercommand.go:282 Unable to connect to environment "maas".

    Please check your credentials or use 'juju bootstrap' to create a new environment.

    Error details:

    no reachable servers

2 Answers 2

3
+100

I had the same problem in very similar environment (running Juju and MAAS in VSphere). First I also thought that the problem was MongoDB so I updated the version on the bootstrap node. But what solved the problem is having the right DNS settings on the node that you are running the juju-core because it is using FQDNs when connecting to nodes. So, make sure that you can ping the bootstrap node using the FQDN.

0

Like isein said, your issue can be related to the DNS resolution for this specific domain not happenning on your MAAS server.

In order to test this you can put a line in first place inside your /etc/hosts file :

nameserver <IP address you are using for managing DHCP/DNS on MAAS>

I managed to resolve the same issue than yours by this mean. To get this modification permanent, you can add this line in "/etc/resolvconf/resolv.conf.d/head"

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver <IP>

This file will be used at startup by resolvconf to build your /etc/hosts file.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .