Eucalyptus sudo euca_conf --initialize error? Fixed! You can put it on the boaaaaarrrrdddd! Yes! Part 2 of 2
Continuing from the previous article - once the 'bc' error is fixed - when you run sudo /usr/sbin/euca_conf --initialize --debug
now here is your error:
Notice it says:
Status=1
Output:
[error:0631] Cannot find Eucalyptus bootstrapper: com/eucalyptus/bootstrap/SystemBootstrapper.
....
[error:0557] Service exit with a return of 1.
initialize command failed</blockquote>So what can this be? First thing would be to check the
/var/log/eucalyptus/cloud-output.log
, but since initializing failed that file doesn't even get created... hmmm....Ok, how about a
sudo find / -name SystemBootstrapper.java
? Ok great we get a result:/home/ubuntu/eucalyptus/clc/modules/msgs/src/main/java/com/eucalyptus/bootstrap/SystemBootstrapper.java
So it is on the system as a java class (Note it is not this - https://pypi.python.org/pypi/bootstrapper/0.1 ) Why can't the initialize script find it?Well after a bit of bravery on my part and the gracious help of the Eucalyptus IRC channel the answer was figured out. See transcript below -- eucalyptus.2013-09-05.log Here are the highlights:
2013-09-05T03:20:44
you might want to set the jdk in CLOUD_OPTS in eucalyptus.conf in /etc/eucalyptus/
2013-09-05T03:20:50to point to jdk 1.7</blockquote></p> The issue is this: since eucalyptus requires ANT 1.8.3 (on Ubuntu 12.04.3) ANT has a Java 6 dependency. BUT Eucalyptus requires Java 7 for compilation. What happened is that the Java 6 became the default java.
java --version
rendered this:
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.6) (6b27-1.12.6-1ubuntu0.12.04.2)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)And there in lies the problem - when you edit the
/etc/eucalyptus/eucalyptus.conf
file you find an option at the top that says:#CLOUD_OPTS="--java-home=/usr/lib/jvm/default-java --db-home=/usr/lib/postgresql/9.1"
And there is the problem. The system thinks that Java 6 is the default-java so the initialize script is trying to run thecom/eucalyptus/bootstrap/SystemBootstrapper
class but it needs Java 7 to compile properly.Change the value of the
CLOUD_OPTS
to be the default value of where Java 7 is installed. That would be/usr/lib/jvm/java-7-openjdk-amd64
if you are following Alin Tomescu's blog.And there you go. And now you are ready... Thanks goes to jeevan_ullas at http://webchat.freenode.net/?channels=eucalyptus and of course Alin Tomescu's blog