|
支援的作業系統
- Microsoft Windows 7/Vista/XP/2000/2003/2008
- Apple MacOS X 10.4/10.5/10.6
- Linux (SUSE Linux Enterprise Server 10)
- Linux (glib2.5/libstdc++3.4.8; e.g.,RedHat ES/AS 5,CentOS 5)
- Linux (glib2.3/libstdc++3.4.3; e.g.,RedHat ES/AS 4,CentOS 4)
- Linux (glib2.3/libstdc++3.2.2; e.g.,RedHat 9,FC1/2/3,ES/AS 1/2/3)
- Sun Solaris 10 (Intel)
- Sun Solaris 8/9/10 (SPARC)
- FreeBSD 6
- Source code (已加密,可供自行編譯於特殊平台之用)
支援的瀏覽器
- Firefox 2或3以上版本
- Internet Explorer 7以上版本(IE6不支援部份Java Script)
- Chrome (少部份彈出頁面之選項功能有問題,但顯示效能最佳)
- Safari 3
硬體建議表
|
Sawmill
|
資料庫
|
設定
|
平台
|
CPU
|
時脈
|
RAM
|
磁碟組態
|
|
企業版
|
Internal
|
建議
|
x64
|
Quad Core Xeon x 2
|
3GHz
|
16GB
|
RAID 10
|
|
最小
|
x64
|
Quad Core Xeon
|
3GHz
|
8GB
|
RAID 10
|
|
External
|
建議
|
x64
|
Quad Core Xeon
|
3GHz
|
8GB
|
RAID 1
|
|
最小
|
x86
|
Dual Core
|
3GHz
|
4GB
|
RAID 1
|
|
專業版
|
Internal
|
建議
|
x64
|
Dual Core
|
1.5GHz
|
4GB
|
RAID 10
|
|
最小
|
x86
|
Pentium 4
|
2.8GHz
|
4GB
|
RAID 1
|
|
External
|
建議
|
x86
|
Dual Core
|
1.5GHz
|
4GB
|
RAID 10
|
|
最小
|
x86
|
Pentium 4
|
2.8GHz
|
2GB
|
RAID 1
|
- 使用Internal與External資料庫的效能差異,在於資料庫動作(index,xref)的負載位置。
- 單一核心配置2GB RAM可避免Out of memory情形。
- 不建議採用效能表現不佳的RAID 5,建議採用RAID 10或其他效能較佳的組態。
- 以上建議值適用於大多數日誌環境;但在日誌量極大、來源極多、資料庫保留天數極長的情形下,需評估調整硬體規格,以及各項最佳化作業(資料來源、軟硬體參數、配置等)。
檔案系統
檔案系統需視RAID Controller Stripe size調校,以避免檔案系統Block Size與RAID控制器搭配不宜而導致磁碟效能低落。
例如:
RAID Controller Stripe size = 128KB
檔案系統在格式化時,需指定Block Size為最接近128KB的可除盡數。 - Windows NTFS預設為4KB,最大為64KB,應設定為64KB以使I/O量降低。 - Linux可在建立檔案系統時指定參數 -E stride=128,以及可視磁碟數量(此例為兩顆)調整的參數 stripe-width=256。
效能確認清單
Sawmill整體運作時可分為三段作業,其間使用資源情形略有不同。
- 讀取日誌 – 讀取日誌同時也進行日誌分割與建立資料庫表要表格,此時CPU負載最高。
- 建立資料庫索引 – 建立索引時由於資料庫的大量動作,磁碟負載最高。
- 建立交互關聯表 – 建立交互關聯表時由於參照大量資料,記憶體使用量最高,同時也有大量資料寫入,磁碟負載亦高。
日誌容量(磁碟容量)
原始日誌與分析後的資料庫各佔有磁碟空間。
原始日誌 – 依日誌保留天數,取七日或四週之一日平均值(已壓縮),乘以日誌保留天數。 例如: 原始日誌需保留3年,共1095日。平均一天原始日誌容量(已壓縮)為100MB。
磁碟保留空間為: 100MB x 1095 = 109.5GB
資料庫 – 視資料庫保留天數,取原始日誌一日平均值(未壓縮)之4倍,乘以保留天數。
例如: 資料庫需保留90天,平均一天原始日誌容量(未壓縮)為2GB。
磁碟保留空間為: 2GB x 4 x 90 = 720GB
日誌格式
許多日誌格式具有不少保留未用的欄位,將其移除後,可節省大量處理時間,也能減少大量資料庫佔用空間。例如未具備防毒模組的防火牆,可將病毒相關欄位全數移除。
CPU效能
CPU直接影響日誌處理速度,目前主流伺服器大多已非效能瓶頸。CPU時脈決定每秒能處理多少行日誌,CPU數量則決定能同時執行多少執行緒。兩者相乘可得最高處理行數,即為最高EPS(Event per Second)值;再加上資料庫索引以及交互關聯表的建立時間,則可得平均EPS。由於每次讀入的資料,以及現有資料庫的大小都不一樣,故每一次執行日誌處理時,EPS值並非固定不變的。故要以EPS值來評估每日能處理多少日誌量並不容易,皆需要進行實測,或以現有數據進行評估。但在日誌來源、現有資料庫大小相同情形下,可作為硬體平台的效能參考值。
記憶體
記憶體永遠不嫌多是不變的道理。不過Sawmill 儲存大部份資料於磁碟,而非記憶體,所以記憶體的使用量一般來說不會很高 (前版 Sawmill 大量使用記憶體,而現在的版本很節省記憶體). 然而 Sawmill 會將儲存部份資訊於記憶體,用於快取以增加效能,如果必要,這些快取可以降低以減少記憶體用量,尤其是快取大小清單,以及可使用最大的緩衝記憶體選項,可以設定較低的數值,以減少記憶體用量。
如果執行中仍會遇到記憶錯誤,請確認使用的是64位元作業系統平台,這可解除 2GB 記憶體限制,在必要的情況下,允許Sawmill使用更多記憶體空間。一般的資料量情況下,每個處理器核心不常達到1GB記憶體用量,所以每個核心配置2GB記憶體通常足夠。但如果您在每個核心配置2GB記憶體的環境中,仍會遇到記憶體不足的情形,就必須昇級到64位元作業系統。
另一個選擇是使用外部資料庫伺服器,由於Sawmill的記憶體使用量大部份是在操作內建的資料庫時,故當Sawmill執行在配置較少量記憶體的主機時,而資料庫伺服器(MySQL,Oracle,or Microsoft SQL Server)執行在擁有較多資源的環境中,指定使用外部資料庫伺服器時,記憶體的用量及管理就交給外部的資料庫伺服器了。
網路
Sawmill在接收日誌、透過網頁管理,以及使用外部資料庫時需要網路連接,網路的頻寬大小決定了接收日誌及外部資料庫的速度。建議以Gigabit Ethernet連接,以避免syslog遺失,或是資料庫寫入延遲所造成的任何不穩定現象。
磁碟I/O效能
由於CPU效能與核心數量愈來愈快又多,記憶體頻寬也成倍地成長,但硬碟的效能仍無法有突破性的成長,故近來經常遇到EPS值極高,但資料庫卻屢屢建立失敗的案例。造成磁碟寫入/讀取失敗的原因很多,其關鍵點在於IOPS(I/O Operation / Second)值。RAID/Disk控制器能承受的IOPS值愈高,資料吞吐量就能愈高,以現有處理器能力,以及大量日誌資料的情形下,最好能有500 IOPS以上的效能,才不致經常發生資料讀寫失敗的情形。
提高IOPS值的方式的主要方式是增加同時讀寫的磁頭,也就是增加磁碟數量,一般在需有資料備援的要求下,均使用RAID 10的組態,藉RAID 1 Mirror功能達成資料備援,同時具有RAID 0多磁碟同時寫入,提昇讀寫速度及I/O承受能力。
|