Установка 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.
Итак, нам понадобятся:
Установка 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. В командной строке запускаем следующие файлы.
Устанавливаем 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 установим значение параметра
Перезапускаем службу MySQL.
Устанавливаем OTRS
Качаем zip-архив с последней версией OTRS (на момент написания статьи версия 4-0-8) и распаковываем в папку c:\otrs\
Почти все готово.
Устанавливаем необходимые perl-пакеты
Из командной строки из папки c:\otrs\bin запускаем скрипт
Устанавливаем необходимые пакеты. Среди них есть как обязательные (required), так и необязательные (optional). Установим все, кроме Encode::HanExtra.
Также мы получаем одну ошибку на пакет DBD::Oracle.
Внутренний перфекционист требует устранения этой ошибки, хоть в данном примере и не используется БД Oracle. Oci.dll – библиотека клиента Oracle. Качаем клиент, устанавливать его не нужно, просто забираем из архива библиотеку Oci.dll и кладем ее в c:\Windows\System32\.
Теперь появляется сообщение о недостающей библиотеке MSVCR100.dll.
Устанавливаем Visual C++ 2010 SP1 Redistributable Package (x86).
Запускаем скрипт еще раз
Все необходимые модули установлены.
Настраиваем OTRS
Вся настройка заключается в изменении пути установки OTRS в конфигурационных файлах.
c:\otrs\scripts\apache2-httpd.include.conf
Меняем это | … на это |
ScriptAlias /otrs/ “/opt/otrs/bin/cgi-bin/” | ScriptAlias /otrs/ “c:/otrs/bin/cgi-bin/” |
Alias /otrs-web/ “/opt/otrs/var/httpd/htdocs/” | Alias /otrs-web/ “c:/otrs/var/httpd/htdocs/” |
Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl | Perlrequire c:/otrs/scripts/apache2-perl-startup.pl |
Проще всего сделать поиск/замену для “/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-> | $Self-> |
Для ведения логов добавим следующие строки:
Настраиваем 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 выполняем
Перезапускаем службу Apache.
Если появилась такая ошибка:
Нужно проверить, во всех ли конфигах мы изменили путь инсталляции при настройке OTRS.
Запускаем web-установку
Принимаем лицензионное соглашение, выбираем тип базы данных MySQL, вводим пароль от учетной записи root.
При нажатии кнопки проверки настроек БД получаем ошибку. OTRS просит увеличить значение параметра max_allowed_packet.
Добавляем в файл c:\Program Files\MySQL\MySQL Server 5.5\my.ini строку
Перезапускаем службу MySQL и снова проверяем БД.
Получаем уже другое сообщение.
Параметр innodb_log_file_size отвечает за размер логов MySQL. Останавливаем службу MySQL. В данной версии MySQL логи находятся в папке c:\ProgramData\MySQL\MySQL Server 5.5\data\
Удаляем файлы ib_logfile0 и ib_logfile1. В файле my.ini устанавливаем значение параметра
Запускаем службу MySQL. Видим, что файлы ib_logfile0 и ib_logfile1 стали нужного размера.
Вновь нажимаем на кнопку проверки БД. Все получилось. OTRS создал новую учетную запись для новой базы данных OTRS и сгенерировал пароль.
На Шаге 3 предлагается настроить систему и почту. Это можно сделать в любой момент.
Наконец, на Шаге 4 нам генерируется пароль для пользователя root@localhost. Заходим под этой учетной записью.
Настройка планировщика
При входе под агентом мы видим сообщение, что планировщик не запущен. Имеется ввиду внутренняя служба OTRS.
В командной строке выполняем скрипт
Затем запускаем службу. Обновляем страницу, видим, что сообщение исчезло, а в оснастке служб появилась новая – OTRS Scheduler.
Теперь нужно настроить работу собственно планировщика. Можно использовать либо Планировщик заданий Windows, либо CRON.
В OTRS нативно используется планировщик CRON. Планировщик предназначен для очистки кэша, обновления статистики, отправки уведомлений и т.д.
Качаем CRONw и распаковываем в папку c:\cronw. Для корректной работы CRONw нам понадобится установить несколько модулей перл.
В командной строке выполняем:
Все задания в 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»;
Запустим скрипт из командной строки:
Скрипт отработал, в папке c:\CRONw\ появился файл crontab.txt.
Установим CRON в качестве службы 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-аутентификация.
Информационный портал по безопасности
Установка OTRS v4 на ОС Windows
Автор: admin от 18-05-2015, 20:38, посмотрело: 3 789
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.
Итак, нам понадобятся:
Установка Apache HTTP Server
Для работы Apache требует Visual C++ 2008 SP1 Redistributable Package. Качаем по ссылке выше и устанавливаем.
Выкачаем архив с Apache и распаковываем папку apache2 из архива в папку c:/apache2 (по умолчанию ServerRoot расположен по этому пути). Если для Apache Вы выбрали другое расположение, необходимо изменить ServerRoot в httpd.conf, а также расположение Documenroot, Directories, ScriptAlias.
Для установки службы Apache из папки c:Apache2bin в командной строке вводим
httpd.exe -k install
Служба успешно установлена.
Запустим файл c:Apache2binApacheMonitor.exe и поместим его в автозагрузку. Запустим службу Apache.
В браузере в адресной строке переходим по адресу http://localhost. Если все хорошо, то увидим страничку с текстом «It works!».
Устанавливаем Strawberry Perl
Качаем Strawberry Perl по ссылке выше, распаковываем все в папку c:/strawberry. В командной строке запускаем следующие файлы.
Устанавливаем mod_perl для Apache
Качаем mod_perl. В архиве две папки – с apache и perl. Распаковываем их содержимое с заменой файлов соответственно в папки, где у нас установлены Apache и Perl.
Перезапускаем службу Apache.
Устанавливаем MySQL Server
Качаем и запускаем mysql-5.5.43-winx64.msi. Установка без особенностей.
После завершения установки запускается Мастер Настройки.
Выбираем стандартную конфигурацию.
Задаем название для службы.
Устанавливаем пароль root.
После завершения установки правим файл my.ini.
Для большей производительности в файле c:Program FilesMySQLMySQL Server 5.5my.ini установим значение параметра
Перезапускаем службу MySQL.
Устанавливаем OTRS
Качаем zip-архив с последней версией OTRS (на момент написания статьи версия 4-0-8) и распаковываем в папку c:otrs
Почти все готово.
Устанавливаем необходимые perl-пакеты
Из командной строки из папки c:otrsbin запускаем скрипт
Устанавливаем необходимые пакеты. Среди них есть как обязательные (required), так и необязательные (optional). Установим все, кроме Encode::HanExtra.
Также мы получаем одну ошибку на пакет DBD::Oracle.
Внутренний перфекционист требует устранения этой ошибки, хоть в данном примере и не используется БД Oracle. Oci.dll – библиотека клиента Oracle. Качаем клиент, устанавливать его не нужно, просто забираем из архива библиотеку Oci.dll и кладем ее в c:WindowsSystem32.
Теперь появляется сообщение о недостающей библиотеке MSVCR100.dll.
Устанавливаем Visual C++ 2010 SP1 Redistributable Package (x86).
Запускаем скрипт еще раз
Все необходимые модули установлены.
Настраиваем OTRS
Вся настройка заключается в изменении пути установки OTRS в конфигурационных файлах.
c:otrsscriptsapache2-httpd.include.conf
Меняем это | … на это |
ScriptAlias /otrs/ “/opt/otrs/bin/cgi-bin/” | ScriptAlias /otrs/ “c:/otrs/bin/cgi-bin/” |
Alias /otrs-web/ “/opt/otrs/var/httpd/htdocs/” | Alias /otrs-web/ “c:/otrs/var/httpd/htdocs/” |
Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl | Perlrequire c:/otrs/scripts/apache2-perl-startup.pl |
Проще всего сделать поиск/замену для “/opt” на “с:”
c:otrsscriptsapache2-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:otrsKernelConfig.pm
Переименовываем файл c:otrsKernelConfig.pm.dist в c:otrsKernelConfig.pm. В текстовом редакторе
Меняем это | … на это |
$Self-> | $Self-> |
Для ведения логов добавим следующие строки:
Настраиваем Apache
В папке c:Apache2conf редактируем файл 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:Apache2bin выполняем
Перезапускаем службу Apache.
Если появилась такая ошибка:
Нужно проверить, во всех ли конфигах мы изменили путь инсталляции при настройке OTRS.
Запускаем web-установку
Принимаем лицензионное соглашение, выбираем тип базы данных MySQL, вводим пароль от учетной записи root.
При нажатии кнопки проверки настроек БД получаем ошибку. OTRS просит увеличить значение параметра max_allowed_packet.
Добавляем в файл c:Program FilesMySQLMySQL Server 5.5my.ini строку
Перезапускаем службу MySQL и снова проверяем БД.
Получаем уже другое сообщение.
Параметр innodb_log_file_size отвечает за размер логов MySQL. Останавливаем службу MySQL. В данной версии MySQL логи находятся в папке c:ProgramDataMySQLMySQL Server 5.5data
Удаляем файлы ib_logfile0 и ib_logfile1. В файле my.ini устанавливаем значение параметра
Запускаем службу MySQL. Видим, что файлы ib_logfile0 и ib_logfile1 стали нужного размера.
Вновь нажимаем на кнопку проверки БД. Все получилось. OTRS создал новую учетную запись для новой базы данных OTRS и сгенерировал пароль.
На Шаге 3 предлагается настроить систему и почту. Это можно сделать в любой момент.
Наконец, на Шаге 4 нам генерируется пароль для пользователя [email protected] Заходим под этой учетной записью.
Настройка планировщика
При входе под агентом мы видим сообщение, что планировщик не запущен. Имеется ввиду внутренняя служба OTRS.
В командной строке выполняем скрипт
c:otrsbinotrs.Scheduler4winInstaller.pl -a install
Затем запускаем службу. Обновляем страницу, видим, что сообщение исчезло, а в оснастке служб появилась новая – OTRS Scheduler.
Теперь нужно настроить работу собственно планировщика. Можно использовать либо Планировщик заданий Windows, либо 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»;
Запустим скрипт из командной строки:
Скрипт отработал, в папке c:CRONw появился файл crontab.txt.
Установим CRON в качестве службы Windows. В командной строке запускаем скрипт
perl cronHelper.pl –install
Служба установлена. Запускаем ее.
Раз уж мы взялись устанавливать 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-аутентификация.