2.1. Requirements

 < Day Day Up > 

Before you begin setting up RT, you need to satisfy a few requirements. RT is complex, and the requirements are fairly strict, as Perl applications go.

2.1.1. Perl 5.8.3 or Later

You must have a recent version of Perl installed. RT will run on older versions of Perl, but bugs in the Unicode implementation in older versions may cause data corruption. (And you really don't want to have to explain that to your boss.)

You do not need to install the same Perl that you use for RT as your system-wide version of Perl (i.e., as /usr/bin/perl). You can install it off to the side, in /usr/local or wherever you'd like. If you choose to use mod_perl, it must be linked against this installation of Perl.

If the server running RT also runs other services (especially other mod_perl applications), you might want to create an installation of Perl specifically for RT to ensure that there are no dependency or version problems.

2.1.2. A Database

Ultimately, RT is all about its database. You have several options here:

  • MySQL 4.0.14 or later, with InnoDB support enabled (http://www.mysql.com/)

  • PostgreSQL 7.2 or later (http://www.postgresql.com/)

  • Oracle 9iR2 or later (http://www.oracle.com/)

  • SQLite (http://www.sqlite.org/)

RT runs equally well on MySQL and PostgreSQL. Oracle support is relatively new, but it should be as stable as the MySQL and PostgreSQL. An option for development is SQLite, a lightweight single-file database engine. We don't recommend you run it in a production environment, because it doesn't support high levels of concurrency well. Check the README file that comes with RT to see if the latest version supports any other databases.[*] You should choose which database to use based on what's familiar to you and what resources you have available.

[*] As of this writing, Informix and Sybase support is being developed.

If you don't have a preferred database, we suggest you choose MySQL. It is the easiest supported database to set up and maintain.

It may be possible to make RT install on earlier versions of MySQL or PostgreSQL, but as with earlier versions of Perl, you may run into trouble. In general, we recommend using the latest stable release version of whichever database you choose. At the time of writing, that version is MySQL 4.1.10 and PostgreSQL 8.0.1.

2.1.3. A Web Server

For production uses, you want a scalable web server (instead of the standalone_httpd that comes with RT). Any of the following will do:

  • Apache 1.3 with mod_perl 1.x (http://www.apache.org/ and http://perl.apache.org/)

  • Apache 2.x with mod_perl 2.x

  • Apache 1.x or 2.x with the FastCGI module (http://www.fastcgi.com/)

  • Any FastCGI compliant web server

As with choice of database, choice of web server often depends on what you already have installed. If you're building a stand-alone RT system, the most stable configuration is the latest Apache 1.3 series release with the latest compatible mod_perl 1.x release.

At the time of this writing, mod_perl 2.0 has just been released. Some of the libraries that RT depends on haven't been put through their paces with it. During the mod_perl 2 beta cycle, most of the kinks have been worked out, but there could still be some gremlins hiding in the corners. (Make sure you build your Apache 2.0 with the prefork MPM to avoid odd threading issues.)

For more information on choosing between different Apache versions, you might want to look at Apache: The Definitive Guide, 3rd Edition (O'Reilly).

Most everyone runs RT on an Apache or Apache-derived web server, but RT's FastCGI server is known to play well with other servers. If you use something else, like SunOne/Netscape/iPlanet or WebStar and have a FastCGI plugin for it, it should work.

2.1.4. Perl Modules

RT makes heavy use of freely available Perl libraries available on the CPAN. To make your installation process somewhat smoother, Best Practical has created a (mostly) automated procedure using the CPAN.pm module to download and install libraries from CPAN. See "Step 6: Check for RT's Perl Dependencies" later in this chapter. Depending on your system configuration, there are still a couple of difficult modules that must be installed manually mostly ones that require external libraries to be present, like your database's client libraries or the Apache libraries.

A list of required modules and versions can be found in Appendix D.

Standalone Server Mode

If you are just looking for a personal RT instance to play with, and don't plan to use it in production, you can use RT's Developer Mode designed for quick and easy installation and startup.

This produces a totally self-contained RT instance in the directory the tar file was expanded in, will run as the current user.

First, download the latest tarball from http://download.bestpractical.com/pub/rt/release/rt.tar.gz. Untar it into a new directory.

Second, run configure with the appropriate arguments.

     $ ./configure --with-my-user-group --with-db-type=SQLite \        --enable-layout=inplace --with-devel-mode 

Third, install all the necessary Perl dependencies.

     $ make testdeps     $ make fixdeps 

Finally, install.

     $ make install     $ make initialize-database 

Now, you can run the standalone_httpd and access your RT instance.

     $ bin/standalone_httpd     HTTP::Server::Simple: You can connect to your server at http://localhost:8080/ 


     < Day Day Up > 


    RT Essentials
    RT Essentials
    ISBN: 0596006683
    EAN: 2147483647
    Year: 2005
    Pages: 166

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net