目前,我們網站上有兩個功能版本的 Cacti,以及 Cacti Group 支援的多個 Cacti 外掛程式。 我們目前的 Cacti 長期版本位於1.2.x
分支。 該分支的目前發布版本是 Cacti 1.2.27。
這個待定的維護版本修復了多個錯誤,並提供了更受歡迎的功能增強。 您可以查看1.2.x
分支的變更日誌以取得更多資訊。
此外,我們還有develop
分支。 現在這是一個活躍的開發分支。 在這個分支中,我們作為一個團隊重新組合並引入了一些新功能。 我們希望能夠為 Cacti 愛好者送上一份聖誕禮物,這將是 Cacti 1.3.0-beta 版本。 如果您想更早參與,只需下載開發版本即可。 1.3.0 版本將包含 1.2.27 版本中的所有內容,以及我們路線圖中的一些附加功能。
系統需求因 Cacti 單點版本而異。 下面的矩陣記錄了每個版本的最低工具等級。 在我們的原始碼發行版中,所有供應商包含的軟體包均由 Cacti 小組預先打包和測試,因此沒有理由使用軟體包管理工具來安裝這些依賴項。
依賴性 | 仙人掌1.2.x | 仙人掌1.3.x |
---|---|---|
瑪麗亞資料庫 | 5.5+ | 10.2.x+ |
MySQL | 5.5+ | 5.7+ |
PHP | 5.4+ | 8.0+ |
RRD工具 | 1.4+ | 1.8+ |
網路SNMP | 5.5+ | 5.8+ |
對於 Cacti 1.2.x,使用 RHEL/CentOS 7 或同等版本運行是合理的。 然而,對於 Cacti 1.3.x,最好在 RHEL/CentOS/Rocky 8 或同等作業系統上運行,因為該作業系統版本使 PHP8.0 透過 DNF Stream 可用。
但是,如果您希望在 RHEL/CentOS 7 發行版上執行 Cacti 1.3.x,則可以使用 PHP 的 REMI 發行版來實作。 在這種情況下,您還必須從原始程式碼建立 RRDtool 1.8+,這很簡單。
在下面的部分中,您可以找到在安裝 Cacti 1.2.x 版本或待定的 Cacti 1.3.x 版本之前的一些重要的第一步。 祝你好運,享受仙人掌。
大多數現代瀏覽器均受支持,但自 Cacti 版本 1.2.x 起的所有 Internet Explorer 版本除外。 請勿嘗試將任何版本的 Internet Explorer 與 Cacti 1.2.x 及更高版本一起使用。
develop
分支執行 Cacti使用原始程式碼或直接從儲存庫下載程式碼時,請務必注意,您可能需要定期重新執行資料庫升級 cli 腳本以引入新列。 您可以使用 --forcever=1.2.22 選項假設您正在從早期的 cacti 版本升級:
php -q Upgrade_database.php --forcever=1.2.22
如果您在 Cacti 日誌中遇到 SQL 錯誤,請在此處的 Cacti 問題追蹤器中開啟案例。
近20年前Cacti剛開發時,MySQL還沒現在這麼成熟。 當 Cacti Group 著手設計 Cacti 1.x 時,做出了強制使用者對許多表使用 InnoDB 儲存引擎的決定。 這樣做是因為當您的網站有多個並發登入時,InnoDB 儲存引擎可以提供更好的使用者體驗。 雖然速度有點慢,但它也為開發人員提供了更大的彈性。
儘管如此,在升級之前您必須對 MySQL/MariaDB 執行幾項更改,並且需要重新啟動服務。 根據您的 MariaDB 或 MySQL 版本,以下設定可能是必要的,也可能已預設為啟用:
[mysqld] # required for multiple language support character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci # Memory tunables - Cacti provides recommendations at upgrade time max_heap_table_size = XXX max_allowed_packet = 500M tmp_table_size = XXX join_buffer_size = XXX sort_buffer_size = XXX # important for compatibility sql_mode=NO_ENGINE_SUBSTITUTION # innodb settings - Cacti provides recommendations at upgrade time innodb_buffer_pool_instances = XXX innodb_flush_log_at_trx_commit = 2 innodb_buffer_pool_size = XXX innodb_sort_buffer_size = XXX innodb_doublewrite = ON # required innodb_file_per_table = ON innodb_file_format = Barracuda innodb_large_prefix = 1 # not all version support innodb_flush_log_at_timeout = 3 # for SSD's/NVMe innodb_read_io_threads = 32 innodb_write_io_threads = 16 innodb_io_capacity = 10000 innodb_io_capacity_max = 20000 innodb_flush_method = O_DIRECT
所需的設定非常重要。 否則,您將遇到升級問題。 XXX、Cacti 的設定將在升級時提供建議。在升級過程中必須重新啟動 MySQL/MariaDB 才能調整這些設置,這並不奇怪。 在開始升級之前,請特別注意這一點。
在升級之前,您應該進行這些必要的更改,然後重新啟動 MySQL/MariaDB。之後,您可以透過執行以下腳本來節省一些時間和潛在的錯誤(假設您使用的是 bash):
for table in `mysql -e "SELECT TABLE_NAME FROM information_schema.TABLES WHERE table_schema='cacti' AND engine!='MEMORY'" cacti | grep -v TABLE_NAME`; do echo "Converting $table"; mysql -e "ALTER TABLE $table ENGINE=InnoDB ROW_FORMAT=Dynamic CHARSET=utf8mb4" cacti; done
這會將 InnoDB 或 MyISAM 的任何資料表轉換為 Barracuda 檔案格式、動態行格式和 utf8mb4。 請注意,如果您一直在使用 MySQL 或 MariaDB 而沒有將 innodb_file_per_table 設為 on,則最好備份資料庫,透過刪除 /var/lib/mysql 目錄中的 ib* 檔案來重設 InnoDB,然後還原您的資料庫。資料庫和MySQL/MariaDB 表和權限。 在採取這樣的步驟之前,您應該始終在測試伺服器上進行練習,直到您對變更感到滿意為止。
祝你好運,享受仙人掌!
sudo -u cacti php -q cli/upgrade_database.php --forcever=`cat include/cacti_version`
update version set cacti = '1.1.38';
注意:將上述版本變更為正確的版本,否則安裝程式將面臨從先前版本升級的風險。
Cacti 是一個完整的網路圖形解決方案,旨在利用 RRDtool 的資料儲存和圖形功能的強大功能,提供以下功能:
遠端和本地資料收集器
設備發現
設備和圖形創建的自動化
圖形和設備模板
自訂資料收集方法
使用者、群組和網域存取控制
所有這些都包含在一個直覺、易於使用的介面中,對於 LAN 規模的安裝和具有數千個設備的複雜網路都很有意義。
它是由 Ian Berry 在 2000 年代初作為高中專案開發的,已被數千家公司和愛好者用來監控和管理他們的企業網路和資料中心。
Cacti 應該能夠在任何基於 Linux、UNIX 或 Windows 的作業系統上運行,並滿足以下要求:
PHP 7.4+
MySQL 5.6+
RRDtool 1.3+,推薦1.5+
NET-SNMP 5.5+
支援 PHP 的 Web 伺服器
PHP 也必須編譯為獨立的 cgi 或 cli 二進位。這是透過 cron 收集數據所必需的。
我們將 php-snmp 模組標記為可選。 只要您不使用 ipv6 設備,或使用 snmpv3 引擎 ID 或上下文,那麼使用 php-snmp 應該是安全的。 否則,您應該考慮卸載 php-snmp 模組,因為它會產生問題。 我們意識到 php-snmp 的問題,並希望參與 php 專案來解決這些問題。
RRDtool 有多個版本,其中大部分都受 Cacti 支援。如果您在渲染圖形時遇到問題,請記得確認 RRDtool 版本的 Cacti 設定。
文件隨 Cacti 版本提供,也可在文件儲存庫中查看。
查看 Cacti 主網站以獲取下載、更改日誌、發行說明等資訊!
鑑於 Cacti 範圍廣泛,論壇往往會產生可觀的流量。盡自己的一份力量來回答基本問題會很有幫助,因為我們無法同時到達任何地方。透過參加 Cacti 社群論壇為 Cacti 社群做出貢獻。
參與創建和編輯 Cacti 文件! 分叉、更改並提交拉取請求以幫助改進 GitHub 上的文件。
參與 Cacti 的開發!加入 GitHub 上的開發者和社群!
Cacti 透過資料來源的概念來處理資料的收集。資料來源利用輸入方法從裝置、主機、資料庫、腳本等收集資料…您能夠收集的資料的性質有無限的可能性。 資料來源是底層RRD檔案的直接連結;資料如何儲存在 RRD 檔案中以及如何從 RRD 檔案檢索資料。
圖表是 Cacti 的核心和靈魂,是由 RRDtool 使用已定義的資料來源定義創建的。
將所有這些結合在一起,Cacti 使用廣泛的模板系統,允許創建和使用便攜式模板。圖形、資料來源和 RRA 範本允許輕鬆建立開箱即用的圖形和資料來源。 隨著 Cacti 社群的支持,範本已成為支持繪製當今運算和網路環境中使用的任意數量裝置的標準方法。
本地和遠端資料收集支持,能夠設定收集間隔。查看 Cacti 中的資料來源設定檔以取得更多資訊。資料來源設定檔可以在建立時或在資料範本層級套用至圖表。
透過將資源複製到遠端資料收集器,遠端資料收集變得容易。即使遠端資料收集器與主 Cacti 安裝的連線遺失,它也會儲存收集的數據,直到連線恢復。遠端資料收集僅需要 MySQL 和 HTTP/HTTPS 存取回主 Cacti 安裝位置。
Cacti 為管理員提供了一系列網路自動化功能,以減少設定和管理設備所需的時間和精力。
多個可定義的網路發現規則
指定如何配置設備的自動化模板
Cacti 不只是一個網路監控系統,它還是一個允許擴展和增強 Cacti 功能的操作框架。 Cacti Group 繼續維護各種插件。 如果您想為 Cacti 新增功能,GitHub 上有許多參考資料可供選擇。
Cacti 允許在查看圖表時進行許多運行時增強:
動態載入的樹狀和圖形視圖
按字串、圖形和模板類型搜尋
觀看增強
簡單的時間跨度調整
方便的滑動時間視窗按鈕
點擊即時圖表選項
輕鬆將圖表匯出為 csv
只需點擊一下即可查看 RRA
支援每個領域(Cacti 區域)、每個圖、每個圖樹、每個裝置等的每個使用者和每個群組權限。的權限。支援強制執行密碼複雜性、密碼期限和更改過期密碼。
Cacti 支援大多數 RRDtool 繪圖功能,包括:
全右軸
轉移
虛線和虛線偏移
Alt y 網格
沒有網格配合
單位長度
標籤寬度
動態標籤
規則圖例
圖例位置
VDEF
堆疊線
使用者可定義線寬
文字對齊
版權所有 (c) 2004-2024 - Cacti Group, Inc.