Corporate Home Open Source Home
Syndicate content
Eucalyptus
16 replies [Last post]
davebamford
Offline
Joined: 03/12/2010

Hi

I am trying to install eucalyptus on Debian Squeeze, and I did have it running, but I did something
which broke it and I could not get it to start again after a reboot.

Eventually I have wiped everything, and as this is a new box I reinstalled squeeze from a netinstall
CD re-formatting all the drives.

Eucalyptus still will not start and there is nothing in the logs.
Trying to start the service from the command line gives this.

/var/lib/eucalyptus# /usr/sbin/eucalyptus-cloud
[error:0185] User 'eucalyptus' validated
[error:0185] User 'eucalyptus' validated
[error:0215]
java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.(I)V
at org.codehaus.groovy.runtime.callsite.CallSiteGenerator.compileStaticMethod(CallSiteGenerator.java:231)
at org.codehaus.groovy.reflection.CachedMethod.createStaticMetaMethodSite(CachedMethod.java:268)
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.createStaticMetaMethodSite(StaticMetaMethodSite.java:111)
at groovy.lang.MetaClassImpl.createStaticSite(MetaClassImpl.java:2998)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallStaticSite(CallSiteArray.java:59)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(CallSiteArray.java:144)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
at com.eucalyptus.util.LogUtil.(LogUtil.groovy:5)
at com.eucalyptus.bootstrap.SystemBootstrapper.init(SystemBootstrapper.java:128)
[error:0390] Service exit with a return value of 1

The only thing I did before the install is to install KVM as follows
aptitude install qemu-kvm virt-manager
then
edit /etc/apt/sources.list

add

deb http://eucalyptussoftware.com/downloads/repo/eucalyptus/1.6.2/debian/ squeeze main

and
aptitude install eucalyptus-common eucalyptus-cloud eucalyptus-walrus eucalyptus-sc eucalyptus-cc

please help

davebamford
Offline
Joined: 03/12/2010
additional info

java version is
java version "1.6.0_17"
OpenJDK Runtime Environment (IcedTea6 1.7) (6b17-1.7-1)
OpenJDK 64-Bit Server VM (build 16.0-b13, mixed mode)

graziano
Offline
Joined: 01/14/2010
Hello, have you followed our

Hello,

have you followed our instruction about debian? Also would you mind to tell how do you typically start the Eucalyptus?
Are you using the init.d scripts?

cheers
graziano

davebamford
Offline
Joined: 03/12/2010
Followed instructions

Hi

I am pretty sure I followed the instructions, its installed from the debian repositories, and I got it working
once.
Its possible there is a hardware fault with the machine, so I will try a different one, and I am going to install
Lenny instead of Sqeeze.

Yes I used the init.d scripts, but you can't see the error messages unless you try to start the services from
the command line. Perhaps the scripts need to be modified to give a bit more info.

thanks
Dave

vagoskar
Offline
Joined: 03/20/2010
Same problems

Hi,

I am experiencing the same problems, starting the eucalyotus-cloud service from the init scripts is just not working. Trying from command line has the following effect:
root@euca:~# eucalyptus-cloud
[error:0185] User 'eucalyptus' validated
[error:0215]
java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.(I)V
at org.codehaus.groovy.runtime.callsite.CallSiteGenerator.compileStaticMethod(CallSiteGenerator.java:231)
at org.codehaus.groovy.reflection.CachedMethod.createStaticMetaMethodSite(CachedMethod.java:268)
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.createStaticMetaMethodSite(StaticMetaMethodSite.java:111)
at groovy.lang.MetaClassImpl.createStaticSite(MetaClassImpl.java:2998)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallStaticSite(CallSiteArray.java:59)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(CallSiteArray.java:144)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
at com.eucalyptus.util.LogUtil.(LogUtil.groovy:5)
at com.eucalyptus.bootstrap.SystemBootstrapper.init(SystemBootstrapper.java:128)
[error:0390] Service exit with a return value of 1

The cloud-[debug,output,error] logs are not helpful at all, as they all basically have the same line:
root@euca:~# tail -f /var/log/eucalyptus/cloud-debug.log
20:33:30 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.
20:33:35 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.
14:41:15 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.
14:41:20 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.
14:41:21 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.
14:41:25 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.
14:41:28 INFO [SystemBootstrapper:main] Creating Bootstrapper instance.

Also, there are no log files for the eucalyptus-cc service (is that normal?) which appears to be running smoothly

The problem occurs on a fresh squeeze amd64 installation, with packages from the 1.6.2 branch, specifically the eucalyptus-cloud 1.6.2~bzr1199~1.6.2-0euca1_amd64.deb. Anyone else has run into this? Is there any trick to get it working? Since this problem occurred, I am seriously considering downgrading the whole thing to 1.6.1 which ran perfect on squeeze.

Thanks

davebamford
Offline
Joined: 03/12/2010
So its not just me!

I thought I was doing something wrong, but it just won't work on Squeeze AMD64.
Tried 2 different machines. Not tried 1.6.1.

Its strange it worked once, so I can only assume something in the Squeeze repositories has changed
which breaks it.

Dave

graziano
Offline
Joined: 01/14/2010
Hello, there may be some

Hello,

there may be some conflict with groovy pacakges installed: we suspect there is a conflict currently in squeeze. Can you check if you have a file /usr/share/java/groovy-all.jar? If so would you mind to try to copy that file over to /usr/share/eucalyptus/groovy.jar?

Please make copies of files and let us know if this works.

cheers
graziano

davebamford
Offline
Joined: 03/12/2010
Groovy conflict

Yes doing what you said has fixed it.
Thanks

What files do you want copied?
The usr/share/java folder
has
groovy.jar
groovy-all.jar
groovy-all-1.7.0.jar
groovy-1.7.0.jar

Dave

vagoskar
Offline
Joined: 03/20/2010
It works! (sort of...)

Hi again,

eucalyptus-cloud does kind of get off the ground, but the groovy problem persists (from cloud-error.log):
11:30:51 [LocalDatabaseBootstrapper:main] FATAL com.eucalyptus.util.FailScriptFailException: Executing the requested script failed: before_database.groovy
com.eucalyptus.util.FailScriptFailException: Executing the requested script failed: before_database.groovy
at com.eucalyptus.util.GroovyUtil.evaluateScript(GroovyUtil.java:56)
at com.eucalyptus.bootstrap.LocalDatabaseBootstrapper.createDatabase(LocalDatabaseBootstrapper.java:161)
at com.eucalyptus.bootstrap.LocalDatabaseBootstrapper.load(LocalDatabaseBootstrapper.java:127)
at com.eucalyptus.bootstrap.SystemBootstrapper.load(SystemBootstrapper.java:175)
Caused by: java.io.FileNotFoundException: /etc/eucalyptus/cloud.d/scripts/before_database.groovy (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.(FileInputStream.java:137)
at java.io.FileInputStream.(FileInputStream.java:96)
at java.io.FileReader.(FileReader.java:58)
at com.eucalyptus.util.GroovyUtil.evaluateScript(GroovyUtil.java:52)
... 3 more
11:30:51 [LocalDatabaseBootstrapper:main] FATAL Failed to initialize the database layer.

Is the groovy.jar in debian up to date? Which version is eucalyptus compiled against? Is the script mentioned (/etc/eucalyptus/cloud.d/scripts/before_database.groovy) supposed to be there? I'll try to play with it, but your input could be the one to solve this problem.

Thanks for the speedy reply!

vagoskar
Offline
Joined: 03/20/2010
My bad

Ok, found the problem, the eucalyptus-java-common package was botched due to successive reinstalls, solved by:
dpkg -i --force-all /var/cache/apt/archives/eucalyptus-java-common_1.6.2~bzr1199~1.6.2-0euca1_amd64.deb

Everything is running smoothly so far.

davebamford
Offline
Joined: 03/12/2010
Problem found

Thanks for looking in to this. I am pushed for time right now but I will test it
out later. I was seeing the problem from new clean installs from the repository, not
from reinstalls

Dave

Pat
Offline
Joined: 03/22/2010
Also the same issue, no fix so far

Debian Squeeze fully updated (as of 2010-03-26) running on amd64.

# eucalyptus-cloud
Will output in the logs:
java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.(I)V
at org.codehaus.groovy.runtime.callsite.CallSiteGenerator.compileStaticMethod(CallSiteGenerator.java:231)
at org.codehaus.groovy.reflection.CachedMethod.createStaticMetaMethodSite(CachedMethod.java:268)
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.createStaticMetaMethodSite(StaticMetaMethodSite.java:111)
at groovy.lang.MetaClassImpl.createStaticSite(MetaClassImpl.java:2998)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallStaticSite(CallSiteArray.java:59)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.createCallSite(CallSiteArray.java:144)
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:40)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
at com.eucalyptus.util.LogUtil.(LogUtil.groovy:5)
at com.eucalyptus.bootstrap.SystemBootstrapper.init(SystemBootstrapper.java:128)
[error:0390] Service exit with a return value of 1

Tried the fix of replacing ' /usr/share/eucalyptus/groovy.jar' by '/usr/share/java/groovy-all.jar': no success.

Anybody as a clue?

Pat

graziano
Offline
Joined: 01/14/2010
Hello Pat, it looks like the

Hello Pat,

it looks like the groovy jar file should be enough to solve this problem. Can you please reinstall the original groovy package and check that the jar file you copied is the good one?

cheers
graziano

knca
Offline
Joined: 06/03/2010
Same Issue

I'm running into this same issue.

I've read up on the posts about it, and I don't think I can copy the debian groovy.jar over the eucalyptus groovy.jar because it's already a symlink to it.

I would really like to know how to fix this.

To reproduce:
- install debian squeeze, (I used 32bit)
- be sure to install nothing except what is required (for me this was only sshd)
- follow installation instructions from eucalyptus wiki for debian squeeze (only add the 1.6.2 repos to apt.conf)

As the instructions do *not* tell you to check status of the nodes, this error becomes very unexpected and buried/hidden. It isn't until you try to use the utilities (and get misleading errors) that this would be discovered, and at that point one would think everything has gone fine so far as no errors or status has failed.

I didn't realize it hadn't fully started as nothing about this appears in /var/log/eucalyptus, but I did find a comment in the init.d script mentioning that the logs may now hidden from some people and reverting this brought the error to light.

Should I be steering clear of 1.6.2 until it is production quality?

knca
Offline
Joined: 06/03/2010
Another question.

Additionally, do I need to downgrade from squeeze due to possible incompatibities in packages, ie: if I can't get groovy without asm3 and this breaks eucalyptus, would I have to downgrade to lenny or etch to get the old groovy in there properly and without much fiddling?

knca
Offline
Joined: 06/03/2010
Alright, as I don't give up

Alright, as I don't give up easily and am impatient I figured this out on my own.

This is what needs to happen to fix this (you may have to re-do this whenever upgrading eucalyptus packages):

This is at least a change that is within eucalyptus, and doesn't require much deviation from a standard install:

root@YOURBOX:/usr/share/eucalyptus# mv groovy.jar groovy.jar.old
root@YOURBOX:/usr/share/eucalyptus# ln -s ../java/groovy-all.jar groovy.jar

The logic here, and reasoning, is that the groovy-all.jar is made for embedding (and has the proper dependencies packed into it) and the groovy.jar is for people who are sure they won't have dependency issues.

This has something to do with the spring framework using and including the old asm2 lib, I believe.

Enjoy!

graziano
Offline
Joined: 01/14/2010
Hello, thanks for sharing the

Hello,

thanks for sharing the solution!

cheers
graziano