Open-falcon部署文檔(繪圖及報警)
部署繪圖組件
Agent
採集機器的監控指標, agent與Transfer建立了長連接,數據發送速度比較快,agent提供了一個http接口/v1/push用於接收用戶手工push的一些數據,然後通過長連接迅速轉發給Transfer。
cd agent
mv cfg.example.json cfg.json
vim cfg.json
修改如上圖三處ip,
heartbeat hbs的地址,端口是hbs的rpc端口
transfer 根據需求可以填寫多個。
http :此處可以不修改默認配置,這裏已做修改
./control start (啓動)
./control tail (查看是否報錯)
部署說明:agent需要部署到所有要被監控的機器上,比如公司有10萬臺機器,
那就要部署10萬個agent。agent本身資源消耗很少,不用擔心。
transfer
transfer是數據轉發服務。它接收agent上報的數據,然後按照哈希規則
進行數據分片、並將分片後的數據分別push給graph&judge等組件。
cd transfer
mv cfg.example.json cfg.json(默認配置即可)
./control start (啓動)
./control tail(查看是否報錯)
graph
graph是存儲繪圖數據的組件。graph組件 接收transfer組件推送上來
的監控數據,同時處理query組件的查詢請求、返回繪圖數據。
cd graph
mv cfg.example.json cfg.json
vim cfg.json
./control start (啓動)
./control tail (查看是否報錯)
query 組件,提供統一的繪圖數據查詢入口
cd query
mv cfg.example.json cfg.json (默認配置即可)
./control start (啓動)
./control tail (查看是否報錯)
Dashboard
dashboard是面向用戶的查詢界面。在這裏,用戶可以看到push到
graph中的所有數據,並查看其趨勢圖。
# 安裝virtualenv。需要root權限。
yum install -y python-virtualenv
# 安裝依賴。需要到dashboard的目錄下執行。
cd dashboard
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt
vim gunicorn.conf
vim ./rrd/config.py
./control start (啓動)
./control tail (查看是否報錯)
安裝報警組件:
郵件服務 mail-provider
監控系統產生報警事件之後需要發送報警郵件或者報警短信,如果公司
沒有自己的郵件系統可以就用這塊軟件,比較方便。
mkdir mail-provider
tar -zxf falcon-mail-provider-0.0.1.tar.gz -C mail-provider
cd mail-provider
mv cfg.example.json cfg.json
vim cfg.json
修改如上配置
./control start (啓動)
./control tail (查看是否報錯)
Sender
Sender這個模塊專門用於調用各公司提供的郵件、短信發送接口。
cd sender
mv cfg.example.json cfg.json
vim cfg.json
Sender如上配置,不然發送不了郵件
fe
web前端,這是Go版本的UIC,也是一個統一的web入口,可以在Fe中
維護個人聯繫信息,維護人和組的對應關係
cd fe
mv cfg.example.json cfg.json
vim cfg.json
./control start (啓動)
./control tail (查看是否報錯)
portal
Portal是用來配置報警策略的
cd portal
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt
vim gunicorn.conf
vim frame/config.py
./control start (啓動)
./control tail (查看是否報錯)
HBS
心跳服務器,公司所有agent都會連到HBS,每分鐘發一次心跳請求。
cd hbs
mv cfg.example.json cfg.json
vim cfg.json
./control start (啓動)
./control tail (查看是否報錯)
Judge
用於告警判斷,agent將數據push給Transfer,Transfer不但會轉發給
Graph組件來繪圖,還會轉發給Judge用於判斷是否觸發告警
cd judge
mv cfg.example.json cfg.json
vim cfg.json
./control start (啓動)
./control tail (查看是否報錯)
Alarm
alarm模塊是處理報警event的,judge產生的報警event寫入redis,
alarm從redis讀取處理
cd alarm
mv cfg.example.json cfg.json
vim cfg.json
./control start (啓動)
./control tail (查看是否報錯)
報警合併:
調整alarm配置
把p0,p1添加到high裏,p2-p6添加到low裏。
Links
links組件的作用:當多個告警被合併爲一條告警信息時,
短信中會附帶一個告警詳情的http鏈接地址,供用戶查看詳情。
cd links
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt
vim gunicorn.conf
vim frame/config.py
./control start (啓動)
./control tail (查看是否報錯)
總結:open-falcon照個官方文檔部署的過程中,會遇到一些坑,當初也是花了一段時間才解決,文檔中詳細的配置基本都已列出來,照着部署基本沒問題。
注:還是不太會用這個寫博客,排版可能會有問題,看的話講究看下吧。嘿嘿!