OTRS基礎
安裝
環境准備
RHEL6.8
Apache/2.2.15 (Unix)
perl
v5.10.1
otrs 5.0.x
下載最新的源代碼 git clone https://github.com/OTRS/otrs

<VirtualHost *:8222> ScriptAlias /otrs/ "/opt/otrs/bin/cgi-bin/" Alias /otrs-web/ "/opt/otrs/var/httpd/htdocs/" Perlrequire /opt/otrs/scripts/apache2-perl-startup.pl PerlModule Apache2::Reload PerlInitHandler Apache2::Reload PerlModule Apache2::RequestRec ErrorLog logs/otrs-error.log <Location /otrs> # ErrorDocument 403 /otrs/customer.pl ErrorDocument 403 /otrs/index.pl SetHandler perl-script PerlResponseHandler ModPerl::Registry Options +ExecCGI PerlOptions +ParseHeaders PerlOptions +SetupEnv Order allow,deny Allow from all </Location> </VirtualHost>
perl 模塊安裝
檢查缺失的模塊
perl /opt/otrs/bin/otrs.CheckModules.pl
使用 cpan 安裝
# cpan cpan[1]> install GD CPAN: Storable loaded ok (v2.20) Going to read '/root/.cpan/Metadata' Database was generated on Tue, 18 Apr 2017 05:17:02 GMT CPAN: LWP::UserAgent loaded ok (v5.833) CPAN: Time::HiRes loaded ok (v1.9721)
最后需要安裝的模塊

# perl /opt/otrs/bin/otrs.CheckModules.pl o Apache::DBI......................ok (v1.12) o Apache2::Reload..................ok (v0.13) o Archive::Tar.....................ok (v1.58) o Archive::Zip.....................ok (v1.59) o Crypt::Eksblowfish::Bcrypt.......Not installed! Use: 'yum install "perl(Crypt::Eksblowfish::Bcrypt)"' (optional - For strong password hashing.) o Crypt::SSLeay....................ok (v0.57) o Date::Format.....................ok (v2.24) o DBI..............................ok (v1.636) o DBD::mysql.......................ok (v4.013) o DBD::ODBC........................Not installed! (optional - Required to connect to a MS-SQL database.) o DBD::Oracle......................Not installed! (optional - Required to connect to a Oracle database.) o DBD::Pg..........................Not installed! Use: 'yum install "perl(DBD::Pg)"' (optional - Required to connect to a PostgreSQL database.) o Digest::SHA......................ok (v5.96) o Encode::HanExtra.................ok (v0.23) o IO::Socket::SSL..................ok (v2.048) o JSON::XS.........................ok (v3.03) o List::Util::XS...................ok (v1.47) o LWP::UserAgent...................ok (v6.13) o Mail::IMAPClient.................ok (v3.39) o IO::Socket::SSL................ok (v2.048) o ModPerl::Util....................ok (v2.000004) o Net::DNS.........................ok (v0.65) o Net::LDAP........................ok (v0.40) o Template.........................ok (v2.27) o Template::Stash::XS..............ok (undef) o Text::CSV_XS.....................ok (v1.28) o Time::HiRes......................ok (v1.9721) o Time::Piece......................ok (v1.15) o XML::LibXML......................ok (v1.70) o XML::LibXSLT.....................Not installed! Use: 'yum install "perl(XML::LibXSLT)"' (optional - Required for Generic Interface XSLT mapping module.) o XML::Parser......................ok (v2.44) o YAML::XS.........................ok (v0.64)
用不到的模塊
DBD::ODBC ------sql server 的接口
DBD::Oracle ------oracle 的接口
DBD::Pg ------PostgreSQL 的接口 `
otrs 安裝
1. 首先創建一個用來運行 OTRS cron 計划任務的帳號 otrs,以 / opt/otrs 作為主目錄。
useradd -d /opt/otrs/ -c 'OTRS user' otrs
2. 將 OTRS 安裝在 /opt 目錄里。
cd /opt
使用git clone就可以
3. 用戶將被加入 apache 用戶組中,
usermod -G apache otrs
4 配置文件
shell> cd /opt/otrs/ shell> cp Kernel/Config.pm.dist Kernel/Config.pm shell> cp Kernel/Config/GenericAgent.pm.dist Kernel/Config/GenericAgent.pm
5 檢查所有必需的模塊是否被安裝:
shell> perl -cw /opt/otrs/bin/cgi-bin/index. /opt/otrs/bin/cgi-bin/index.pl syntax OK shell> perl -cw /opt/otrs/bin/cgi-bin/customer.pl /opt/otrs/bin/cgi-bin/customer.pl syntax OK shell> perl -cw /opt/otrs/bin/otrs.PostMaster.pl /opt/otrs/bin/otrs.PostMaster.pl syntax OK "syntax OK" tells you all mandatory perl modules are installed.
6 配置目錄的權限,使 web 服務器用戶和 OTRS 用戶對目錄都有權限。
cd /opt/otrs
bin/otrs.SetPermissions.pl --otrs-user=otrs --web-user=apache --otrs-group=apache --web-group=apache /opt/otrs
7 啟動 http
然后進入安裝頁面 http://ip/otrs/install.pl
8 由於 otrs 需要用到郵件,所以先要配置 sendmail
# yum install sendmail # yum install sendmail-cf # chkconfig sendmail on # cd /etc/mail #vi sendmail.mc DAEMON_OPTIONS(`Port=smtp,Addr=**0.0.0.0**, Name=MTA')dnl #m4 sendmail.mc sendmail.cf # service sendmail restart 測試 # mail -s 54678 a30402104@126.com Fdaffadfdfa Ctrl+D
安裝完畢后,在 系統管理 - 系統配置 - 選擇 FRAMEWORK- core sendmail
9 安裝過程的問題和優化
mysql 限制上傳文件大小,修改 / etc/my.cnf 配置文件后解決。
[mysqld]
max_allowed_packet = 32M
mysql.sock 的路徑不正確,在 http://ip/otrs/installer.pl 執行安裝過程當中 otrs 默認讀取 mysql.sock 的路徑是 / var/lib/mysql/mysql.sock,但是 my.cnf 配置文件指定的 mysql.sock 路徑是 / tmp/mysql.sock
-
守護進程
5 版本的 otrs 有自己的守護進程,並且要求不能以 root 用戶啟動 -
利用 nginx 做一次轉發
使用 apache 設置虛擬主機不太友好,並且此服務器有多個用途,所以利用 nginx rewrite 一次
server { listen 80; server_name otrs.ops.net; root /opt/otrs; # 根目錄為web index index.php; # allow 192.168.0.0/24; # deny all; location ~ / { if ( $request_uri = "/" ) { rewrite "/" $uri/otrs/index.pl break; } proxy_pass http://127.0.0.1:8222; } }
CMDB
安裝
ITSM-5.0.19.opm
5.0.1 使用 chrome 可能有個坑:無法提交表單
使用 "軟件包管理" 選擇 "安裝軟件包" 就可以自動安裝了
出現 ITSM 則安裝成功
配置
cmdb 最重要的就是 CI 功能,在 "工單設置" 中最常用的是 "目錄","配置項"
-
配置項
用來區分設備類型,可以在 ITSM::CONFIGITEM::CLASS 中配置
目錄
用來管理配置項中的字段 type 類型
更多配置請參考 CMDB 在線學習
FAQ
開啟 FAQ 功能
在 系統管理 - 服務人員 <-> 組 設置 FAQ 權限,用以 FAQ 的操作權限
設置類別
業務 - 運維 - 數據庫
創建
修改 faq 的 view 字段名稱
編輯FAQ → Core::Item中的配置設置
根據不通需求來改顯示的名稱,替代之前的 solution 等等,效果如下:
故障處理
[Wed Jun 21 17:34:03 2017] [error] Attempt to reload /opt/otrs/Kernel/Config/Files/ZZZAAuto.pm aborted.\nCompilation failed in require at /opt/otrs//Kernel/Config/Defaults.pm line 1940.\n
可能是由於數據庫不能寫入造成(磁盤100%)
處理方法就是,注銷 /opt/otrs//Kernel/Config/Defaults.pm 中的部分代碼
當然,還會繼續報錯,再把它取消注釋就可以了
:1940 ## no critic #if ( $Require ) { # if (! require $File ) { # die "ERROR: $!\n"; # } #} #else { # if (! do $File ) { # die "ERROR: $!\n"; # } #} ## use critic