Beruflich Dokumente
Kultur Dokumente
9 on Windows
Server 2008 R2
OTRS is an exceptionally flexible ITIL compliant
ticketing/helpdesk solution, which runs beautifully on
almost any LAMP (Linux, Apache, MySQL, Perl (yes,
I know its PHP really;-)) server, but what happens
when you work in a Windows-only environment?
OTRS does have a Windows installer, but it is somewhat clunky and requires almost as much
work to configure as manually installing. Installing as components allows you to upgrade
portions of the system and have more granular control over the setup.
Ive recently installed OTRS on a Windows Server 2008 R2 (64-bit) server, including
experimenting with various combinations of IIS/Apache, MSSQL2008/MySQL, ActiveState
Perl 32-bit/64-bit, different configurations and setups - these are my findings:
IIS7, MSSQL (64), ActiveState Perl (64) to make use of the native IIS7 webserver
and 64-bit Perl. The server does run but performs abysmally, and you have to force
IIS to run a 32-bit application pool to get Perl to work.
Apache2.2 (32), MSSQL (64) and ActiveState Perl (32) again OTRS will run but
performance is grim
Apache2.2 (64 unofficial binaries), MySQL (64) and ActiveState Perl (64) this
seemed the most promising approach but without a 64-bit version of mod_perl the
performance was worse than the final combo
Apache2.2 (32), MySQL (64) and ActiveState Perl (32) this performed the best, and
although there are slow portions (SysConfig) the general user experience was good.
None of these combinations came close to the performance of OTRS running on a native
Linux server, my 64-bit Ubuntu server absolutely flew, with less processor and RAM than the
Windows box. In short, if you have the skills, use the Linux option. Yes, yes I do feel a little
dirty now, sorry Mr Gates.
So, the final setup I have opted for is:
A Virtual Machine running Windows Server 2008, 2GB RAM and 2 vCPUs at
3.2Ghz
MySQL Server 5.5, 64-bit
Apache 2.2, 32-bit
ActiveState Perl, 32-bit
Apache should now be running on the local machine, navigate to http://localhost to check that
its running. You should see a page saying It works!
Installing MySQL
Installing MySQL is again a very simple click-through process, once youve downloaded it
from http://dev.mysql.com/downloads/. I am installing the 64-bit server to make the most of
the 64-bit performance on this server.
Change the default data directory (you wouldnt leave a MSSQL DB on the System drive
would you?!) create a folder on the data drive (I use D:\MySQL\Data).
#Path to the database root
datadir="D:\MySQL\Data"
Go to c:\ProgramData\MySQL\MySQL 5.5\data\ and move all the files and folders there to
the folder you specified for datadir.
For performance, its also recommended that you change the query_cache_size to 32M
You can now start the MySQL service again.
Installing OTRS
At this point, we will download and extract the OTRS installation from
http://ftp.otrs.org/pub/otrs/otrs-3.0.9.zip and extract it to D:\OTRS\
Once thats done, we can begin joining up the dots.
perl bin\otrs.CheckModules.pl
You can then use the Perl Package Manager to install the missing required packages, and
some of the options:
(this one requires that you point it to the correct Apache modules folder, for me
d:\Apache\modules)
If you re-run the otrs.CheckModules.pl script it should now pass all modules.
Configuring Apache
The main Apache configuration file is installed at d:\Apache\conf\httpd.conf, open it in
Notepad and add the following lines at the end of the config file:
# load mod_perl
LoadFile 'd:/Perl/bin/perl512.dll' #match your perl installation
LoadModule perl_module modules/mod_perl.so
Include 'd:/OTRS/scripts/apache2-httpd.include.conf' # match your OTRS
installation
Configuring OTRS
Configuring OTRS is initially a case of changing paths referenced in the configuration files to
the Windows paths that match your environments.
D:/OTRS/scripts/apache2-httpd.include.conf
Change this
ScriptAlias /otrs/ "/opt/otrs/bin/cgi-bin/"
Alias /otrs-web/ "/opt/otrs/var/httpd/htdocs/"
Perlrequire /opt/otrs/scripts/apache2-perl-
to this
ScriptAlias /otrs/ "D:/otrs/bin/cgi-bin/"
Alias /otrs-web/ "D:/otrs/var/httpd/htdocs/"
Perlrequire D:/otrs/scripts/apache2-perl-
startup.pl
<Directory "/opt/otrs/bin/cgi-bin/">
<Directory "/opt/otrs/var/httpd/htdocs/">
<Directory
"/opt/otrs/var/httpd/htdocs/skins/*/*/csscache">
<Directory "/opt/otrs/var/httpd/htdocs/js/jscache">
startup.pl
<Directory "D:/otrs/bin/cgi-bin/">
<Directory "D:/otrs/var/httpd/htdocs/">
<Directory
"D:/otrs/var/httpd/htdocs/skins/*/*/csscache">
<Directory "D:/otrs/var/httpd/htdocs/js/jscache">
I performed a search/replace for /opt with D:, and checked through after.
D:\OTRS\scripts\apache2-perl-startup.pl
Change this
use lib "/opt/otrs/";
use lib "/opt/otrs/Kernel/cpan-lib";
use lib "/opt/otrs/Custom";
to this
use lib "D:/otrs/";
use lib "D:/otrs/Kernel/cpan-lib";
use lib "D:/otrs/Custom";
D:\OTRS\kernel\Config.pm
Rename D:\OTRS\kernel\Config.pm.dist to Config.pm, and open Config.pm in your text
editor.
Change this
$Self->{Home} = '/opt/otrs';
to this
$Self->{Home} = 'D:/otrs';
Enter the MySQL root user and password you created earlier, and test the settings
Next configure a user, password, database name and create the database. you dont have to
change the default names, but if you dont change the password from the default hot to
something complex, you deserve to get hacked!
Configure the general system, FQDN, admin email address and logging
And finish!
You can now log in to your OTRS installation but were not finished yet!
Move on to the Triggers panel and create a schedule for the task (see the table below for
my config)
Move to the Actions panel and create an action to start a program and pass the script as an
argument (again, see the table below for my config).
You can accept the default settings for the rest of the panes.
Task Triggers
Name
OTRS 1
Minute
Actions
OTRS
10
Minute
Actions
OTRS
15
Minute
Actions
OTRS 2
Hour
Actions
OTRS
Daily
Actions
OTRS
Program/Arguments
d:\Perl\bin\perl.exe d:\OTRS\bin\otrs.GenericAgent.pl
Run each of the jobs manually to ensure that they process OK, without any errors. I have
exported my jobs as XML files, which are available here to download and import (assuming
youve put all the files in the same place as me!)
Thats it, OTRS is ready for you to configure, which is way beyond the scope of this post!