brooklyncentral / clocker

Apache Brooklyn cloud native infrastructure blueprints
Apache License 2.0
428 stars 66 forks source link

nodejs example app failed: "Fatal: no entropy gathering module detected" #267

Closed aledsage closed 8 years ago

aledsage commented 8 years ago

I deployed a mesos cluster to BlueBox (over the VPN, no public IPs), using the bom file at https://github.com/cloudsoft/amp-mesos/blob/master/mesos.bom

I then deployed the standard demo app nodejs-demo-application:1.0.0.

It failed at the launch command for the nodejs entity, with an error that brooklyn-managed-processes/apps/ddW1Xtx6/entities/NodeJsWebAppService_geYBqCUK/nodejs-todo: No such file or directory. (The redis entity deployed fine).

Looking at the nodejs customize task, this gave a result of 128. Its stderr showed Fatal: no entropy gathering module detected.

As an aside, I was surprised that the NodeJsWebAppService entity didn't show the customize task as having failed. Looking at this more, it is because the default behaviour of AbstractSoftwareProcessSshDriver is that only the install and launch phases will automatically fail on non-zero result code. Not sure why that is?! But that's something to report/discuss in Brooklyn, rather than Clocker.

grkvlt commented 8 years ago

Gah! :crying_cat_face: This has happened before, although only on some clouds, with some images.

It's caused by Git failing, on the git clone command during install or customize, which goes unnoticed for some reason? Annoying because it works if you SSH in, since that generates enough entropy. We do the /dev/random to /dev/urandom symbolic link, so it isn't that. I even tried installing havegd the entropy gathering daemon, but it didn't seem to fix things.

grkvlt commented 8 years ago

May be fixed now that changes for #273 are added, will test

grkvlt commented 8 years ago

Node example working