Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3
Info

This page applies to Java Broker versions before 0.14. For up to date information, please refer to the Configuring and Managing section in the Java broker book

Broker config.xml

...

Overview

The broker config.xml file which is shipped in the etc directory of any Qpid binary distribution details various options and configuration for the Java Qpid broker implementaitonimplementation.

File Format

This is an overview of the top level of the config file. Description of each section is embedded below. Each section is then described in detail in their own section.

No Format

<broker>
<!-- Various initial global definitions -->
    <connector>
<!-- Various connection information about the type connections the broker should listen for-->
    <management>
<!-- Enablement of management functionality -->
    <advanced>
<!-- Various advanced flags -->
    <security>
<!-- Definition of available security options -->
    <virtualhosts>
<!-- Definition of available virtual hosts -->
    <heartbeat>
<!-- Heartbeat configuration -->
    <queue>
<!-- General queue configuration options-->
    <virtualhosts>
<!-- Configuariation of various virtual hosts. -->
</broker>

Broker

TBC

No Format

<broker>
    <prefix>${QPID_HOME}</prefix>
    <work>${QPID_WORK}</work>
    <conf>${prefix}/etc</conf>

Connector

TBC

No Format

    <connector>
        <!-- Uncomment out this block and edit the keystorePath and keystorePassword
             to enable SSL support
        <ssl>
            <enabled>true</enabled>
            <sslOnly>true</sslOnly>
            <keystorePath>/path/to/keystore.ks</keystorePath>
            <keystorePassword>keystorepass</keystorePassword>
        </ssl>-->
        <qpidnio>true</qpidnio>
        <transport>nio</transport>
        <port>5672</port>
        <sslport>8672</sslport>
        <socketReceiveBuffer>32768</socketReceiveBuffer>
        <socketSendBuffer>32768</socketSendBuffer>
    </connector>

Management

TBC

No Format

    <management>
        <enabled>true</enabled>
    </management>

Advanced

TBC

No Format

    <advanced>
        <filterchain enableExecutorPool="true"/>
        <enablePooledAllocator>false</enablePooledAllocator>
        <enableDirectBuffers>false</enableDirectBuffers>
        <framesize>65535</framesize>
        <compressBufferOnQueue>false</compressBufferOnQueue>
    </advanced>

Security

TBC

No Format

    <security>
        <principal-databases>
            <principal-database>
                <name>passwordfile</name>
                <class>org.apache.qpid.server.security.auth.PasswordFilePrincipalDatabase</class>
                <attributes>
                    <attribute>
                        <name>passwordFile</name>
                        <value>${conf}/passwd</value>
                    </attribute>
                </attributes>
            </principal-database>
        </principal-databases>
        <sasl>
            <mechanisms>
                <mechanism>
                    <initialiser>
                        <class>org.apache.qpid.server.security.auth.CRAMMD5Initialiser</class>
                        <principal-database>passwordfile</principal-database>
                    </initialiser>
                </mechanism>
                <mechanism>
                    <initialiser>
                        <class>org.apache.qpid.server.security.auth.amqplain.AmqPlainInitialiser</class>
                        <principal-database>passwordfile</principal-database>
                    </initialiser>
                </mechanism>
                <mechanism>
                    <initialiser>
                        <class>org.apache.qpid.server.security.auth.plain.PlainInitialiser</class>
                        <principal-database>passwordfile</principal-database>
                    </initialiser>
                </mechanism>
            </mechanisms>
        </sasl>
    </security>

Virtualhosts

No Format

	<virtualhosts>
		<virtualhost>
			<name>localhost</name>
			<localhost>
			    <store>
					<class>org.apache.qpid.server.store.berkeleydb.BDBMessageStore</class>
					<environment-path>${work}/bdb/localhost-store</environment-path>
			    </store>		
			</localhost>
		</virtualhost>
		
		<virtualhost>
			<name>development</name>
			<development>
			    <store>
					<class>org.apache.qpid.server.store.berkeleydb.BDBMessageStore</class>
					<environment-path>${work}/bdb/dev-store</environment-path>					
			    </store>			
			</development>
		</virtualhost>
		
		<virtualhost>
			<name>test</name>
			<test>
			    <store>
					<class>org.apache.qpid.server.store.berkeleydb.BDBMessageStore</class>
					<environment-path>${work}/bdb/test-store</environment-path>
			    </store>			
			</test>
		</virtualhost>
		
	</virtualhosts>

Heartbeat

TBC

No Format

    <heartbeat>
        <delay>0</delay>
        <timeoutFactor>2.0</timeoutFactor>
    </heartbeat>

Queue

TBC

No Format

    <queue>
        <auto_register>true</auto_register>
    </queue>

Virtualhosts

TBC

In tandem with the virtualhosts.xml file, the config.xml file allows you to control much of the deployment detail for your Qpid broker in a flexible fashion.

Note that you can pass the config.xml you wish to use for your broker instance to the broker using the -c command line option. In turn, you can specify the paths for the broker password file and virtualhosts.xml files in your config.xml for simplicity.

For more information about command line configuration options please see Qpid Design - Configuration.

Qpid Version

The config format has changed between versions here you can find the configuration details on a per version basis.

M2 - config.xml
M2.1 - config.xml
0.13 - config.xml

...