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