簡報說明
Bigstack 主辦 Bigshare 2026「開放引力,啟動雲端新軌道:AI、邊緣與多雲生態」議程,與 Bigstack 開發者關係 Brian Su 共同分享。
採用 Graylog 把 CubeCOS 海量記錄轉為可決策的監控平台。
活動資訊:https://www.bigstack.co/zh-tw/events-and-news/bigshare-2026
逐頁文字
CubeCOS × Graylog
記錄觀測實戰
將 CubeCOS 海量 log 轉為可決策的監控平台
技術總監
鄭郁霖
JASON CHENG節省工具箱有限公司 / 創辦人兼技術總監
中華民國軟體自由協會 / 常務理事
簡介
耀達電腦、晟鑫科技、五倍紅寶石、豐康科技等 / 技術顧問資展國際、崑山科大推廣教育 / 講師
2020, 2022 InfoSec Taiwan 台灣國際資安大會 / 講者
2020 COSCUP 開源人年會 / 講者
2019 OpenInfra Days Taiwan / 講者
鄭郁霖 2019, 2024, 2025 CyberSec Taiwan 台灣資安大會 / 講者
JASON CHENG
2018, 2019 國際資訊安全組織台灣高峰會 / 講者CEH, ISO 27001 LA
為何會有這個主題
「VM 何時做了啥操作?」
「CubeCOS 何時發生異常?」
「要怎獨立存放合規記錄?」
「內建 ELK 但我比較熟 Graylog 捏?」* 做為雲原生平台,每天百萬筆記錄要怎麼大海撈針?
架構
CubeCOS 內建
CubeCOS 出廠已內建整套 log stack架構
*為方便理解避免圖過大複雜,此架構圖精簡部份層級未繪製
記錄外拋架構
Logstash 負責接收與轉送,欄位結構化都在 Graylog 端處理架構
syslog 30514/udp
想說好收,馬上踩坑
本來以為是標準 syslog 結果收不進來...想說好收,馬上踩坑
本來以為是標準 syslog 結果收不進來...架構
0 ! ?
記錄格式差異
乍看著像 syslog 但其實不是,所以被 drop架構
CubeCOS (RFC 3164 + Logstach JSON quirk)
<13> May 18 06:58:31 {"name":"bigcc1"} LOGSTASH[-]: 2026-05-18T14:58:30...PRI timestamp Hostname TAG[PID] MSG
記錄格式差異
乍看著像 syslog 但其實不是,所以被 drop架構
CubeCOS (RFC 3164 + Logstach JSON quirk)
<13> May 18 06:58:31 {"name":"bigcc1"} LOGSTASH[-]: 2026-05-18T14:58:30...PRI timestamp Hostname TAG[PID] MSG
塞 JSON 非標準格式syslog (RFC 3164 BSD)
<13> May 18 06:58:31 bigcc1 nova-compute[12345]: Instance destroyed such…PRI timestamp Hostname TAG[PID] MSG
記錄外拋架構調整
Logstash 負責接收與轉送,欄位結構化都在 Graylog 端處理架構
raw 35556/udp
解決欄位問題
直接收 RAW log 進來,將內容拆解為個別欄位架構
應用系統記錄來源
超多種服務、程式、系統產生記錄,各有不同,怎麼拆解架構
OpenStack 核心服務 系統 / 基礎服務
nova (28) systemd 家族 (4)
cinder (12) influxd
neutron (16) filebeat + auditbeat
masakari + masakarimonitors (7) pacemaker (2)
keystone + keystonemiddleware (8) httpd / haproxy
manila (3) kernel / rsyslogd / logrotate
heat (2) CubeCOS 平台服務 chronyd / named
octavia (11) hex_config rabbitmq-server
glance + glance_store (2) cube-cos-api dockerd
oslo.* (8) dmapi-api
Ceph 儲存服務
dnf / dnf-automatic
eventlet.wsgi.server (1) monasca-statsd ceph-mgr (1)
ovsdbapp (1) tvault-contego ceph-osd (36)
hex_sdk ceph-mon (1)
workloadmgr-workloads radosgw (1)
workloadmgr-api ceph-mds (1)拆解欄位內容
採架構用
pipeline 從頭拆解內容,搭配 stage 分層與分序處理抓出來源 host
Stage 1 認 log 是哪一種
Stage 2 抽出「主角」欄位
細節+占位符清理
建置時間/狀態/ Ceph 單位換算
Stage 4 VM生命週期+異常分類
用真實事件時間覆寫
不是 Graylog 收到的時間記錄來源數量比例
這麼多記錄與數量,欄位拆完了但要從何看起?架構
格式
• OpenStack 服務看板
VM 操作
看板
重開機
開機
關機
刪除
其它操作* 由於 log 中僅存有 vm 與 user uuid,若需顯 vm/user name 須日後搭配 lookup table 整合 CubeCOS API
異常事件
看板
MariaDB
Corosync
OVN
Heat
MQ
VM
其它Ceph
看板
異常事件
讀且吐量
Iops效能
已用空間Ceph
看板
PG 狀態
平均Iops
平均吞吐
已用容量
可用容量API 效能
看板
呼叫總量
錯誤總數
平均回應
時間熱圖
來源排服務健康
看板
錯誤總數
錯誤來源
嚴重程度
時間趨勢認證稽核
看板
API
Keystone
認證成功
認證失敗告警
警報通知
告警
重大事件
事件定義
程度歸類
寄送通知MySQL 連線中斷
HTTP 5xx 伺服器錯誤
4xx 認證失敗
危險操作偵測 (DELETE)
寄信警報內容
告警
範本設計
個別配置
對應欄位警報內容
告警
範本設計
個別配置
對應欄位成果
最新建置版本
拆解完欄位,並製作對應看板警規則成果
PIPELINE DA S H B OA R D A L E RT147
條 Pipeline 規則
210
個 Widgets 區塊
12
條 Alert 規則11 個主題 ,包含 VM 操作稽核 含 MariaDB 斷線、Corosync 失敗、
把 8 種格式、20+ 個欄位一條一條解
(35)、稽核與認證 (23)。 VM 反覆 Reboot、危險 DELETE 操
析出來,全部跑在 7 個 stage 裡。
作偵測 ...匯入使
GitHub 下載,Graylog 匯入 Content Pack 即可https://github.com/jasoncheng7115/it-scripts/blob/master/graylog/cubecos_contentpack_graylog63.json
謝謝您。
節省工具箱有限公司
企業應用開源軟體方案導入專家