Installing OTRS ( Open-source Ticket Request System) database
Hello to all
OTRS ( Open-source Ticket Request System)is a free and open-sourcet rouble ticket system software package that a company, organization, or other entity can use to assign tickets to incoming queries and track further communications about them.
It is a means of managing incoming inquiries, complaints, support requests, defect reports, and other communications.
I have been trying to install OTRS on my 64 bit centos 6.2 using postgreSQL as a database in my virtualbox machine. According to my research it is compatible with MySQL, PostgreSQL, Oracle, Ingres, DB2 and MSSQL.
I downloaded the OTRS rpm version 3.1 beta using wget. The URL was:
# wget http://ftp.otrs.org/pub/otrs/RPMS/fedora/4/otrs-3.1.0.beta2-02.noarch.rpm
The next step was to find the dependencies required for OTRS to work.
# rpm -qpR otrs-3.1.0.beta2-02.noarch.rpm
perl
perl(DBI)
perl(URI)
mod_perl
httpd
procmail
perl(Date::Format)
perl(LWP::UserAgent)
perl(Net::DNS)
perl(IO::Socket::SSL)
perl(XML::Parser)
/bin/sh
/bin/sh
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadIsBzip2) <= 3.0.5-1
Next I installed the package as a pre requisite for OTRS to work. I selected Yum to determine the exact Perl package name. For example,
# yum provides "perl(Date::Format)"
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
* base: centos.mirror.aussiehq.net.au
* extras: mirror.aarnet.edu.au
* updates: centos.mirror.aussiehq.net.au
1:perl-TimeDate-1.16-11.1.el6.noarch : A Perl module for time and date
: manipulation
Repo : base
Matched from:
Other : perl(Date::Format)
I did similar settings for rest of the perl packages and installed them successfully.
# yum install procmail perl-TimeDate perl-libwww-perl perl-Net-DNS perl-IO-Socket-SSL perl-XML-Parser
Now finally I started the installation of the OTRS package.
# rpm -ivh otrs-3.1.0.beta2-02.noarch.rpm
Preparing… ########################################### [100%]
Check OTRS user … otrs added.
1:otrs ########################################### [100%]
hostname: Unknown host
The next step was:
[httpd services]
Restart httpd 'service httpd restart'
Now before installing the OTRS database, I confirmed that my database server was running. I opened the following link:
http:///otrs/installer.pl
I got the following message from the OTRS team which was quite misleading
[OTRS services]
Start OTRS 'service otrs start' (service otrs {start|stop|status|restart).
((enjoy))
Your OTRS Team
I then tried to setup PostgreSQL before accessing OTRS.
Initialize PostgreSQL.
# service postgresql initdb
Initializing database: [ OK ]
Start PostgreSQL.
service postgresql start
Starting postgresql service: [ OK ]
Then I logged in as postgreSQL user and created the OTRS user account.
postgres=# CREATE USER otrs PASSWORD 'otrs' LOGIN NOSUPERUSER;
CREATE ROLE
postgres=# CREATE DATABASE otrs owner otrs;
CREATE DATABASE
Then I created tables and inserted the initial data.
# cd /opt/otrs/scripts/database
Next I entered the OTRS user password when prompted.
# psql -U otrs -W -f otrs-schema.postgresql.sql otrs
# psql -U otrs -W -f otrs-initial_insert.postgresql.sql otrs
# psql -U otrs -W -f otrs-schema-post.postgresql.sql otrs
Now I tried to configure OTRS connection parameters to PostgreSQL, comment the default MySQL parameter and uncomment PostgreSQL's, as well as insert the otrs user password used earlier.
# vim /opt/otrs/Kernel/Config.pm
# DatabasePw
# (The password of database user. You also can use bin/otrs.CryptPassword.pl
# for crypted passwords.)
$Self->{DatabasePw} = 'otrs';
# DatabaseDSN
# (The database DSN for MySQL ==> more: "man DBD::mysql")
# $Self->{DatabaseDSN} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost};";
# (The database DSN for PostgreSQL ==> more: "man DBD::Pg")
# if you want to use a local socket connection
$Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";
Now I saved the file and exited from it. Then I started Apache:
# service httpd start
Starting httpd: httpd: apr_sockaddr_info_get() failed for otrs.lan
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[FAILED]
Now I didn’t get the point why it failed. I then edited /etc/httpd/conf/httpd.conf file and added the following line instead:
ServerName otrs.lan
Then I used another server name and restarted the Apache
# service httpd start
I checked httpd's error logs and found the following error:
[Mon Jan 09 13:14:56 2012] [error] Can't load Perl file: /opt/otrs/scripts/apache2-perl-startup.pl for server otrs.lan:0, exiting…
[Mon Jan 09 13:15:23 2012] [error] Can't locate DBD/Pg.pm in @INC (@INC contains: /opt/otrs/Custom /opt/otrs/Kernel/cpan-lib /opt/otrs/ /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 . /etc/httpd) at /opt/otrs/scripts/apache2-perl-startup.pl line 58.nBEGIN failed–compilation aborted at /opt/otrs/scripts/apache2-perl-startup.pl line 58.nCompilation failed in require at (eval 2) line 1.n
Based on the above logs, it says that perl file named DBD/Pg is missing, to resolve, install missing Perl package.
# yum install perl-DBD-Pg
I then restarted Apache again, and tried to access OTRS. I tried to access OTRS without specifying the full URL i.e. http://ip.add.re.ss/otrs instead of http://ip.add.re.ss/otrs/index.pl, and Apache spewed this error:
[Mon Jan 09 13:17:31 2012] [error] slurp_filename('/var/www/html/otrs') / opening: (2) No such file or directory at /usr/lib64/perl5/ModPerl/RegistryCooker.pm line 541
I tried to search a lot about the above mentioned error but found nothing useful.
I posted it to a lot of forums but couldn’t find anything that could fix my problem.
See login page and root dashboard screenshot below:
Please help me out to fix the issue. I'll be really grateful
Anxiously waiting for your reply
Kind regards
Jane