那么如何開始呢?Monasca的微服務(wù)架構(gòu)的一個缺點是部署和管理其中的服務(wù)很復(fù)雜。但另一方面,這種微服務(wù)架構(gòu)是Monasca的優(yōu)勢之一。部署非常靈活,你可以隨著ingest率的增加而水平擴展組件。怎么做到這些呢?
在StackHPC,我們的答案是使用OpenStack Kolla項目,該項目已經(jīng)提供了一些支持基礎(chǔ)設(shè)施。為此,我們一直與Kolla社區(qū)合作,為過去幾個周期中添加對部署Monasca的支持。
這是目前的框圖:

要注意的是:圖中幾乎所有內(nèi)容都可以部署在高度可用的配置中。更棒的是,這一切都由Kolla-Ansible開箱即用來管理。如果你需要三節(jié)點Monasca部署,則只需將三個監(jiān)控節(jié)點添加到Kolla-Ansible清單,然后按照Kolla文檔進行部署。當(dāng)然,值得一提的是,目前這將使用與Kolla-Ansible中的其他組件相同的數(shù)據(jù)庫和負(fù)載均衡服務(wù)。如果這是一個問題,或者你沒有使用Kolla-Ansible來管理OpenStack部署,那么你可以單獨部署Monasca并集成(如果你愿意)使用外部Keystone實例,而不需要由Kolla提供。
那么如何參與?首先是嘗試一下!照著Kolla vagrant文檔以及Monasca的Kolla文檔,這非常容易。一旦運行,你可能會開始考慮要監(jiān)控的事情。例子包括從RabbitMQ集群隊列長度到數(shù)據(jù)庫寫入的任何內(nèi)容。在Kolla-Ansible中添加支持以便開箱即用地收集這些指標(biāo)將是一件很棒的事情。
其次,我們之前提到幾乎所有服務(wù)都可以部署在高度可用的配置中。那么哪些不行? Grafana的Monasca分支是其中之一,InfluxDB需要企業(yè)許可才能進行集群(當(dāng)然,這可以通過購買許可來解決),但Monasca支持Cassandra作為后端,并且對Kolla的支持可以帶來很好的改進。
最后,看看Monasca Grafana分支,這對于Monasca項目來說是長期以來的美中不足。這一分支是為了實現(xiàn)使用你的OpenStack憑證登錄Grafana并通過單一窗格查看OpenStack項目性能的愿景。這是一個我們認(rèn)為值得的愿景,但不幸的是,將Keystone整合到Grafana的努力到目前為止都失敗了,而且這一分支已經(jīng)落后了。需要重新努力將Grafana與Monasca集成,很歡迎你參與其中。