blob: 218e39f57806dee4bf004c1ded0cb03cfbd1b4f0 [file] [log] [blame]
<?xml version="1.0"?>
<!DOCTYPE entities [
<!ENTITY % entities SYSTEM "commonEntities.xml">
%entities;
]>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<chapter id="Java-Broker-Installation">
<title>Installation</title>
<section role="h2" id="Java-Broker-Installation-Introduction">
<title>Introduction</title>
<para>This document describes how to install the Java Broker on both Windows and UNIX
platforms.</para>
</section>
<section role="h2" id="Java-Broker-Installation-Prerequistes">
<title>Prerequisites</title>
<section role="h3" id="Java-Broker-Installation-Prerequistes-Java">
<title>Java Platform</title>
<para>
The Java Broker is an 100% Java implementation and as such it can be used on any operating
system supporting Java 1.6 or higher. This includes Linux, Solaris, Mac OS X, and Windows XP/Vista/7/8.</para>
<para>
The broker has been tested with Java implementations from both Oracle and IBM. Whatever
platform you chose, it is recommended that you ensure it is patched with any critical updates made
available from the vendor.
</para>
<para>
Verify that your JVM is installed properly by following <link linkend="Java-Broker-Miscellaneous-JVM-Verification">these instructions.</link>
</para>
</section>
<section role="h3" id="Java-Broker-Installation-Prerequistes-Disk">
<title>Disk</title>
<para>The Java Broker installation requires approximately 20MB of free disk space.</para>
<para>The Java Broker also requires a working directory. The working directory is used for
the message store, that is, the area of the file-system used to record persistent messages whilst they
are passing through the Broker. The working directory is also used for the default location of the log file.
The size of the working directory will depend on the how the Broker is used.</para>
<para>The performance of the file system hosting the work directory is key to the performance of Broker as
a whole. For best performance, choose a device that has low latency and one that is uncontended by other
applications.</para>
<para>Be aware that there are additional considerations if you are considering hosting the working directory on NFS. See
<xref linkend="Java-Broker-Stores"/> for further details.</para>
</section>
<section role="h3" id="Java-Broker-Installation-Prerequistes-Memory">
<title>Memory</title>
<para>Qpid caches messages on the heap for performance reasons, so in general, the Broker will
benefit from as much heap as possible. However, on a 32bit JVM, the maximum addressable memory range
for a process is 4GB, after leaving space for the JVM's own use this will give a maximum heap size
of approximately ~3.7GB.</para>
</section>
<section role="h3" id="Java-Broker-Installation-Prerequistes-OperatingSystemAccount">
<title>Operating System Account</title>
<para>Installation or operation of Qpid does <emphasis>not</emphasis> require a privileged account (i.e. root
on UNIX platforms or Administrator on Windows). However it is suggested that you use an dedicated account
(e.g. qpid) for the installation and operation of the Java Broker.</para>
</section>
</section>
<section role="h2" id="Java-Broker-Installation-Download">
<title>Download</title>
<section role="h3" id="Java-Broker-Installation-Download-Release">
<title>Broker Release</title>
<para>You can download the latest qpid-java-broker-&qpidCurrentRelease;.tar.gz package from the <ulink
url="&qpidDownloadUrl;">Download Page</ulink>.
</para>
<para> It is recommended that you confirm the integrity of the download by verifying the PGP signature
matches that available on the site. Instrutions are given on the download page.
</para>
</section>
<section role="h3" id="Java-Broker-Installation-Download-OptionalDependencies">
<title>Optional Dependencies</title>
<para>The broker has an optional message store implementations backed by Oracle BDB JE. If you wish to use these
stores you will need to provide the optional Oracle BDB JE dependency. For more details, see <xref linkend="Java-Broker-Stores-BDB-Store"></xref>
</para>
</section>
</section>
<section role="h2" id="Java-Broker-Installation-InstallationWindows">
<title>Installation on Windows</title>
<para>
Firstly, verify that your JVM is installed properly by following
<link linkend="Java-Broker-Miscellaneous-JVM-Verification-Windows">these instructions.</link>
</para>
<para>Now chose a directory for Qpid broker installation. This directory will be used for the Qpid JARs and configuration files.
It need not be the same location as the store used for the persistent messages or the log file (you will chose this
location later). For the remainder this example we will assumed that location c:\qpid has been chosen.</para>
<para>Now using WinZip<footnote><para>WinZip is a Registered Trademark of WinZip International LLC</para></footnote> (or similar)
extract the Qpid package qpid-java-broker-&qpidCurrentRelease;.tar.gz into the directory.</para>
<para>The extraction of the Qpid package will have created a directory qpid-broker-&qpidCurrentRelease; within c:\qpid</para>
<screen>Volume in drive C has no label
Directory of c:\qpid\qpid-broker-&qpidCurrentRelease;
07/25/2012 11:22 PM .
09/30/2012 10:51 AM ..
09/30/2012 12:24 AM bin
08/21/2012 11:17 PM etc
07/25/2012 11:22 PM lib
07/20/2012 08:10 PM 65,925 LICENSE
07/20/2012 08:10 PM 3,858 NOTICE
07/20/2012 08:10 PM 1,346 README.txt
3 File(s) 71,129 bytes
5 Dir(s) 743,228,796,928 bytes free</screen>
<section role="h3" id="Java-Broker-Installation-InstallationWindows-SettingQPIDWORK">
<title>Setting the working directory</title>
<para>Qpid requires a work directory. This directory is used for the default location of the Qpid log
file and is used for the storage of persistent messages. The work directory can be set on the
command-line (for the lifetime of the command interpreter), but you will normally want to set
the environment variable permanently via the Advanced System Settings in the Control Panel.</para>
<screen>set QPID_WORK=S:\qpidwork</screen>
<para>If the directory referred to by QPID_WORK does not exist, the Java Broker will attempt to create it
on start-up.</para>
</section>
<section role="h3" id="Java-Broker-Installation-InstallationWindows-OptionalDependencies">
<title>Optional Dependencies</title>
<para>The broker has an optional message store implementations backed by Oracle BDB JE. If you wish to use these
stores you will need to provide the optional Oracle BDB JE dependency. For more details, see <xref linkend="Java-Broker-Stores-BDB-Store"></xref>
</para>
</section>
</section>
<section role="h2" id="Java-Broker-Installation-InstallationUnix">
<title>Installation on UNIX platforms</title>
<para>
Firstly, verify that your JVM is installed properly by following
<link linkend="Java-Broker-Miscellaneous-JVM-Verification-Unix">these instructions.</link>
</para>
<para>Now chose a directory for Qpid broker installation. This directory will be used for the Qpid JARs and configuration files.
It need not be the same location as the store used for the persistent messages or the log file (you will chose this
location later). For the remainder this example we will assumed that location /usr/local/qpid has been chosen.</para>
<para>Extract the Qpid package qpid-java-broker-&qpidCurrentRelease;.tar.gz into the directory.</para>
<programlisting>mkdir /usr/local/qpid
cd /usr/local/qpid
tar xvzf qpid-java-broker-&qpidCurrentRelease;.tar.gz></programlisting>
<para>The extraction of the Qpid package will have created a directory qpid-broker-x.x</para>
<screen>ls -la qpid-broker-&qpidCurrentRelease;/
total 152
drwxr-xr-x 8 qpid qpid 272 25 Jul 23:22 .
drwxr-xr-x 45 qpid qpid 1530 30 Sep 10:51 ..
-rw-r--r--@ 1 qpid qpid 65925 20 Jul 20:10 LICENSE
-rw-r--r--@ 1 qpid qpid 3858 20 Jul 20:10 NOTICE
-rw-r--r--@ 1 qpid qpid 1346 20 Jul 20:10 README.txt
drwxr-xr-x 10 qpid qpid 340 30 Sep 00:24 bin
drwxr-xr-x 9 qpid qpid 306 21 Aug 23:17 etc
drwxr-xr-x 34 qpid qpid 1156 25 Jul 23:22 lib
</screen>
<section role="h3" id="Java-Broker-Installation-InstallationUnix-SettingQPIDWORK">
<title>Setting the working directory</title>
<para>Qpid requires a work directory. This directory is used for the default location of the Qpid log
file and is used for the storage of persistent messages. The work directory can be set on the
command-line (for the lifetime of the current shell), but you will normally want to set
the environment variable permanently the user's shell profile file (~/.bash_profile for Bash etc).</para>
<screen><![CDATA[export QPID_WORK=/var/qpidwork]]>
</screen>
<para>If the directory referred to by QPID_WORK does not exist, the Java Broker will attempt to create it
on start-up.
</para>
</section>
<section role="h3" id="Java-Broker-Installation-InstallationUnix-OptionalDependencies">
<title>Optional Dependencies</title>
<para>The broker has an optional message store implementations backed by Oracle BDB JE. If you wish to use these
stores you will need to provide the optional Oracle BDB JE dependency. For more details, see <xref linkend="Java-Broker-Stores-BDB-Store"></xref>
</para>
</section>
</section>
</chapter>