OpenStack監(jiān)控組件Ceilometer與Folsom結(jié)合部署
之前項目一直在使用OpenStack的Folsom版本進行二次開發(fā),對nova等模塊都有著不小的改動,因此當(dāng)新版本的OpenStack(Grizzly)發(fā)布之后,一些新的功能模塊不能夠很快的移植到新開發(fā)的項目之中。由于之前版本的OpenStack的系統(tǒng)監(jiān)控功能相對較薄弱,所以一直采用kanyun + ganglia再加上openstack提供的簡單監(jiān)控功能進行系統(tǒng)監(jiān)控,頗為山寨,因此在G版本發(fā)布帶來監(jiān)控功能模塊ceilometer之后,需要將其同原有系統(tǒng)相結(jié)合,以下為結(jié)合部署心得:
1. 到github下載***的ceilometer代碼;
2.安裝mongodb, 由于ceilometer采用mongodb作為默認(rèn)數(shù)據(jù)持久化數(shù)據(jù)庫,所以需要先安裝mongodb;
- apt-get install mongodb
3.在keystone中添加ceilometer用戶
需注意:添加的ceilometer賬戶需要屬于admin tenant否則會出現(xiàn)不能獲取實例監(jiān)控信息的情況,并且將此賬戶添加為ResellerAdmin角色中便于獲取swift監(jiān)控信息。
4.安裝ceilometer,首先查看模塊所依賴的包:
- vim ceilometer/requirements.txt
- d2to1>=0.2.10,<0.3
- pbr>=0.5,<0.6
- WebOb>=1.2
- kombu
- iso8601
- argparse
- SQLAlchemy>=0.7,<=0.7.99
- sqlalchemy-migrate>=0.7.2
- pymongo>=2.2
- eventlet
- anyjson>=0.2.4
- Flask==0.9
- pecan>=0.2.0
- stevedore>=0.7
- msgpack-python
- python-glanceclient
- python-novaclient>=2.6.10
- python-keystoneclient>=0.2.3
- python-swiftclient
- lxml
- requests>=1.1
- wsme>=0.5b2
- pyyaml
- oslo.config>=1.1.0
- happybase>=0.4
此版本ceilometer使用G版本Openstack中新加的oslo.config模塊完成配置文件讀取模塊。
此外要求WebOb的版本要在1.2以上,查看F版本Openstack使用的此庫版本為1.0.8,這是比較大的沖突,并且發(fā)現(xiàn)有很多人反映此庫與之前的庫不兼容的情況,在我實際的安裝過程中也發(fā)現(xiàn)此庫不能被python-novaclient, python-glanceclient等庫所使用。于是我使用virtualenv建立了一個隔離的python環(huán)境來安裝運行ceilometer及相關(guān)依賴。