Hi Kyle, the Java Broker uses a number of different ports, depending on which plugins are enabled. If I remember correctly there are some ports which can be bound to only certain interfaces, but others (HTTP and JMX management) which we cannot so restrict. As well as port conflicts you are going to want to ensure that if you are running multiple broker instances on the same server, each has its own locations for config files, password files, etc.
The Java Broker stores all its configuration in a config file ${qpid.work_dir}/config.json (where ${qpid.work_dir} is the user's home directory by default). The initial broker config is taken from a template inside the broker binaries and ultimately from static defaults (for things like the HTTP management port being 8080). The following sections of the documentation are probably useful here: http://qpid.apache.org/releases/qpid-0.22/java-broker/book/Java-Broker-Getting-Started-CommandLine.html http://qpid.apache.org/releases/qpid-0.22/java-broker/book/Java-Broker-Configuring-And-Managing.html#Java-Broker-Configuring-And-Managing-Configuration-Store Using the above you should be able to see how you can create configurations so that you avoid port number clashes. For binding on the same port, this is possible for the AMQP port, but not for management (JMX or HTTP)... So you'd either need to disable these plugins (and have no easy way to manage your broker) or have different ports for each interface. For the AMQP port you need to set the bindingAddress parameter for the port, e.g.: { "authenticationProvider" : "passwordFile", "bindingAddress" : "192.168.105.83", "id" : "7236a3e5-9e74-440b-888b-2fdfcbe21695", "name" : "AMQP", "port" : 5672 } is how that section looks in my config file right now on one broker I'm running, while the other broker instance had a different bindingAddress. I'm aware of people who are doing similar things for PaaS type infrastructures who basically use a template initial config and then write out different concrete values for the ports/etc for the initial config file to be used for each new instance of a broker that is created. After you'd run your script to genearte the template for the new instance, you'd then start up the broker with the --initial-config-path option to point at your newly generated template. You might also want to consider other aspects you's want in your initial config (such as authentication mechanisms, etc.). I'm not sure whether there's any way we can fix the HTTP or JMX ports in future ... possibly more of a chance with the HTTP management... but I'd need to look into how jetty does its binding. Hope this helps, Rob (As an aside: one enhancement here that would be really useful for these PaaS scenarios (and I know someone raised a JIRA for it previously) is to have some sort of mDNS registration in the broker so that a new instance's ports could be resolved by name rather than having to add a separate mechanism to propogoate the port numbers in use by an instance to clients which wish to connect... however that doesn't exist yet). On 19 December 2013 22:18, Ted Ross <tr...@redhat.com> wrote: > Sorry Kyle, > > Gordon and I are giving you information about the C++ broker, not the Java > broker. I will need to defer to one of the Java broker folks to answer for > that component. > > -Ted > > > On 12/19/2013 04:03 PM, Kyle Crumpton (kcrumpto) wrote: > >> Hi Ted. I am using version 0.22. I actually got qpid from tar: >> qpid-java-broker-0.22.tar.gz >> >> On 12/19/13 3:00 PM, "Ted Ross" <tr...@redhat.com> wrote: >> >> Kyle, >>> >>> That feature was added in release 0.20 >>> (https://issues.apache.org/jira/browse/QPID-3351). You may be using an >>> older version. >>> >>> -Ted >>> >>> On 12/19/2013 03:15 PM, Kyle Crumpton (kcrumpto) wrote: >>> >>>> Hi. I did this and I got the error: Unrecognized option: --interface >>>> >>>> On 12/19/13 12:59 PM, "Gordon Sim" <g...@redhat.com> wrote: >>>> >>>> On 12/19/2013 06:45 PM, Kyle Crumpton (kcrumpto) wrote: >>>>> >>>>>> I am just curious if there is a way to bind qpid to an IP such as >>>>>> 127.1.244.129 >>>>>> >>>>>> The reason I ask is I'm looking to deploy many instances to a PaaS and >>>>>> will need multiple running instances. This is not possible if >>>>>> everything >>>>>> tries to bind to localhost:8080. >>>>>> >>>>>> Does anyone know of a way to configure this? I could not find in the >>>>>> qpid documentation. >>>>>> >>>>> Yes, you can use --interface to restrict the interfaces qpidd will bind >>>>> on. >>>>> >>>>> >>>>> --------------------------------------------------------------------- >>>>> To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org >>>>> For additional commands, e-mail: dev-h...@qpid.apache.org >>>>> >>>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org >>>> For additional commands, e-mail: dev-h...@qpid.apache.org >>>> >>>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org >>> For additional commands, e-mail: dev-h...@qpid.apache.org >>> >>> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org >> For additional commands, e-mail: dev-h...@qpid.apache.org >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org > For additional commands, e-mail: dev-h...@qpid.apache.org > >