第三方軟件
日志服務支持將日志投遞到SIEM,以確保阿里云上的所有法規、審計與其他相關日志能夠導入到您的安全運維中心(SOC)中。
名詞解釋
SIEM:安全信息與事件管理系統(Security Information and Event Management),如Splunk,IBM QRadar等。
Splunk HEC:Splunk的HTTP事件接收器(Splunk HTTP Event Collector),一個 HTTP或HTTPS接口,用于接收日志。
部署建議
系統參數:Linux(如Ubuntu x64)操作系統。
硬件參數:
2.0+ GHz X 8核。
16 GB內存,推薦32GB。
1 Gbps網卡。
至少2 GB可用磁盤空間,建議10 GB以上。
網絡參數:
從組織內的環境到阿里云的帶寬應該大于數據在阿里云端產生的速度,否則日志無法實時消費。假設數據產生速度均勻,峰值為平時的2倍左右,每天產生1 TB原始日志。數據傳輸為5倍壓縮的場景下,推薦帶寬應該在4 MB/s(32 Mbps)左右。
Python語言:我們用Python語言進行消費。Java 語言用法,請參考通過消費組消費日志。
Python SDK
推薦使用標準CPython解釋器。
日志服務的Python SDK可以使用python3 -m pip install aliyun-log-python-sdk -U命令進行安裝。
更多日志服務Python SDK的使用,請參見User Guide。
協同消費庫
協同消費庫(Consumer Library)是日志服務中對日志進行消費的高級模式,提供了消費組的概念對消費端進行抽象和管理,和直接使用SDK進行數據讀取的區別在于,用戶無需關心日志服務的實現細節,只需要專注于業務邏輯,另外,消費者之間的負載均衡、failover 等用戶也都無需關心。
在日志服務中,一個日志庫(Logstore)下面會有多個分區(Shard),協同消費庫將 shard 分配給一個消費組下面的消費者,分配方式遵循以下原則:
每個shard只會分配到一個消費者。
一個消費者可以同時擁有多個shard。
新的消費者加入一個消費組,這個消費組的 shard 從屬關系會調整,以達到消費負載均衡的目的,但是上面的分配原則不會變,分配過程對用戶透明。
協同消費庫的另一個功能是保存 checkpoint,方便程序故障恢復時能接著從斷點繼續消費,從而保證數據不會被重復消費。
Spark Streaming、Storm 以及 Flink Connector 都以 Consumer Library 作為基礎實現。
投遞方式
推薦使用日志服務消費組構建程序實現實時消費,然后通過HTTPS或者Syslog來發送日志給SIEM。
HTTPS投遞方式請參考通過HTTPS投遞日志到SIEM。
Syslog投遞方式請參考通過Syslog投遞日志到SIEM。