Just make sure your two different configs bind to different port addresses and you should be ok (webservice defaults to 8083, naming defaults to 1099, RMI invoker defaults to 4444). These can all be configured in conf/jboss-service.xml file.
The additional services in deploy try to bind to more socket ports. If you're deploying JBossWeb (jetty) it by default tries to bind to ports 8080 and 8009. You need to change these for the second server config (in deploy/jbossweb.sar/META-INF/jboss-service.xml). Tomcat has its own config as well.
If you're deploying JMS it tries to bind its invocation layers to ports 8090 and 8091 by default. A second instance of JMS needs to use different ports. This is in jbossmq-service.xml.
Finally, if you want to deploy two instances of hypersonic DB you need to change the default port 1476 in the hsqldb-service.xml for the second instance.
with 3.0.5+ there's a binding service which should allow you to change all the ports in a single location but I haven't used it.