本文轉載自【微信公眾號:WalkingCloud,ID:WalkingCloud2018】,經微信公眾號授權轉載,如需轉載與原文作者聯繫
Open-Falcon
Open-Falcon是由小米開啟的一款企業級、高可用、可擴展的開源監控解決方案
特點與優勢如下
1、強大靈活的數據採集:自動發現,支持falcon-agent、snmp、支持用戶主動push、用戶自定義插件支持、opentsdb data model like(timestamp、endpoint、metric、key-value tags)
2、水平擴展能力:支持每個周期上億次的數據採集、告警判定、歷史數據存儲和查詢
3、高效率的告警策略管理:高效的portal、支持策略模板、模板繼承和覆蓋、多種告警方式、支持callback調用
4、人性化的告警設置:最大告警次數、告警級別、告警恢復通知、告警暫停、不同時段不同閾值、支持維護周期
5、高效率的graph組件:單機支撐200萬metric的上報、歸檔、存儲(周期為1分鐘)
6、高效的歷史數據query組件:採用rrdtool的數據歸檔策略,秒級返回上百個metric一年的歷史數據
7、dashboard:多維度的數據展示,用戶自定義Screen
8、高可用:整個系統無核心單點,易運維,易部署,可水平擴展
9、開發語言:整個系統的後端,全部golang編寫,portal和dashboard使用python編寫
Open-Falcon 專為現代分布式系統設計的開源和企業級監視系統。
架構圖
CentOS7下部署單機版本Open-Falcon
參考官方文檔 https://book.open-falcon.org/zh_0_2/quick_install/
1、環境準備
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo
yum clean all
yum makecache
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
2、安裝golang,redis,mariadb所需組件
yum install -y golang
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
yum install -y redis
systemctl start redis
systemctl enable redis
yum install -y mariadb mariadb-server
systemctl start mariadb
systemctl enable mariadb
mysqladmin -uroot password "openfalcon"
3、導入open-falcon資料庫
mkdir -p /home/work/open-falcon
cd /home/work/open-falcon
git clone https://github.com/open-falcon/falcon-plus.git
cd /home/work/open-falcon/falcon-plus/scripts/mysql/db_schema
mysql -h 127.0.0.1 -u root -popenfalcon < 1_uic-db-schema.sql
mysql -h 127.0.0.1 -u root -popenfalcon < 2_portal-db-schema.sql
mysql -h 127.0.0.1 -u root -popenfalcon < 3_dashboard-db-schema.sql
mysql -h 127.0.0.1 -u root -popenfalcon < 4_graph-db-schema.sql
mysql -h 127.0.0.1 -u root -popenfalcon < 5_alarms-db-schema.sql
4、下載open-falcon-v0.3版本二進位包
https://github.com/open-falcon/falcon-plus/releases/download/v0.3/open-falcon-v0.3.tar.gz
cd /home/work/
mkdir open-falcon
wget https://github.com/open-falcon/falcon-plus/releases/download/v0.3/open-falcon-v0.3.tar.gz
tar -zxvf open-falcon-v0.3.tar.gz -C /home/work/open-falcon/
5、先部署後端
sed -i 's#root:@tcp(127.0.0.1:3306)#root:openfalcon@tcp(127.0.0.1:3306)#g' `find ./ -type f -name "cfg.json"|egrep "alarm|api|nodata|hbs|graph|aggregator"`
cat `find ./ -type f -name "cfg.json"|egrep "alarm|api|nodata|hbs|graph|aggregator"` |grep 'root:openfalcon@tcp(127.0.0.1:3306)'
./open-falcon start
或者參考官網的操作
cd $WORKSPACE
grep -Ilr 3306 ./ | xargs -n1 -- sed -i 's/root:/real_user:real_password/g'
6、部署前端
cd /home/work/
git clone https://github.com/open-falcon/dashboard.git
cd dashboard
yum install -y python-virtualenv python-devel openldap-devel mysql-devel
yum groupinstall -y "Development tools"
virtualenv ./env
./env/bin/pip install -r pip_requirements.txt -i https://pypi.douban.com/simple
修改配置 修改資料庫連接密碼,dashboard的配置文件為:rrd/config.py
然後啟動dashboard
./control start
7、訪問並體驗WebUI界面
1、先測試啟動自身Agent進行測試 ./open-falcon start agent 啟動進程
2、登錄web界面,新增一個root用戶,然後登錄
3、查看endpoint有沒有上線,刷新counter列表,可以看到監控指標
4、添加host後,點擊host可以直接查看該host的監控信息與狀況
更多功能可以自行嘗試(未完待續)
本文轉載自【微信公眾號:WalkingCloud,ID:WalkingCloud2018】,經微信公眾號授權轉載,如需轉載與原文作者聯繫