Open-Falcon是小米公司研發(fā)并開源的企業(yè)級監(jiān)控解決方案,旨在解決中等大小公司的運維問題飞苇。
監(jiān)控系統(tǒng)可以說是整個運維系統(tǒng)中最重要的一環(huán)菌瘫。故障發(fā)生時及時告警,降低損失布卡;故障解決后雨让,提供完備的信息有利于問題的追蹤定位;還可以對采集到的數(shù)據(jù)進行分析等忿等。目前國內的中小型IT公司多數(shù)采用Zabbix等開源監(jiān)控系統(tǒng)栖忠,但Zabbix不能橫向擴展,當需要監(jiān)控的資源逐漸增多時贸街,Zabbix有些力不從心庵寞。如BAT級別的大廠可以投入大量資源自研監(jiān)控系統(tǒng),可是多數(shù)公司并不具備這樣的條件薛匪,于是很多中等體量的公司一直陷入“開源系統(tǒng)不夠用”和“自研系統(tǒng)投入太大”的兩難選擇中捐川。
Open-Falcon正是為了解決這個問題而生的。它的橫向擴展能力很好的解決了中等規(guī)模IT公司資源監(jiān)控的問題逸尖,而簡單友好的使用方式也使它很快被廣大公司所接受古沥。目前除了小米之外,Open-Falcon在滴滴娇跟、美團岩齿、京東、360等國內著名IT公司均有使用苞俘。
下面我們來在單機安裝一下Open-Falcon盹沈。關于Open-Falcon的安裝,官網(wǎng)的文檔給出了詳盡的說明苗胀,但是安裝過程中仍然會有一些“坑”襟诸,需要我們自己踩過瓦堵。
服務器采用 CentOS 7 minimal方式安裝。我們跟著官方文檔一步步搭建Open-Falcon歌亲。
一菇用、環(huán)境準備
官網(wǎng)地址:https://book.open-falcon.org/zh_0_2/quick_install/prepare.html
安裝Redis
yum install -y redis
執(zhí)行這個命令時可能會發(fā)生找不到redis包的狀況,這是因為redis不在CentOS 7默認的源當中陷揪,需要我們手動安裝EPEL惋鸥,這里我們使用epel-release-6-8.noarch.rpm:
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
如果找不到 wget 命令,需要先安裝 wget:
yum install wget
安裝完成后悍缠,就可以使用最開始的命令安裝 redis 了卦绣。如果安裝之后使用redis-cli
命令不能連接到 redis 服務器上,說明 redis-server 沒有啟動飞蚓÷烁郏可以手動啟動 redis-server:
nohup redis-server > /dev/null 2>&1 &
安裝MySQL
yum install -y mysql-server
這一步容易出現(xiàn)與上一步相同的問題,即找不到 mysql-server 包趴拧,這是因為CentOS 7 中移除了默認的mysql包溅漾,改為了mariadb。為了安裝mysql著榴,我們同樣需要手動下載添履。
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
然后手動安裝:
rpm -ivh mysql-community-release-el7-5.noarch.rpm
安裝完成后啟動mysql:
mysql -uroot -p
發(fā)現(xiàn)沒有密碼,我們可以手動設置root的密碼:
set password for 'root'@'localhost'=password('your_pwd');
初始化MySQL表結構
這一節(jié)與官網(wǎng)相同脑又,不會遇到什么大的問題暮胧。唯一的一個小問題現(xiàn)在5個.sql
文件的名字略微改動了一下,前面加上了序號问麸。
二往衷、啟動后端
官網(wǎng)地址:https://book.open-falcon.org/zh_0_2/quick_install/backend.html
這一節(jié)沒太多可說的,按照官網(wǎng)步驟一步步來即可口叙。唯一需要注意的一點是炼绘,Open-Falcon中各個組件的配置文件中嗅战,MySQL和Redis的地址默認都是本地妄田,即127.0.0.1,并且MySQL是root用戶不帶密碼驮捍,如果你不是采用與默認配置文件相同的方式則需要修改每個模塊的配置文件疟呐,每個模塊對應的配置文件地址在 $WorkDir/$moduleName/config/cfg.json
中,默認MySQL的配置項為:
"database": "root:@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true"
需要自行加入密碼东且,加在用戶名的“:”后面:
"database": "root:your_pwd@tcp(127.0.0.1:3306)/falcon_portal?loc=Local&parseTime=true"
start
和check
命令官網(wǎng)有詳細的解釋启具。
三、安裝前端
官網(wǎng)地址:https://book.open-falcon.org/zh_0_2/quick_install/frontend.html
由于Open-Falcon的dashboard模塊使用python開發(fā)珊泳,所以前端安裝這一節(jié)基本都是在安裝python相關的依賴鲁冯。注意官網(wǎng)給出的安裝命令都是基于CentOS的拷沸,如果是Ubuntu系統(tǒng),請參考:https://github.com/open-falcon/dashboard#install-dependency薯演。
前端安裝時會遇到一些小問題撞芍。第一個問題是如果在前面安裝redis時安裝了epel-release-6-8.noarch.rpm包,在安裝python依賴時可能會遇到源沖突的問題跨扮,解決辦法就是把之前安裝的epel-release-6-8.noarch.rpm包卸載掉:
yum -y remove epel-release-6-8.noarch
另外如果在最后安裝Flask框架時(執(zhí)行./env/bin/pip install -r pip_requirements.txt
命令)出現(xiàn)由于安全問題不能連接到服務器序无,可以使用:
./env/bin/pip install -r pip_requirements.txt -i http://pypi.doubanio.com/simple
命令進行安裝即可。前端啟動后會看到頁面:
注冊并登錄即可衡创。
四帝嗡、參考
open-falcon "Dashboard" 報SSL錯:http://shadowhk.blog.51cto.com/2903709/1889234