本發(fā)明涉及計算機軟件應用技術領域,尤指一種solr服務的自動部署和監(jiān)控方法及裝置。
背景技術:
在社會快速發(fā)展的今天,各行各業(yè)每天都會產生大量的數據,數據來源囊括了我們周圍可以捕獲的任何類型數據,網站、社交媒體、交易型商業(yè)數據以及其它商業(yè)環(huán)境中創(chuàng)建的數據。面對海量數據的處理操作,應運而生很多大數據服務組件,如hadoop、spark、hbase等。面對這些大數據組件的使用,很多用戶使用和管理要付出大量的時間成本。apacheambari是一種基于web的工具,支持apachehadoop集群的供應、管理和監(jiān)控。面對海量數據,當用戶需要查詢某個信息時,希望得到高質量的搜索結果,幫助他們快速、輕易地找到所需的信息,運營方要求它能夠提供一個可伸縮、高度可用且易于維護的搜索解決方案。
solr服務可以解決這些問題。solr是一個基于lucence的java搜索引擎服務器,對外提供類似于web-service的api接口,用戶可以通過http請求,提交數據文件或者進行查詢。而實際手動部署solr服務的過程中,在集群多個節(jié)點對solr的部署和配置是一項很繁瑣且容易出錯的過程。且當某個solr節(jié)點出現宕機等異常,檢測比較困難。
技術實現要素:
為了解決上述技術問題,本發(fā)明實施例提供了一種solr服務的自動部署和監(jiān)控方法及裝置,能夠解決solr服務在apacheambari管理工具中進行人工部署時的操作繁瑣且易出錯的問題。
為了達到本發(fā)明實施例目的,本發(fā)明實施例提供了一種solr服務的自動部署和監(jiān)控方法,該方法包括:
對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中;
通過apacheambari管理工具對solr服務進行自動監(jiān)控。
可選地,對apacheambari管理工具進行二次開發(fā),將solr服務部署在所述apacheambari管理工具中包括:
通過ambari管理工具中的server向agent發(fā)送關于solr服務的部署請求;
根據該部署請求將solr服務部署在ambari管理工具中的一個或多個agent上。
可選地,根據該部署請求將solr服務部署在ambari管理工具中的一個或多個agent上包括:
agent接收部署請求,以獲取部署solr服務的通知,并接收server發(fā)送的關于solr服務的一個或多個安裝和配置文件;
agent根據安裝和配置文件按照預設流程逐步執(zhí)行針對solr服務的安裝部署、服務配置、服務啟停以及用戶同步,以完成solr服務在agent上的部署。
可選地,通過apacheambari管理工具對solr服務進行自動監(jiān)控包括:
當solr服務正常啟動后,控制agent將solr服務的運行狀態(tài)定時返回給server,server將收集的solr服務的狀態(tài)信息實時反饋到server的網頁web控制臺,實現對solr服務的自動監(jiān)控。
可選地,在server的web控制臺上的solr服務支持與各個大數據服務組件操作的插件啟停配置。
可選地,該方法還包括:預先調用ambari提供的接口函數,自動獲取ambari集群已安裝部署的其它大數據服務的安裝和配置信息,并根據該安裝和配置信息生成安裝和配置文件。
為了達到本發(fā)明實施例目的,本發(fā)明實施例還提供了一種solr服務的自動部署和監(jiān)控裝置,包括:部署模塊和監(jiān)控模塊。
部署模塊,用于對apacheambari管理工具進行二次開發(fā),將所述solr服務部署在所述apacheambari管理工具中;
所述監(jiān)控模塊,用于通過所述apacheambari管理工具對所述solr服務進行自動監(jiān)控。
可選地,部署模塊對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中包括:
通過ambari管理工具中的server向agent發(fā)送關于solr服務的部署請求;
根據部署請求將solr服務部署在ambari管理工具中的一個或多個agent上。
可選地,部署模塊根據部署請求將solr服務部署在ambari管理工具中的一個或多個agent上包括:
控制agent接收部署請求,以獲取部署solr服務的通知,并接收server發(fā)送的關于solr服務的一個或多個安裝和配置文件;
控制agent根據安裝和配置文件按照預設流程逐步執(zhí)行針對solr服務的安裝部署、服務配置、服務啟停以及用戶同步,以完成solr服務在agent上的部署。
可選地,監(jiān)控模塊通過apacheambari管理工具對solr服務進行自動監(jiān)控包括:
當solr服務正常啟動后,控制agent將solr服務的運行狀態(tài)定時返回給server,server將收集的solr服務的狀態(tài)信息實時反饋到server的網頁web控制臺,實現對solr服務的自動監(jiān)控。
可選地,在server的web控制臺上的solr服務支持與各個大數據服務組件操作的插件啟停配置。
可選地,該裝置還包括:調用模塊。
調用模塊,用于預先調用ambari提供的接口函數,自動獲取ambari集群已安裝部署的其它大數據服務的安裝和配置信息,并根據安裝和配置信息生成安裝和配置文件。
本發(fā)明實施例包括對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中;通過apacheambari管理工具對solr服務進行自動監(jiān)控。通過本發(fā)明實施例方案,能夠通過對apacheambari管理工具進行二次開發(fā),自動將solr服務部署在apacheambari管理工具中,解決了solr服務在apacheambari管理工具中進行人工部署時的操作繁瑣且易出錯的問題。
本發(fā)明實施例的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明實施例的目的和其他優(yōu)點可通過在說明書、權利要求書以及附圖中所特別指出的結構來實現和獲得。
附圖說明
附圖用來提供對本發(fā)明實施例技術方案的進一步理解,并且構成說明書的一部分,與本申請的實施例一起用于解釋本發(fā)明實施例的技術方案,并不構成對本發(fā)明實施例技術方案的限制。
圖1為本發(fā)明實施例的solr服務的自動部署和監(jiān)控方法;
圖2為當前的ambari系統(tǒng)架構示意圖;
圖3為本發(fā)明實施例的solr服務在ambari系統(tǒng)中進行服務配置的示意圖;
圖4為本發(fā)明實施例的solr服務的自動部署和監(jiān)控裝置組成框圖。
具體實施方式
為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚明白,下文中將結合附圖對本發(fā)明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。
在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
為了達到本發(fā)明實施例目的,本發(fā)明實施例提供了一種solr服務的自動部署和監(jiān)控方法,如圖1所示,該方法包括s101-s102:
s101、對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中。
在本發(fā)明實施例中,apacheambari是一種基于web的工具,支持apachehadoop集群的安裝部署、管理和監(jiān)控。solr是基于lucene的搜索平臺,具備全文搜索、命中關鍵字高亮顯示、分面搜索、動態(tài)聚類、數據庫集成等特性。本發(fā)明實施例通過基于ambari進行二次開發(fā),在ambari管理工具中集成solr服務,實現solr服務的自動化部署和監(jiān)控。
在本發(fā)明實施例中,如圖2所示為ambari系統(tǒng)架構示意圖,ambari分為兩大部分:ambariserver和ambariagent。ambariserver的restapi中又分為主要的兩大類api,其中一類為ambari-web提供監(jiān)控管理服務,另一類用于與ambari-agent交互,接受ambari-agent向ambari-server發(fā)送心跳請求。master模塊接受api和agentinterface的請求,完成ambari-server的集中式管理監(jiān)控邏輯,而每個agent節(jié)點只負責所在節(jié)點的狀態(tài)采集及維護工作。
在本發(fā)明實施例中,對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中,即在ambari的某一個或者多個agent上安裝部署solr服務。
可選地,對apacheambari管理工具進行二次開發(fā),將solr服務部署在所述apacheambari管理工具中包括s201-s202:
s201、通過ambari管理工具中的server向agent發(fā)送關于solr服務的部署請求。
在本發(fā)明實施例中,在部署初始時刻,用戶可以調用ambari提供的相關安裝模塊函數,并對所述安裝模塊函數進行關于solr服務的安裝編譯,根據該安裝編譯內容,ambariserver可以向一個或多個agent發(fā)送部署請求,以通知agent進行solr服務的部署。
s202、根據該部署請求將solr服務部署在ambari管理工具中的一個或多個agent上。
在本發(fā)明實施例中,agent接收到部署請求后,便開始實施對solr服務的部署。在此之前,需要先獲取solr服務的安裝和配置文件。
可選地,該方法還包括:預先調用ambari提供的接口函數,自動獲取ambari集群已安裝部署的其它大數據服務的安裝和配置信息,并根據該安裝和配置信息生成安裝和配置文件。
在本發(fā)明實施例中,調用ambari的接口函數,自動獲取集群已安裝部署的其它大數據服務的安裝配置信息,并提供用于solr服務的部署。具體地,可以通過ambari提供的api,修改這些安裝配置信息中與solr相關的服務配置屬性,以生成部署solr服務的安裝和配置文件。
可選地,根據該部署請求將solr服務部署在ambari管理工具中的一個或多個agent上包括s301-s302:
s301、agent接收部署請求,以獲取部署solr服務的通知,并接收server發(fā)送的關于solr服務的一個或多個安裝和配置文件;
在本發(fā)明實施例中,agent響應該部署請求以后,server會向此agent發(fā)送部署solr服務必要的安裝和配置文件,以便agent根據該配置文件完成solr服務的部署。
s302、agent根據安裝和配置文件按照預設流程逐步執(zhí)行針對solr服務的安裝部署、服務配置、服務啟停以及服務同步,以完成solr服務在agent上的部署。
在本發(fā)明實施例中,agent可以根據安裝和配置文件在ambari中完成對solr服務的安裝部署、服務配置,并設計solr服務的啟動或者停止模塊,設計獲取solr服務的運行狀態(tài)的監(jiān)控模塊,并添加其它服務信息,如服務同步,包括元數據庫同步,用戶同步等,如圖3所示。
s102、通過apacheambari管理工具對solr服務進行自動監(jiān)控。
可選地,通過apacheambari管理工具對solr服務進行自動監(jiān)控包括:
當solr服務正常啟動后,控制agent將solr服務的運行狀態(tài)定時返回給server,server將收集的solr服務的狀態(tài)信息實時反饋到server的網頁web控制臺,實現對solr服務的自動監(jiān)控。
可選地,在server的web控制臺上的solr服務支持與各個大數據服務組件操作的插件啟停配置。
在本發(fā)明實施例中,該方案在ambariweb端可以支持操作人員選擇在solr服務中使用其它大數據組件服務,對于大數據集群的運維提供了極大的便利。
本發(fā)明實施例方案可以快速的實現solr服務的部署,并同時可以監(jiān)控solr服務的健康狀況,極大的提高安裝部署效率,降低配置solr服務過程中由于相關配置信息過多導致的多重問題,并實現了hadoop集群和solr服務相結合,大大提高了運維人員的操作和使用上的便利。
為了達到本發(fā)明實施例目的,本發(fā)明實施例還提供了一種solr服務的自動部署和監(jiān)控裝置1,如圖4所示,該裝置包括:部署模塊11和監(jiān)控模塊12。
部署模塊11,用于對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中。
在本發(fā)明實施例中,apacheambari是一種基于web的工具,支持apachehadoop集群的安裝部署、管理和監(jiān)控。solr是基于lucene的搜索平臺,具備全文搜索、命中關鍵字高亮顯示、分面搜索、動態(tài)聚類、數據庫集成等特性。本發(fā)明實施例通過基于ambari進行二次開發(fā),在ambari管理工具中集成solr服務,實現solr服務的自動化部署和監(jiān)控。
在本發(fā)明實施例中,如圖2所示為ambari系統(tǒng)架構示意圖,ambari分為兩大部分:ambariserver和ambariagent。ambariserver的restapi中又分為主要的兩大類api,其中一類為ambari-web提供監(jiān)控管理服務,另一類用于與ambari-agent交互,接受ambari-agent向ambari-server發(fā)送心跳請求。master模塊接受api和agentinterface的請求,完成ambari-server的集中式管理監(jiān)控邏輯,而每個agent節(jié)點只負責所在節(jié)點的狀態(tài)采集及維護工作。
在本發(fā)明實施例中,對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中,即在ambari的某一個或者多個agent上安裝部署solr服務。
可選地,部署模塊11對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中包括s401-s402:
s401、通過ambari管理工具中的server向agent發(fā)送關于solr服務的部署請求。
在本發(fā)明實施例中,在部署初始時刻,用戶可以調用ambari提供的相關安裝模塊函數,并對所述安裝模塊函數進行關于solr服務的安裝編譯,根據該安裝編譯內容,部署模塊11可以控制ambariserver向一個或多個agent發(fā)送部署請求,以通知agent進行solr服務的部署。
s402、根據該部署請求將solr服務部署在ambari管理工具中的一個或多個agent上。
在本發(fā)明實施例中,agent接收到部署請求后,便開始實施對solr服務的部署。在此之前,需要先獲取solr服務的安裝和配置文件。
可選地,該裝置還包括:調用模塊13。
調用模塊13,用于預先調用ambari提供的接口函數,自動獲取ambari集群已安裝部署的其它大數據服務的安裝和配置信息,并根據安裝和配置信息生成安裝和配置文件。
在本發(fā)明實施例中,調用ambari的接口函數,自動獲取集群已安裝部署的其它大數據服務的安裝配置信息,并提供用于solr服務的部署。具體地,可以通過ambari提供的api,修改這些安裝配置信息中與solr相關的服務配置屬性,以生成部署solr服務的安裝和配置文件。
可選地,部署模塊11根據部署請求將solr服務部署在ambari管理工具中的一個或多個agent上包括s501-s502:
s501、控制agent接收部署請求,以獲取部署solr服務的通知,并接收server發(fā)送的關于solr服務的一個或多個安裝和配置文件。
在本發(fā)明實施例中,agent響應該部署請求以后,部署模塊11可以控制server向此agent發(fā)送部署solr服務必要的安裝和配置文件,以便agent根據該配置文件完成solr服務的部署。
s502、控制agent根據安裝和配置文件按照預設流程逐步執(zhí)行針對solr服務的安裝部署、服務配置、服務啟停以及用戶同步,以完成solr服務在agent上的部署。
在本發(fā)明實施例中,agent可以根據安裝和配置文件在ambari中完成對solr服務的安裝部署、服務配置,并設計solr服務的啟動或者停止模塊,設計獲取solr服務的運行狀態(tài)的監(jiān)控模塊,并添加其它服務信息,如服務同步,包括元數據庫同步,用戶同步等。
所述監(jiān)控模塊12,用于通過apacheambari管理工具對solr服務進行自動監(jiān)控。
可選地,監(jiān)控模塊通過apacheambari管理工具對solr服務進行自動監(jiān)控包括:
當solr服務正常啟動后,控制agent將solr服務的運行狀態(tài)定時返回給server,server將收集的solr服務的狀態(tài)信息實時反饋到server的網頁web控制臺,實現對solr服務的自動監(jiān)控。
可選地,在server的web控制臺上的solr服務支持與各個大數據服務組件操作的插件啟停配置。
在本發(fā)明實施例中,該方案在ambariweb端可以支持操作人員選擇在solr服務中使用其它大數據組件服務,對于大數據集群的運維提供了極大的便利。
本發(fā)明實施例方案可以快速的實現solr服務的部署,并同時可以監(jiān)控solr服務的健康狀況,極大的提高安裝部署效率,降低配置solr服務過程中由于相關配置信息過多導致的多重問題,并實現了hadoop集群和solr服務相結合,大大提高了運維人員的操作和使用上的便利。
本發(fā)明實施例包括對apacheambari管理工具進行二次開發(fā),將solr服務部署在apacheambari管理工具中;通過apacheambari管理工具對solr服務進行自動監(jiān)控。通過本發(fā)明實施例方案,能夠通過對apacheambari管理工具進行二次開發(fā),自動將solr服務部署在apacheambari管理工具中,解決了solr服務在apacheambari管理工具中進行人工部署時的操作繁瑣且易出錯的問題。
雖然本發(fā)明所揭露的實施方式如上,但所述的內容僅為便于理解本發(fā)明而采用的實施方式,并非用以限定本發(fā)明。任何本發(fā)明所屬領域內的技術人員,在不脫離本發(fā)明所揭露的精神和范圍的前提下,可以在實施的形式及細節(jié)上進行任何的修改與變化,但本發(fā)明的專利保護范圍,仍須以所附的權利要求書所界定的范圍為準。