Встановлення OTRS v4 на ОС Windows
OTRS (аббр. від англ. Open-source Ticket Request System) - відкрита система обробки заявок. OTRS дозволяє організаціям, що займаються технічною підтримкою будь-яких проектів, спільно працювати над вирішенням проблем користувачів. Програма написана мовою Perl, підтримує безліч СУБД (MySQL, PostgreSQL тощо), може інтегруватися з LDAP каталогом, поширюється за ліцензією - AGPL версії 3.
OTRS чудово і без особливих клопотів встановлюється на будь-який LAMP (Linux, Apache, MySQL, PHP). Але як бути, якщо немає досвіду роботи і адміністрування Linux?
Четверта версія OTRS не має інсталятора Windows-версії. Я вирішив викласти свій спосіб встановлення OTRS з вихідців у Windows-оточенні. Однак, важливо розуміти, що продуктивність OTRS, запущеної в рідному Linux-оточенні, буде вищою, ніж на аналогічному залізі в Windows-оточенні.
Найбільша проблема, з якою я зіткнувся при установці OTRS - робочий mod_perl для Apache. На щастя, ентузіасти регулярно викладають свіжі версії мода під нові версії Perl і Apache.
Отже, нам знадобляться:
- MySQL Server v 5.5 64-bit.
- Apache v 2.2 32-bit.
- Strawberry Perl 5.20.1.1 32-bit.
- Ну і сам mod_perl.
- Планувальник Cron for Windows (опціонально).
- Visual C++ 2008 SP1 Redistributable Package (x86).
- Visual C++ 2010 SP1 Redistributable Package (x86).
- Власне сама OTRS.
Встановлення Apache HTTP Server
Для роботи Apache потребує Visual C++ 2008 SP1 Redistributable Package. Качаємо за посиланням вище і встановлюємо.
Викачаємо архів з Apache і розпаковуємо теку apache2 з архіву в теку c:/ apache2 (типовий ServerRoot розташований на цьому шляху). Якщо для Apache Ви вибрали інше розташування, необхідно змінити ServerRoot в httpd.conf, а також розташування Documenroot, Directories, ScriptAlias.
Для встановлення служби Apache з теки c:\ Apache2\bin у командному рядку введіть
httpd.exe -k install
Службу успішно встановлено.
Запустимо файл c:\ Apache2\bin\ApacheMonitor.exe і помістимо його в автозавантаження. Запустимо службу Apache.
У переглядачі в адресному рядку переходимо за адресою http://localhost. Якщо все добре, то побачимо сторінку з текстом «It works!».
Встановлюємо Strawberry Perl
Качаємо Strawberry Perl за посиланням вище, розпаковуємо все в теку c:/strawberry. У командному рядку запускаємо наступні файли:
c:\strawberry\relocation.pl.bat
c:\strawberry\update_env.pl.bat
Встановлюємо mod_perl для Apache
Качаємо mod_perl. В архіві дві теки - з apache і perl. Розпаковуємо їх вміст із заміною файлів відповідно до тек, де у нас встановлені Apache і Perl.
Перезапускаємо службу Apache.
Встановлюємо MySQL Server
Качаємо і запускаємо mysql-5.5.43-winx64.msi. Встановлення без особливостей.
Після завершення встановлення буде запущено Майстер Параметри.
Вибираємо стандартну конфігурацію.
Задаємо назву для служби.
Встановлюємо пароль root.
Після завершення встановлення правимо файл my.ini.
Для більшої продуктивності у файлі c:\ Program Files\MySQL\MySQL Server 5.5\my.ini встановимо значення параметра
query_cache_size=32M
Перезапускаємо службу MySQL.
Встановлюємо OTRS
Качаємо zip-архів з останньою версією OTRS (на момент написання статті версія 4-0-8) і розпаковуємо в теку c:\otrs\
Майже все готово.
Встановлюємо потрібні пакети perl
З командного рядка з теки c:\ otrs\bin запускає скрипт
perl otrs. CheckModules.pl
Встановлюємо необхідні пакети. Серед них є як обов'язкові (required), так і необов'язкові (optional). Встановімо всі, крім Encode::HanExtra.
cpan Crypt::Eksblowfish
cpan GD::Text
cpan GD::Graph
cpan Mail::IMAPClient
cpan Net::LDAP
cpan PDF::API2
Також ми отримуємо одну помилку на пакет DBD::Oracle.
Внутрішній перфекціоніст вимагає усунення цієї помилки, хоч в даному прикладі і не використовується БД Oracle. Oci.dll - бібліотека клієнта Oracle. Качаємо клієнт, встановлювати його не потрібно, просто забираємо з архіву бібліотеку Oci.dll і кладемо її в c:\Windows\System32\.
Тепер з'являється повідомлення про відсутню бібліотеку MSVCR100.dll.
Встановлюємо Visual C++ 2010 SP1 Redistributable Package (x86).
Запускаємо скрипт ще раз
perl otrs. CheckModules.pl
Всі необхідні модулі встановлені.
Налаштовувати OTRS
Все налаштування полягає в зміні шляху встановлення OTRS в конфігураційних файлах.
c:\otrs\scripts\apache2-httpd.include.conf
Найпростіше зробити пошук/заміну для "/opt "на" с:”
c:\otrs\scripts\apache2-perl-startup.pl
Міняємо це |
… на це |
|
use lib “/opt/otrs/”; |
use lib “c:/otrs/”; |
|
use lib “/opt/otrs/Kernel/cpan-lib”; |
use lib “c:/otrs/Kernel/cpan-lib”; |
|
use lib “/opt/otrs/Custom”; |
use lib “c:/otrs/Custom”; |
c:\otrs\Kernel\Config.pm
Перейменовуємо файл c:\otrs\Kernel\Config.pm.dist в c:\otrs\Kernel\Config.pm. У текстовому редакторі
Міняємо це |
… на це |
|
$Self->{Home} = ‘/opt/otrs'; |
$Self->{Home} = ‘c:/otrs'; |
Для ведення логів додамо такі рядки:
$Self->{'LogModule'} = 'Kernel::System::Log::File';
$Self->{'LogModule::LogFile'} = ""$Self->{Home}/var/log/otrs.log"";
Налаштовуємо Apache
У теці c:\ Apache2\conf\редагуємо httpd.conf, додаємо такі рядки:
# вказуємо апачу де у нас встановлено перл
LoadFile “c:/strawberry/perl/bin/perl520.dll”
# load mod_perl
LoadModule perl_module modules/mod_perl.so
# Вказуємо, куди встановлено OTRS
Include “c:/otrs/scripts/apache2-httpd.include.conf”
Переконаємося, що з синтаксисом все добре. У командному рядку з теки c:\ Apache2\bin виконати
httpd –t
Перезапускаємо службу Apache.
Якщо з'явилася така помилка:
Потрібно перевірити, чи у всіх налаштуваннях ми змінили шлях інсталяції при налаштуванні OTRS.
Запускаємо веб-установку
У адресному рядку запускаємо http://localhost/otrs/installer.pl
Приймаємо ліцензійну угоду, вибираємо тип бази даних MySQL, вводимо пароль від облікового запису root.
Після натискання кнопки перевірки параметрів БД отримуємо помилку. OTRS просить збільшити значення параметра max_allowed_packet.
Додаємо до файла c:\ Program Files\MySQL\MySQL Server 5.5\my.ini рядок
max_allowed_packet = 20M
Перезапускаємо службу MySQL і знову перевіряємо БД.
Отримуємо вже інше повідомлення.
Параметр innodb_log_file_size відповідає за розмір логів MySQL. Зупиняємо службу MySQL. У цій версії MySQL логи знаходяться в теці c:\ProgramData\MySQL\MySQL Server 5.5\data\
Вилучаємо файли ib_logfile0 і ib_logfile1. У файлі my.ini встановлюємо значення параметра
innodb_log_file_size = 512М
Запускаємо службу MySQL. Бачимо, що файли ib_logfile0 і ib_logfile1 стали потрібного розміру.
Знову натискаємо кнопку перевірки БД. Все вийшло. OTRS створив новий обліковий запис для нової бази даних OTRS і згенерував пароль.
На Шагі 3 пропонується налаштувати систему і пошту. Це можна зробити в будь-який момент.
Нарешті, на Кроці 4 нам генерується пароль для користувача root @ localhost. Заходимо під цим обліковим записом.
Налаштування планувальника
При вході під агентом ми бачимо повідомлення, що планувальник не запущений. Мається на увазі внутрішня служба OTRS.
У командному рядку виконуємо скрипт
c:\otrs\bin\otrs.Scheduler4winInstaller.pl -a install
Потім запускаємо службу. Оновлюємо сторінку, бачимо, що повідомлення зникло, а в оснастці служб з'явилася нова - OTRS Scheduler.
Тепер потрібно налаштувати роботу власне планувальника. Можна використовувати або Планувальник завдань Windows, або CRON.
Налаштування CRON
У OTRS нативно використовується планувальник CRON. Планувальник призначений для очищення кешу, оновлення статистики, надсилання повідомлень тощо.
Качаємо CRONw і розпаковуємо в теку c:\cronw. Для коректної роботи CRONw нам знадобиться встановити кілька додатків перл.
У командному рядку виконуємо:
cpan Date::Manip
cpan Log::Dispatch
cpan Log::Dispatch::FileRotate
Всі завдання CRONw зберігаються в спеціальному файлі crontab. Його можна створити, запустивши C:/ otrs/bin/otrs.Cron4Win32.pl, попередньо його відредагувавши наступним чином:
my $PerlExe = «c:/strawberry/perl/bin/perl.exe»;
my $CronTabFile = «c:/cronw/crontab.txt»;
my $OTRSHome = «c:/otrs»;
Запустимо скрипт з командного рядка:
perl c:\otrs\bin\otrs.Cron4Win32.pl
Скрипт відпрацював, у теці c:\ CRONw\з'явився файл crontab.txt.
Встановимо CRON як службу Windows. У командному рядку запускаємо скрипт
perl cronHelper.pl –install
Службу встановлено. Запускаємо її.
Налаштування планувальника завдань Windows
Якщо вже ми взялися встановлювати OTRS у Windows-оточенні, то і планувальник можна використовувати місцевий.
У теці c:/ otrs/var/cron/є декілька стандартних завдань. По суті дані завдання запускають perl-скрипти. Запустимо планувальник завдань, меню Дії - Створити завдання.
Відкриємо у теці c:/ otrs/var/cron/перший файл cache.dist
# delete expired cache weekly (Sunday mornings)
20 0 * * 0 $HOME/bin/otrs.DeleteCache.pl --expired >> /dev/null
30 0 * * 0 $HOME/bin/otrs.LoaderCache.pl -o delete >> /dev/null
Дамо завданню ім'я - OTRS Weekly. Очищення кешу. Налаштуємо виконання завдання незалежно від реєстрації користувача і з найвищими правами.
Переходимо на вкладку Тригери, натискаємо кнопку Створити. Вказуємо розклад такий же, як нам пропонує OTRS.
Наведіть вказівник миші на вкладку Дії, натисніть кнопку Створити. Дія - Запуск програми. У якості програми вказуємо шлях до perl.exe, як аргумент - необхідний скрипт з параметрами.
За аналогією створюємо дію для другого скрипту.
Повторюємо операцію для всіх потрібних нам завдань. Запускаємо кожну задачу вручну, щоб переконатися, що вона виконується.
На цьому все, OTRS готова для подальшого налаштування.
Якщо цікаво, в майбутньому будуть опубліковані керівництва з налаштування авторизації через Active Directory і SSO-аутентифікація.
