在安裝 iTop 之前,假設您至少具備以下的基本知識:
最低硬體需求
建議使用 Debian 9 或 Ubuntu 20.04 LTS 的虛擬機來運行,硬體的規格可以參考每月的工單數量、上線人數與 CMDB 的配置項(CIs)數量來決定。
我們採用具有 2 個 vCPU 和 4 GB 記憶體的伺服器,並使用 All-in-One 安裝方式進行演示。
iTop 相容性列表
我們安裝的版本為 3.1.1 注意 PHP 與 MariaDB 的版本是否相容,建議使用 PHP 8.1 與 MariaDB 10.6 這兩個版本,將來升級到 3.2 才不會遇到相容的問題。
安裝 PHP、Web 伺服器和資料庫
我們需要先安裝一些先決條件。
sudo apt install ca-certificates apt-transport-https software-properties-common
添加 Ondrej PHP 軟體庫,它提供最新的 PHP 版本。
sudo add-apt-repository ppa:ondrej/php
sudo apt update
透過下列指令安裝 PHP 8.1 與延伸套件
sudo apt install php8.1 php8.1-mysql php8.1-ldap php8.1-cli php8.1-soap \
php8.1-xml php8.1-gd php8.1-zip php8.1-fpm \
php8.1-mbstring php8.1-curl graphviz acl
透過下列指令安裝 Apache 伺服器
sudo apt install apache2 libapache2-mod-php8.1
透過下列指令安裝 MariaDB 10.6
curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup
sudo bash mariadb_repo_setup --mariadb-server-version=10.6
sudo apt update
sudo apt install mariadb-server
取得 iTop 套件
https://sourceforge.net/projects/itop/files/itop/3.1.1-1/
下載 iTop 3.1.1
wget https://sourceforge.net/projects/itop/files/itop/3.1.1-1/iTop-3.1.1-1-12561.zip/download -O /tmp/itop.zip
sudo apt install unzip
sudo unzip /tmp/itop.zip "web/*" -d /var/www/html/itop
sudo mv /var/www/html/itop/web/* /var/www/html/itop
sudo rmdir /var/www/html/itop/web
sudo setfacl -dR -m u:"www-data":rwX /var/www/html/itop/data /var/www/html/itop/log
sudo setfacl -R -m u:"www-data":rwX /var/www/html/itop/data /var/www/html/itop/log
sudo mkdir /var/www/html/itop/env-production /var/www/html/itop/env-production-build
sudo chown www-data: /var/www/html/itop/conf /var/www/html/itop/env-production /var/www/html/itop/env-production-build
sudo chown :www-data /var/www/html/itop
sudo chmod g+w /var/www/html/itop
配置 PHP
以下是 iTop 對於 php.ini 的建議值
sudo vi /etc/php/8.1/apache2/php.ini
設定 memory_limit 來調整效能,避免記憶體不足問題。
memory_limit = 256M ; 如果需要可以增加
設定 max_input_vars 定義傳送到伺服器的資料大小,由於 iTop 會透過 XHR 物件的方式來存取伺服器端的資料,這對於具有許多欄位的自訂物件來說可能不夠。
max_input_vars = 5000
由於 iTop 能夠上傳檔案作為各種配置項(CIs)的附件,並以二進位 BLOB 儲存於資料庫中。為了安全地上傳和儲存文檔,必須在 PHP 和 MySQL 中一致地調整多個設定。
upload_max_filesize = 50M
post_max_size = 58M
控制檔案上傳的相關變數如下,請依照您的喜好調整數值。
各種設定之間的最佳實踐如下
記得重啟 Apache 服務
sudo service apache2 restart
配置資料庫
從 MySQL 5.7 開始,root 使用者在 MySQL 中沒有明確的密碼,因此您必須建立一個帶有密碼的使用者帳戶來安裝 iTop。
sudo mysql
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'iTop'@'%' IDENTIFIED BY 'your_password';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit
以下是 iTop 對於 MariaDB 的建議值
sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf
設定資料庫允許最大封包的大小,應大於 PHP 允許上傳的檔案的大小。
max_allowed_packet = 64M
query_cache_size = 32M
query_cache_limit = 1M
innodb_buffer_pool_size = 512M
innodb_default_row_format = DYNAMIC
innodb_large_prefix = true
記得重啟 MariaDB 服務
sudo service mariadb restart
iTop 安裝精靈
透過以下 URL 從 Web 瀏覽器啟動安裝
http://your_server.your_domain.com/itop/setup
Security issue: iTop is bundled with directory-level configuration files. You must check that those files will be read by your web server (eg. AllowOverride directive should be set to All for Apache HTTP Server).
iTop 附有目錄層級的配置文件,您必須確認網頁伺服器會讀取這些文件。
sudo vi /etc/apache2/apache2.conf
對於 Apache 伺服器,應將 AllowOverride 指令設置為 All
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride all
Require all granted
</Directory>
記得重啟 Apache 服務
sudo service apache2 restart
重新瀏覽,先決條件驗證已通過。
依照精靈進行操作,選擇安裝新的 iTop,點選 NEXT。
同意授權協議,點選 NEXT。
iTop 軟體符合歐洲一般資料保護規範 (GDPR) 的個人資料處理要求。
安裝 iTop 即表示您同意 Combodo 收集一些資訊,以幫助您管理實例並用於統計目的。該資料在與 iTop Hub 上的使用者帳戶關聯之前保持匿名。
輸入資料庫的連線資訊並建立新的資料庫,點選 NEXT。
設定管理員帳號與密碼,點選 NEXT。
選擇 Production 實例,我們要建立一個乾淨的資料庫,點選 NEXT。
選擇組態管理的元素類型,點選 NEXT。
選擇最能描述 IT 環境中的服務與 IT 基礎架構之間關係的選項。
建議選擇 Service Management for Service Providers,點選 NEXT。
選擇您想要使用的工單類型,以回應使用者請求和事件。
建議選擇符合 ITIL 的工單管理,點選 NEXT。
選擇您想要使用的工單類型,以管理 IT 基礎架構的變更。
建議選擇 ITIL 變更管理,點選 NEXT。
從下面的清單中選擇要在 iTop 中實施的其他 ITIL 流程。
建議全部勾選,點選 NEXT。
下好離手,點選 INSTALL。
安裝完畢,點選 ENTER ITOP。
或透過 http://your_server.your_domain.com/itop 登入系統
登入畫面如下
今天的分享就到這邊,感謝收看。
文件參考
前輩您好,照您的教學操作,發現在"ibapache2-mod-php8.1"這邊操作有問題,是否是拼寫錯誤呢?
詢問chatgpt得到的回答是"libapache2-mod-php8.1",再麻煩有空確認一下,謝謝您
是我拼寫錯誤,已更新。
感謝您的告知