各种软件的含义和特点
一、 heartbeat的概念
Linux-HA的全稱是High-Availability Linux,它是一個開源項目,這個開源項目的目標是:通過社區開發者的共同努力,提供一個增強linux可靠性(reliability)、可用性 (availability)和可服務性(serviceability)(RAS)的群集解決方案。其中Heartbeat就是Linux-HA項目中 的一個組件,也是目前開源HA項目中最成功的一個例子,它提供了所有 HA 軟件所需要的基本功能,比如心跳檢測和資源接管、監測群集中的系統服務、在群集中的節點間轉移共享 IP 地址的所有者等,自1999年開始到現在,Heartbeat在行業內得到了廣泛的應用,也發行了很多的版本,可以從Linux-HA的官方網站www.linux-ha.org下載到Heartbeat的最新版本。
?
二、 HA集群中的相關術語
1.節點(node)
運行heartbeat進程的一個獨立主機,稱為節點,節點是HA的核心組成部分,每個節點上運行著操作系統和heartbeat軟件服務,在 heartbeat集群中,節點有主次之分,分別稱為主節點和備用/備份節點,每個節點擁有唯一的主機名,并且擁有屬于自己的一組資源,例如,磁盤、文件 系統、網絡地址和應用服務等。主節點上一般運行著一個或多個應用服務。而備用節點一般處于監控狀態。
2.資源(resource)
資源是一個節點可以控制的實體,并且當節點發生故障時,這些資源能夠被其它節點接管,heartbeat中,可以當做資源的實體有:
? 磁盤分區、文件系統
? IP地址
? 應用程序服務
? NFS文件系統
3.事件(event)
也就是集群中可能發生的事情,例如節點系統故障、網絡連通故障、網卡故障、應用程序故障等。這些事件都會導致節點的資源發生轉移,HA的測試也是基于這些事件來進行的。
4.動作(action)
?事件發生時HA的響應方式,動作是由shell腳步控制的,例如,當某個節點發生故障后,備份節點將通過事先設定好的執行腳本進行服務的關閉或啟動。進而接管故障節點的資源。
三、 Heartbeat的組成與原理
1.Heartbeat的組成
Heartbeat提供了高可用集群最基本的功能,例如,節點間的內部通信方式、集群合作管理機制、監控工具和失效切換功能等等,目前的最新版本是 Heartbeat2.x,這里的講述也是以Heartbeat2.x為主,下面介紹Heartbeat2.0的內部組成,主要分為以下幾大部分:
? heartbeat: 節點間通信檢測模塊
? ha-logd: 集群事件日志服務
? CCM(ConsensusCluster Membership):集群成員一致性管理模塊
? LRM (LocalResource Manager):本地資源管理模塊
? Stonith Daemon: 使出現問題的節點從集群環境中脫離
? CRM(Clusterresource management):集群資源管理模塊
? Cluster policy engine: 集群策略引擎
? Cluster transition engine:集群轉移引擎
圖1顯示了Heartbeat2.0內部結構組成:
?Heartbeat僅僅是個HA軟件,它僅能完成心跳監控和資源接管,不會監視它控制的資源或應用程序,要監控資源和應用程序是否運行正常,必須使用第三方的插件,例如ipfail、Mon、Ldirector等。Heartbeat自身包含了幾個插件,分別是ipfail、Stonith和Ldirectord,介紹如下:
? ? ipfail的功能直接包含在Heartbeat里面,主要用于檢測網絡故障,并作出合理的反應,為了實現這個功能,ipfail使用ping節點或者ping節點組來檢測網絡連接是否出現故障,從而及時的做出轉移措施。
? ? Stonith插件可以在一個沒有響應的節點恢復后,合理接管集群服務資源,防止數據沖突,當一個節點失效后,會從集群中刪除,如果不使用Stonith 插件,那么失效的節點可能會導致集群服務在多于一個節點運行,從而造成數據沖突甚至是系統崩潰。因此,使用Stonith插件可以保證共享存儲環境中的數 據完整性。
? ? Ldirector是一個監控集群服務節點運行狀態的插件。Ldirector如果監控到集群節點中某個服務出現故障,就屏蔽此節點的對外連接功能,同時將后續請求轉移到正常的節點提供服務,這個插件經常用在LVS負載均衡集群中,關于Ldirector插件的使用,將在后面詳細講述。
? 同樣,對于操作系統自身出現的問題,Heartbeat也無法監控,如果主節點操作系統掛起,一方面可能導致服務中斷,另一方面由于主節點資源無法釋放,而備份節點卻接管了主節點的資源,此時就發生了兩個節點同時爭用一個資源的狀況。
針對這個問題,就需要在linux內核中啟用一個叫watchdog的模塊,watchdog是一個Linux內核模塊,它通過定時向/dev /watchdog設備文件執行寫操作,從而確定系統是否正常運行,如果watchdog認為內核掛起,就會重新啟動系統,進而釋放節點資源。
在linux中完成watchdog功能的軟件叫softdog,softdog維護一個內部計時器,此計時器在一個進程寫入/dev/watchdog 設備文件時更新,如果softdog沒有看到進程寫入/dev/watchdog文件,就認為內核可能出了故障。watchdog超時周期默認是一分鐘,可以通過將watchdog集成到Heartbeat中,從而通過Heartbeat來監控系統是否正常運行。
2.Heartbeat的工作原理
從圖18.1可以看出,heartbeat內部結構有三大部分組成。
集群成員一致性管理模塊(CCM)用于管理集群節點成員,同時管理成員之間的關系和節點間資源的分配,heartbeat模塊負責檢測主次節點的運行狀態,以決定節點是否失效。ha-logd模塊用于記錄集群中所有模塊和服務的運行信息。
本地資源管理器(LRM)負責本地資源的啟動,停止和監控,一般由LRM守護進程lrmd和節點監控進程(Stonith Daemon)組成,lrmd守護進程負責節點間的通信,Stonith Daemon通常是一個Fence設備,主要用于監控節點狀態,當一個節點出現問題時處于正常狀態的節點會通過Fence設備將其重啟或關機以釋放IP、 磁盤等資源,始終保持資源被一個節點擁有,防止資源爭用的發生。
集群資源管理模塊(CRM)用于處理節點和資源之間的依賴關系,同時,管理節點對資源的使用,一般由CRM守護進程crmd、集群策略引擎和集群轉移引擎 三個部分組成,集群策略引擎(Cluster policy engine)具體實施這些管理和依賴,集群轉移引擎(Clustertransition engine)監控CRM模塊的狀態,當一個節點出現故障時,負責協調另一個節點上的進程進行合理的資源接管。
在Heartbeat集群中,最核心的是heartbeat模塊的心跳監測部分和集群資源管理模塊的資源接管部分,心跳監測一般由串行接口通過串口線來實現,兩個節點之間通過串口線相互發送報文來告訴對方自己當前的狀態,如果在指定的時間內未受到對方發送的報文,那么就認為對方失效,這時資源接管模塊將啟 動,用來接管運行在對方主機上的資源或者服務。
?
常用的負載均衡軟件詳解
?
一、 負載均衡分類
?
1. 硬件負載均衡
常見的硬件有比較昂貴的F5和Array等商用的負載均衡器,它的優點就是有專業的維護團隊來對這些服務進行維護、缺點就是花銷太大,所以對于規模較小的網絡服務來說暫時還沒有需要使用。
?
2. 軟件負載均衡
目前使用最廣泛的三種負載均衡軟件Nginx/LVS/HAProxy,他們都是基于Linux的開源免費的負載均衡軟件,這些都是通過軟件級別來實現,所以費用非常低廉。
?
3. 成熟的架構
成熟的架構有LVS+Keepalived、Nginx+Keepalived、HAProxy+keepalived。
?
二、 優缺點分析
?
1. Nginx的優點是:
1.1、工作在網絡的7層之上,可以針對http應用做一些分流的策略,比如針對域名、目錄結構,它的正則規則比HAProxy更為強大和靈活,這也是它目前廣泛流行的主要原因之一,Nginx單憑這點可利用的場合就遠多于LVS了。
?
1.2、Nginx對網絡穩定性的依賴非常小,理論上能ping通就就能進行負載功能,這個也是它的優勢之一;相反LVS對網絡穩定性依賴比較大;
?
1.3、Nginx安裝和配置比較簡單,測試起來比較方便,它基本能把錯誤用日志打印出來。LVS的配置、測試就要花比較長的時間了,LVS對網絡依賴比較大。
?
1.4、可以承擔高負載壓力且穩定,在硬件不差的情況下一般能支撐幾萬次的并發量,負載度比LVS相對小些。
?
1.5、Nginx可以通過端口檢測到服務器內部的故障,比如根據服務器處理網頁返回的狀態碼、超時等等,并且會把返回錯誤的請求重新提交到另一個節點,不過其中缺點就是不支持url來檢測。比如用戶正在上傳一個文件,而處理該上傳的節點剛好在上傳過程中出現故障,Nginx會把上傳切到另一臺服務器重新處理,而LVS就直接斷掉了,如果是上傳一個很大的文件或者很重要的文件的話,用戶可能會因此而不滿。
?
1.6、Nginx不僅僅是一款優秀的負載均衡器/反向代理軟件,它同時也是功能強大的Web應用服務器。LNMP也是近幾年非常流行的web架構,在高流量的環境中穩定性也很好。
?
1.7、Nginx現在作為Web反向加速緩存越來越成熟了,速度比傳統的Squid服務器更快,可以考慮用其作為反向代理加速器。
?
1.8、Nginx可作為中層反向代理使用,這一層面Nginx基本上無對手,唯一可以對比Nginx的就只有lighttpd了,不過lighttpd目前還沒有做到Nginx完全的功能,配置也不那么清晰易讀,社區資料也遠遠沒Nginx活躍。
?
1.9、Nginx也可作為靜態網頁和圖片服務器,這方面的性能也無對手。還有Nginx社區非?;钴S,第三方模塊也很多。
?
2. Nginx的缺點是:
?
2.1、Nginx僅能支持http、https和Email協議,這樣就在適用范圍上面小些,這個是它的缺點。
?
2.2、對后端服務器的健康檢查,只支持通過端口來檢測,不支持通過url來檢測。不支持Session的直接保持,但能通過ip_hash來解決。
?
2.3、LVS:使用Linux內核集群實現一個高性能、高可用的負載均衡服務器,它具有很好的可伸縮性(Scalability)、可靠性(Reliability)和可管理性(Manageability)。
?
3.?Nginx常用四種算法:
?
3.1、rr:輪叫,輪流分配到后端服務器;
3.2、wrr:權重輪叫,根據后端服務器負載情況來分配;
3.3、lc:最小連接,分配已建立連接最少的服務器上;
3.4、wlc:權重最小連接,根據后端服務器處理能力來分配。
?
?
4. LVS的優點是:
?
4.1、抗負載能力強、是工作在網絡4層之上僅作分發之用,沒有流量的產生,這個特點也決定了它在負載均衡軟件里的性能最強的,對內存和cpu資源消耗比較低。
?
4.2、配置性比較低,這是一個缺點也是一個優點,因為沒有可太多配置的東西,所以并不需要太多接觸,大大減少了人為出錯的幾率。
?
4.3、工作穩定,因為其本身抗負載能力很強,自身有完整的雙機熱備方案,如LVS+Keepalived,不過我們在項目實施中用得最多的還是LVS/DR+Keepalived。
?
4.4、無流量,LVS只分發請求,而流量并不從它本身出去,這點保證了均衡器IO的性能不會收到大流量的影響。
?
4.5、應用范圍比較廣,因為LVS工作在4層,所以它幾乎可以對所有應用做負載均衡,包括http、數據庫、在線聊天室等等。
?
5. LVS的缺點是:
?
5.1、軟件本身不支持正則表達式處理,不能做動靜分離;而現在許多網站在這方面都有較強的需求,這個是Nginx/HAProxy+Keepalived的優勢所在。
?
5.2、如果是網站應用比較龐大的話,LVS/DR+Keepalived實施起來就比較復雜了,特別后面有Windows Server的機器的話,如果實施及配置還有維護過程就比較復雜了,相對而言,Nginx/HAProxy+Keepalived就簡單多了。
?
?
6. Nginx常用四種算法:
?
6.1.roundrobin:輪詢,輪流分配到后端服務器;
6.2.static-rr:根據后端服務器性能分配;
6.3.leastconn:最小連接者優先處理;
6.4.source:根據請求源IP,與Nginx的IP_Hash類似。
?
7. HAProxy的特點是:
?
7.1、HAProxy也是支持虛擬主機的。
?
7.2、HAProxy的優點能夠補充Nginx的一些缺點,比如支持Session的保持,Cookie的引導;同時支持通過獲取指定的url來檢測后端服務器的狀態。
?
7.3、HAProxy跟LVS類似,本身就只是一款負載均衡軟件;單純從效率上來講HAProxy會比Nginx有更出色的負載均衡速度,在并發處理上也是優于Nginx的。
?
7.4、HAProxy支持TCP協議的負載均衡轉發,可以對MySQL讀進行負載均衡,對后端的MySQL節點進行檢測和負載均衡,大家可以用LVS+Keepalived對MySQL主從做負載均衡。
?
7.5、HAProxy負載均衡策略非常多,HAProxy的負載均衡算法現在具體有如下8種:
?
① roundrobin,表示簡單的輪詢,這個不多說,這個是負載均衡基本都具備的;
② static-rr,表示根據權重,建議關注;
③ leastconn,表示最少連接者先處理,建議關注;
④ source,表示根據請求源IP,這個跟Nginx的IP_hash機制類似,我們用其作為解決session問題的一種方法,建議關注;
⑤ ri,表示根據請求的URI;
⑥ rl_param,表示根據請求的URl參數’balance url_param’ requires an URL parameter name;
⑦ hdr(name),表示根據HTTP請求頭來鎖定每一次HTTP請求;
⑧ rdp-cookie(name),表示根據據cookie(name)來鎖定并哈希每一次TCP請求。
?
三、 Nginx和LVS對比的總結:
?
1、Nginx工作在網絡的7層,所以它可以針對http應用本身來做分流策略,比如針對域名、目錄結構等,相比之下LVS并不具備這樣的功能,所以Nginx單憑這點可利用的場合就遠多于LVS了;但Nginx有用的這些功能使其可調整度要高于LVS,所以經常要去觸碰觸碰,觸碰多了,人為出問題的幾率也就會大。
?
2、Nginx對網絡穩定性的依賴較小,理論上只要ping得通,網頁訪問正常,Nginx就能連得通,這是Nginx的一大優勢!Nginx同時還能區分內外網,如果是同時擁有內外網的節點,就相當于單機擁有了備份線路;LVS就比較依賴于網絡環境,目前來看服務器在同一網段內并且LVS使用direct方式分流,效果較能得到保證。另外注意,LVS需要向托管商至少申請多一個ip來做Visual IP,貌似是不能用本身的IP來做VIP的。要做好LVS管理員,確實得跟進學習很多有關網絡通信方面的知識,就不再是一個HTTP那么簡單了。
?
3、Nginx安裝和配置比較簡單,測試起來也很方便,因為它基本能把錯誤用日志打印出來。LVS的安裝和配置、測試就要花比較長的時間了;LVS對網絡依賴比較大,很多時候不能配置成功都是因為網絡問題而不是配置問題,出了問題要解決也相應的會麻煩得多。
?
4、Nginx也同樣能承受很高負載且穩定,但負載度和穩定度差LVS還有幾個等級:Nginx處理所有流量所以受限于機器IO和配置;本身的bug也還是難以避免的。
?
5、Nginx可以檢測到服務器內部的故障,比如根據服務器處理網頁返回的狀態碼、超時等等,并且會把返回錯誤的請求重新提交到另一個節點。目前LVS中 ldirectd也能支持針對服務器內部的情況來監控,但LVS的原理使其不能重發請求。比如用戶正在上傳一個文件,而處理該上傳的節點剛好在上傳過程中出現故障,Nginx會把上傳切到另一臺服務器重新處理,而LVS就直接斷掉了,如果是上傳一個很大的文件或者很重要的文件的話,用戶可能會因此而惱火。
?
6、Nginx對請求的異步處理可以幫助節點服務器減輕負載,假如使用apache直接對外服務,那么出現很多的窄帶鏈接時apache服務器將會占用大量內存而不能釋放,使用多一個Nginx做apache代理的話,這些窄帶鏈接會被Nginx擋住,apache上就不會堆積過多的請求,這樣就減少了相當多的資源占用。這點使用squid也有相同的作用,即使squid本身配置為不緩存,對apache還是有很大幫助的。
?
7、Nginx能支持http、https和email(email的功能比較少用),LVS所支持的應用在這點上會比Nginx更多。在使用上,一般最前端所采取的策略應是LVS,也就是DNS的指向應為LVS均衡器,LVS的優點令它非常適合做這個任務。重要的ip地址,最好交由LVS托管,比如數據庫的 ip、webservice服務器的ip等等,這些ip地址隨著時間推移,使用面會越來越大,如果更換ip則故障會接踵而至。所以將這些重要ip交給 LVS托管是最為穩妥的,這樣做的唯一缺點是需要的VIP數量會比較多。Nginx可作為LVS節點機器使用,一是可以利用Nginx的功能,二是可以利用Nginx的性能。當然這一層面也可以直接使用squid,squid的功能方面就比Nginx弱不少了,性能上也有所遜色于Nginx。Nginx也可作為中層代理使用,這一層面Nginx基本上無對手,唯一可以撼動Nginx的就只有lighttpd了,不過lighttpd目前還沒有能做到 Nginx完全的功能,配置也不那么清晰易讀。另外,中層代理的IP也是重要的,所以中層代理也擁有一個VIP和LVS是最完美的方案了。具體的應用還得具體分析,如果是比較小的網站(日PV小于1000萬),用Nginx就完全可以了,如果機器也不少,可以用DNS輪詢,LVS所耗費的機器還是比較多的;大型網站或者重要的服務,機器不發愁的時候,要多多考慮利用LVS。
?
?
四、現在對網絡負載均衡的使用是隨著網站規模的提升根據不同的階段來使用不同的技術:
?
第一階段:利用Nginx或HAProxy進行單點的負載均衡,這一階段服務器規模剛脫離開單服務器、單數據庫的模式,需要一定的負載均衡,但是仍然規模較小沒有專業的維護團隊來進行維護,也沒有需要進行大規模的網站部署。這樣利用Nginx或HAproxy就是第一選擇,此時這些東西上手快, 配置容易,在七層之上利用HTTP協議就可以。這時是第一選擇。
?
第二階段:隨著網絡服務進一步擴大,這時單點的Nginx已經不能滿足,這時使用LVS或者商用Array就是首要選擇,Nginx此時就作為LVS或者Array的節點來使用,具體LVS或Array的是選擇是根據公司規模和預算來選擇,Array的應用交付功能非常強大,本人在某項目中使用過,性價比也遠高于F5,商用首選!但是一般來說這階段相關人才跟不上業務的提升,所以購買商業負載均衡已經成為了必經之路。
?
第三階段:這時網絡服務已經成為主流產品,此時隨著公司知名度也進一步擴展,相關人才的能力以及數量也隨之提升,這時無論從開發適合自身產品的定制,以及降低成本來講開源的LVS,已經成為首選,這時LVS會成為主流。
五、最終形成比較理想的基本架構為:Array/LVS — Nginx/Haproxy — Squid/Varnish — AppServer
?
AIX是IBM開放系統(OpenSystem)平臺上運行的unix類操作系統,IBM的服務器系列分為Z,I,P,X四大系列,開放系統即指P系列,以前也叫RS6000。
AIX的英文全稱是Advanced Interactive Excutive, 它基于Unix systemV和Unix BSD4.2, IBM在開發AIX時融入了許多在IBM大型主機上才用的技術,所以它雖然出身晚,但從體系結構和用戶操作友好性上看,AIX是最成熟,最完美的UNIX操作系統之一。
許多目前在其他廠商UNIX操作系統上(包括LINUX)流行的技術,例如邏輯卷管理LVM,日志文件系統JFS,ODM(類似windows注冊表),都源于IBM的AIX操作系統。
Kibana介紹
Kibana是一個開源的分析與可視化平臺,設計出來用于和Elasticsearch一起使用的。你可以用kibana搜索、查看存放在Elasticsearch中的數據。Kibana與Elasticsearch的交互方式是各種不同的圖表、表格、地圖等,直觀的展示數據,從而達到高級的數據分析與可視化的目的。
Elasticsearch、Logstash和Kibana這三個技術就是我們常說的ELK技術棧,可以說這三個技術的組合是大數據領域中一個很巧妙的設計。一種很典型的MVC思想,模型持久層,視圖層和控制層。Logstash擔任控制層的角色,負責搜集和過濾數據。Elasticsearch擔任數據持久層的角色,負責儲存數據。而我們這章的主題Kibana擔任視圖層角色,擁有各種維度的查詢和分析,并使用圖形化的界面展示存放在Elasticsearch中的數據。
越來越多的軟件,開始采用云服務。
云服務只是一個統稱,可以分成三大類。
- §
IaaS:基礎設施服務,Infrastructure-as-a-service - §?PaaS:平臺服務,Platform-as-a-service
- §?SaaS:軟件服務,Software-as-a-service
1)方案一:IaaS
他人提供廚房、爐子、煤氣,你使用這些基礎設施,來烤你的披薩。
?
(2)方案二:PaaS
除了基礎設施,他人還提供披薩餅皮。
3)方案三:SaaS
他人直接做好了披薩,不用你的介入,到手的就是一個成品。你要做的就是把它賣出去,最多再包裝一下,印上你自己的 Logo。
Node.js 是運行在服務端的 JavaScript。
什么是LDAP?
(一)在介紹什么是LDAP之前,我們先來復習一個東西:“什么是目錄服務?”
1. 目錄服務是一個特殊的數據庫,用來保存描述性的、基于屬性的詳細信息,支持過濾功能。
2. 是動態的,靈活的,易擴展的。
如:人員組織管理,電話簿,地址簿。
(二)了解完目錄服務后,我們再來看看LDAP的介紹:
LDAP(Light Directory Access Portocol),它是基于X.500標準的輕量級目錄訪問協議。
目錄是一個為查詢、瀏覽和搜索而優化的數據庫,它成樹狀結構組織數據,類似文件目錄一樣。
目錄數據庫和關系數據庫不同,它有優異的讀性能,但寫性能差,并且沒有事務處理、回滾等復雜功能,不適于存儲修改頻繁的數據。所以目錄天生是用來查詢的,就好象它的名字一樣。
LDAP目錄服務是由目錄數據庫和一套訪問協議組成的系統。
(三)為什么要使用
LDAP是開放的Internet標準,支持跨平臺的Internet協議,在業界中得到廣泛認可的,并且市場上或者開源社區上的大多產品都加入了對LDAP的支持,因此對于這類系統,不需單獨定制,只需要通過LDAP做簡單的配置就可以與服務器做認證交互?!昂唵未直?#xff0c;可以大大降低重復開發和對接的成本。
?
Tomcat工作原理:請求被發送到WEB服務器8080端口,該請求會被監聽端口的Connector連接器接收,并交給Service的Engine來處理。Engine根據請求的信息來匹配Host主機,Host主機會匹配對應的Context,Context web應用匹配上之后就構建request、response請求對象,調用指定的Servlet來處理、將response對象返回給Host主機,Host主機將response返回給Engine引擎,Engine再將response返回給Connector連接器,最后Connector連接器將response返回給瀏覽器。
Service:多個connector組成、以及一個Engine,負責處理Connector獲得的請求、
Connetor:監聽WEB的8080端口的連接器
Engine :接收connetor,并匹配host主機
Host:虛擬主機,匹配Context
Context;定義應用程序,構建reponse、request的
1.一般本地開發的話,小項目,或者是個人開發建議使用tomcat。
2.linux系統建議使用jetty或apache hpptd
3.大型的項目就用JBOSS或webloigc
4.大項目或者商業項目一般采用:weblgoic/webshere,其他的還有jboss、glasshfish等
5.一些示例項目或者小項目常采用jetty
6.tomcat , jboss, weblogic, websphere 一般項目tomcat就可以了
?
?
Tomcat是一個免費的開放源代碼的web應用服務器,屬于輕量級應用服務器,應用在中小型系統和并發訪問用戶不是很多的場合,是開發和調試JSP頁面的首選,Tomcat也可處理靜態的HTML頁面但是能力不及Apache或Nginx,所以Tomcat通常作為一個servlet和JSP容器,單獨運行在后端。
WebLogic服務器是企業級的應用服務器,支持EJB, 集群以及 ERP(企業資源計劃)的連通性 ,開發公司:BEA。
WebSphere產品系列是IBM公司一套典型的電子商務應用開發工具及運行環境
ECS彈性計算服務??? OSS開放存儲服務?? OTS開放式結構數據服務? ODPS 開放數據處理服務?
RDS關系型數據庫服務
Elasticsearch 是個開源得分布式搜索引擎、特點:分布式、零配置、自動發現、索引自動分片、索引副本機制,restful風格接口、多數據庫、自動搜索負載等
Logstash 是一個完全開放的工具、可以對日志進行收集、過濾、并將其存儲、供以后使用
Kibana 開源、免費、可以為Logstas和Elastucsearch 提供有好的日志WEB界面、可以幫助您匯總、分析、搜索重要數據日志
ELK工作原理:Logstash 收集Appserver產生的log、并存放到Elasticsearch 集群中、而Kibana則從es集群中查詢數據生成圖表、再返回Broswer、簡單來說,進行日志處理分析、一般需要經過一下步驟
總結
以上是生活随笔為你收集整理的各种软件的含义和特点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 命令 echo 使用说明
- 下一篇: 项目经理这些技能,是项目成功的关键保障