iTop是一个用PHP编写的基于ITIL理念打造的开源ITSM系统。本次将在CentOS8的虚机上安装部署一套iTOP系统。

  1. 系统准备 首先是准本LAMP环境,使用系统默认的Apache2.4.3、PHP7.2、Mariadb10.3.
yum update -y
yum install -y cmake make autoconf gcc gcc-g++ unzip graphviz libzip-devel libzip-tools
yum install -y httpd php php-fpm php-ldap php-soap
yum install -y php-xmlrpc php-gd php-opcache php-mysqlnd php-json php-devel
yum install -y libmcrypt libmcrypt-devel php-pecl-apcu mhash
yum install -y php-odbc php-mbstring php-snmp
yum install -y mariadb mariadb-server
firewall-cmd --permanent --add-service=http
firewall-cmd --reload
systemctl enable httpd php-fpm mariadb --now
  1. 上传iTop系统,修改配置文件 我们把iTop的程序文件放置到/var/www/web目录下,修改/etc/httpd/conf/httpd.conf配置文件,使得根文件系统指向web目录,同时对web目录进行赋权。
unzip iTop-2.6.1-4463.zip
cp web/* /var/www/html/ -R
chown -R apache:apache /var/www/html/
mysql -uroot -p
MariaDB [(none)]> create database itop character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on itop.* to itop@'localhost' identified by 'itop';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
  1. 编译PHP扩展实现支持zip 使用YUM/DNF安装的PHP默认不支持zip扩展,因此默认配置下iTOP会出现白屏,日志报错: PHP Fatal error: Class 'DBBackup' not found in /var/www/html/itop/web/setup/applicationinstaller.class.inc.php 所以,需要编译安装PHP的zip扩展。
yum install -y make automake re2c libzip libzip-devel
wget http://pecl.php.net/get/zip
tar zxvf zip
cd zip-*
phpize
./configure 
make 
cp modules/zip.so /usr/lib64/php/modules/
touch /etc/php.d/20-zip.ini
echo 'extension=zip' >> /etc/php.d/20-zip.ini
vim /etc/php.ini
~~~~~~
# CentOS8的PHP已经有PHP-zip包
## 开启zlib压缩支持
269 zlib.output_compression = On
~~~~~~
systemctl restart php-fpm

然后打开站点就可以进行安装了。

  1. iTOP部署 iTopDeploy1 iTopDeploy2 iTopDeploy3 iTopDeploy4 iTopDeploy5 iTopDeploy6 iTopDeploy7 iTopDeploy8 iTopDeploy9 iTopDeploy10 iTopDeploy11 iTopDeploy12 iTopDeploy13 iTopDeploy14 iTopDeploy15