How to install multiple instances on one machine?

I think I don’t want to wait any longer for Openfire to support multiple domains in a single instance (which may never be available if it’s such big work), so I’m just trying to do that with multiple instances. I’m going to move the domain I want to use for this on a separate IP address so I can stay with standard ports.

What do I need to get a second instance of Openfire up and running on the same machine?

Right now, a default installation is running on the server, as a non-privileged user with access to the main SSL certificate, listening on all interfaces I assume, with its own MySQL database connection. I wasn’t able to find a PID lockfile path anywhere in the start script.

How much memory does one instance require? I was only able to find “280 MB virtual memory” for the process, but I somehow cannot believe that this is true. Getting the memory a process uses seems to be impossible on Linux as well as Windows… Does another instance require less memory, i.e. can anything be shared?

(BTW, I’m continuing with my second account here because the first one is broken (cannot login with correct password, it says “Ask an admin”) and there is no Administrator contact information anywhere on this site. So the other account cannot be fixed I guess.)

memory is adjusted by the start command unsed to run openfire in linux. there are many instances of this docummented in the forums. Widows uses a vmoptions file to make changes.

each instance would use the same amount of memory.

Where and how can I specify how much memory Openfire shall use? I couldn’t find any clue in the /usr/local/openfire/bin/openfire script.

Anyway, why am I supposed to be able to tell how much memory Openfire shall require? Will it run well if I express my wish that it need no more than 10 MB of my precious memory? I mean, a programme will always need as much memory as it needs. I (the operator) cannot tell how much that’s got to be.

Still, what do I need to do to get multiple Openfire instances working on one machine? Will it take several user accounts, one for each, or can it even run from the same binary installation (e.g. /usr/local/openfire)? What about the configuration file that determines the database connection. I assume that every Openfire instance needs its very own database. Then each instance needs to be bound to a single network interface. I’ve seen a related entry in the XML configuration file, but it’s empty and commented out. What should I write into it, where is that documented? I cannot set this from the web UI because that obviously cannot even start if another instance is listening on that port on 0.0.0.0.

About you forum account you can ask in Jive Lounge forum section or PM Benjamin Sherman.

I’m not sure is it possible to run two instances on one server. But it is possible to make Openfire liston on a specific interface. You have already find that in the /conf/openfire.xml. Uncomment this section and put the IP of network interface you need. This is not documented anywhere as fas as i know.

Speaking about memory management, operator should monintor his server and then decide whether his server needs more memory or not. Openfire uses Java, that is JVM, and JVM won’t take more memory if you won’t specify this. There are many docs about memory management, i have found this http://www.igniterealtime.org/community/docs/DOC-1033. Probably you can find something useful there.

  1. Extract openfire with the name in **/opt/openfire_2 **

  2. Go to /opt/openfire_2/bin/ and change the name of the openfire file to openfire_2

  3. Go to /opt/openfire_2/conf/openfire.xml and change the console ports from 9090 and 9091 to 9098 and 9099

  4. Create shortcut ** sudo ln -s /opt/openfire_2/bin/openfire_2 /etc/init.d/ **

  5. Run sudo service openfire_2 start

  6. Open the browser localhost:9098 and start setting up as you want with different domain.

Do not forget to change the xmpp ports to something else than 5222.