Gentoo, otrs, apache and mod_perl [Part 1]

In my spare time, I’ve been trying to get OTRS to work with acceptable performance on my Gentoo box.

OTRS is a very complete perl-based Ticket Trackign system. Using Perl as simple CGI simply kicks the sh*t out of my home box’s CPU.

I wanted to run it under mod_perl.

That was back in july…

Getting mod_perl installed and working under gentoo was easy. I got OTRS working in no time. The speed was fantastic.

One thing was getting on my nerves, though.

With mod_perl active, restarting the Apache webserver now took minutes instead of seconds.

Since I’m planning on getting this running on a production box, having a few minutes downtime everytime there is a little apache tweak to run by is completely unnacceptable.

I tried to get support from the gentoo forums (http://forums.gentoo.org/viewtopic-t-479175.html).

Found a few souls troubled with the same issue. Found a few leads, but no real solution.

Finally got tired of waiting and decided to let go of mod_perl and look into the mod_fastcgi and mod_fcgid modules I’ve been hearing about.

It took alot of tweaking and poking around and I finally got the thing working with mod_fastcgi (though I hear it likes to spawn alot of processes).

I’ll post the detailed instructions on how to setup OTRS from a mod_fastcgi-free gentoo box in a separate post.

If you ever run into the mod_perl issue, drop a line at the gentoo forums (or in the comment box here!).

If you found a solution, please share!

2 thoughts on “Gentoo, otrs, apache and mod_perl [Part 1]

  1. Just a suggestion.. is this for internal use only, or for client access too? Maybe it could run elsewhere?

    Cuz indeed mod_perl is heavy.. each time you fork another http process mod_perl has to be there too, taking huge amounts of ram.. If the helpdesk part is only a tiny aspect of the whole set of web connections made to your server it’s shooting yourself in the foot..

    What I’m getting at is that one apache config won’t do everything and then some _in the most efficient way for all things_. You could setup another apache, on another port, with a config dedicated to running with mod_perl. So you could have on one side a sleek, low-ram apache serving client web sites, and on the other a lot less ram-hungry httpd processes working on otrs.

    It also solves the restarting problem, since the helpdesk is by itself. But if for cosmetic reasons you don’t like/want to have helpdesk.domain:8888 or whatever, you’d need a second host, or a second ip on that box..

    And also check dcl.sourceforge.net/ 🙂

  2. Well, OTRS is configured and running, so I learned about DCL just a few hours too late 🙂 I’ll most likely give it a look soon, though.

    I got it running with mod_fascgi instead of mod_perl. So far, so good…

    I had considered getting it running on a separate server a few months agi. Looks like I forgot about it. I dont think we plan on exposing the front-end to customers, so its a good point. Its just that my local box is… well… very slow. If OTRS runs good and mod_fastcgi doesn’t eat up my server, I think I’ll let it live where it stands…

Comments are closed.