How to install/configure JBoss on Linux/Unix

installationjboss

I'm currently working on how install and configure multiple (30+) JBoss EAP 5 configurations (both standalone and clusters) for development, test and production at a client's site (running SuSE).

I'm not to fancy about the jboss way of storing application/configuration together with system files, so I have tried to split things up (ie moving server config out of the jboss installation directory). I also would like minimize the amount of configuration needed when upgrading/patching jboss – but I'm not done thinking about that…

It would be great to hear how you've done and what you think about my approach.

This is how my installations look like (for the moment):

Standard JBoss EAP install (minus server configs):

/opt/jboss/jboss-eap-5.0/jboss-as
/opt/jboss/jboss-eap-5.0/jboss-as/bin/
/opt/jboss/jboss-eap-5.0/jboss-as/lib/
/opt/jboss/jboss-eap-5.0/jboss-as/server/ [server configs removed to avoid starting them by mistake]
/opt/jboss/jboss-eap-5.0/jboss-as/.../

Application (some jboss folders has been omitted – you'll get the point anyway):

/app/<project>/                [$app.dir - application specific base folder]
/app/<project>/jboss/          [$jboss.home]
/app/<project>/jboss/bin/ -> /opt/jboss/jboss-eap-5.0/jboss-as/bin
/app/<project>/jboss/lib/ -> /opt/jboss/jboss-eap-5.0/jboss-as/lib
/app/<project>/jboss/server/<cfg>/      [project specific config based on 'production']
/app/<project>/jboss/server/<cfg>/log/ -> /log/<project>/<cfg>
/app/<project>/jboss/server/<cfg>/...
/app/<project>/jboss/.../ -> /opt/jboss/jboss-eap-5.0/jboss-as/.../
/app/<project>/bin/             [application specific scripts for start/stop etc - wraps jboss supplied scripts]
/app/<project>/deploy/          [application deploy folder]
/app/<project>/etc/             [application specific config]

Questions:

  • How do you install JBoss (on linux/unix systems)?
  • Where do you put JBoss and what modifications do you do?
  • Where do you put your applications and application specific files?
  • Do you share JBoss instances between applications or run one instance/cluster per application?
  • How do you manage configuration changes (i.e. your modifications of jboss standard config)?

Best Answer

How do you install JBoss (on linux/unix systems)?

sadly it's just a tar ball atm. planning to RPM it one day

Where do you put JBoss and what modifications do you do?

/usr/local/ no changes really, apart from that log dir is linked to /var/log

Where do you put your applications and application specific files?

jboss/server/application/deploy/app name

Do you share JBoss instances between applications or run one instance/cluster per application?

normally it's 1 app per jboss instance.

How do you manage configuration changes (i.e. your modifications of jboss standard config)?

puppet