一種LVS系統的構建方法及LVS系統與流程
2023-06-08 02:49:46
本發明涉及伺服器技術領域,特別涉及一種LVS系統的構建方法及LVS系統。
背景技術:
隨著計算機技術以及集成電路技術的飛速發展,特別是網際網路時代Web應用及服務幾何級增長的背景下,服務應用其產生的數據流量和計算強度之大使得單一服務或簡單的服務集群不能穩定的提供高質量服務,分布式系統越來越受到業界的重視,例如Linux集群服務系統,即Linux Virtual Server(LVS)系統,其優勢在於對硬體要求低,提供跨系統服務,支持多種網絡協議,提供高效的防火牆技術,現在由MOSIX提供的進程遷移的集群計算技術支持多達100個節點。高可用技術(HA)技術能自動檢測伺服器節點和服務進程錯誤、失效,並且當發生這種情況時能夠自動適當重新配置系統,使得集群中的其他節點能夠自動承擔這些服務,實現服務的高可用。
然而構建一套高可用、高容錯的服務應用環境需要大批量服務設備,為此很多大型網際網路公司紛紛投入巨資構建自己的數據中心來提升自己服務的穩定性、高效性,這需要巨額的資源投入。因此,如何減少服務構建環境的資源投入同時提供穩定的高可用集群環境,是本領域技術人員需要解決的技術問題。
技術實現要素:
本發明的目的是提供一種LVS系統的構建方法及LVS系統,減少服務構建環境的資源投入同時提供穩定的高可用集群環境。
為解決上述技術問題,本發明提供一種LVS系統的構建方法,包括:
負載均衡器利用MON進程對整個集群中預定伺服器節點以及對應服務進程進行監控;
備份伺服器通過串行線按照預定周期檢測所述負載均衡器的運行狀態信息,並根據所述運行狀態信息判斷所述負載均衡器是否失效;
所述備份伺服器在當所述負載均衡器失效時接管所述負載均衡器的IP位址。
可選的,負載均衡器利用MON進程對整個集群中預定伺服器節點以及服務進程進行監控,包括:
在MON進程中的配置文件中記錄需要監控的預定伺服器節點;
按照監控周期監測所述預定伺服器節點的節點狀態,並利用服務監控器監控對應的服務進程。
可選的,備份伺服器通過串行線按照預定周期檢測所述負載均衡器的運行狀態信息,並根據所述運行狀態信息判斷所述負載均衡器是否失效,包括:
備份伺服器中運行的HEARTBEAT進程通過串行線按照預定周期接收所述負載均衡器利用UDP協議發送運行狀態信息,當未接收到所述運行狀態信息時判定所述負載均衡器失效。
可選的,所述備份伺服器在當所述負載均衡器失效時接管所述負載均衡器的IP位址,包括:
所述備份伺服器在當所述負載均衡器失效時,利用ARP欺騙方法接管所述負載均衡器的IP位址。
可選的,該構建方法還包括:
所述負載均衡器在客戶請求時失效,則提示客戶重新發出所述客戶請求。
本發明還提供一種LVS系統,包括:負載均衡器,備份伺服器及集群中伺服器節點;其中,
所述負載均衡器,用於利用MON進程對整個集群中預定伺服器節點以及對應服務進程進行監控;
所述備份伺服器,用於通過串行線按照預定周期檢測所述負載均衡器的運行狀態信息,並根據所述運行狀態信息判斷所述負載均衡器是否失效;在當所述負載均衡器失效時接管所述負載均衡器的IP位址。
可選的,所述負載均衡器包括:
記錄模塊,用於根據MON進程中的配置文件中記錄的需要監控的預定伺服器節點;
監控模塊,用於按照監控周期監測所述預定伺服器節點的節點狀態,並利用服務監控器監控對應的服務進程。
可選的,所述備份伺服器包括:
心跳檢測模塊,用於利用HEARTBEAT進程通過串行線按照預定周期接收所述負載均衡器利用UDP協議發送運行狀態信息,當未接收到所述運行狀態信息時判定所述負載均衡器失效。
可選的,所述備份伺服器包括:
接管模塊,用於在當所述負載均衡器失效時,利用ARP欺騙方法接管所述負載均衡器的IP位址。
可選的,所述負載均衡器還包括:
提示模塊,用於在客戶請求時失效,則提示客戶重新發出所述客戶請求。
本發明所提供的一種LVS系統,包括:負載均衡器,備份伺服器及集群中伺服器節點;其中,所述負載均衡器,用於利用MON進程對整個集群中預定伺服器節點以及對應服務進程進行監控;所述備份伺服器,用於通過串行線按照預定周期檢測所述負載均衡器的運行狀態信息,並根據所述運行狀態信息判斷所述負載均衡器是否失效;在當所述負載均衡器失效時接管所述負載均衡器的IP位址;
可見,該系統利用MON資源管理系統用來監控網絡上的伺服器節點和網絡服務,並利用備用伺服器防止負載均衡器成為整個系統的單點失效,實現了對負載均衡器的冗餘,即提高了系統的可靠性和穩定性,即該LVS系統減少服務構建環境的資源投入同時提供穩定的高可用集群環境。本發明還提供了一種LVS系統的構建方法,具有上述有益效果,在此不再贅述。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的實施例,對於本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。
圖1為本發明實施例所提供的LVS系統的構建方法的流程圖;
圖2為本發明實施例所提供的LVS系統的結構框圖。
具體實施方式
本發明的核心是提供一種LVS系統的構建方法及LVS系統,減少服務構建環境的資源投入同時提供穩定的高可用集群環境。
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
請參考圖1,圖1為本發明實施例所提供的LVS系統的構建方法的流程圖;該構建方法可以包括:
S100、負載均衡器利用MON進程對整個集群中預定伺服器節點以及對應服務進程進行監控;
其中,MON是一個通用目的地資源監視系統,用來實現監控網絡上的伺服器節點問題和網絡服務的可用性。
可選的,負載均衡器中運行有MON進程,即在MON進程中的配置文件中記錄需要監控的預定伺服器節點;按照監控周期監測所述預定伺服器節點的節點狀態,並利用服務監控器監控對應的服務進程。
用戶可以根據集群系統中伺服器節點的實際情況進行配置文件中預定伺服器節點的設置。即將需要進行監控的伺服器節點寫入配置文件中,MON進程在運行時就對配置文件中記錄的伺服器節點進行周期性的監控。用戶可以根據實際使用需求對配置文件中的預定伺服器節點及監控周期進行修改。
即當伺服器故障發生時,MON進程運行在負載均衡器上,負責監控整個集群的伺服器節點和服務進程。在配置文件中寫入檢查伺服器節點,然後每隔規定的時間內檢查伺服器節點狀態。另外相關的服務監控器監控相關服務。當某個服務節點失效時(即某個伺服器故障發生時)發送一個通告信息,負載均衡器就能夠知道伺服器節點是否能接受服務。
S110、備份伺服器通過串行線按照預定周期檢測所述負載均衡器的運行狀態信息,並根據所述運行狀態信息判斷所述負載均衡器是否失效;
其中,該步驟目的是為了監控負載均衡器是否失效。可以使用心跳檢測方法等。可選的,備份伺服器中運行的HEARTBEAT進程通過串行線按照預定周期接收所述負載均衡器利用UDP協議發送運行狀態信息,當未接收到所述運行狀態信息時判定所述負載均衡器失效。即使用HEARTBEAT實現負載均衡器與備用伺服器之間通過串行線上使用UDP協議傳送「心跳信息」。
其中,HEARTBEAT(Linux-HA)的工作原理:HEARTBEAT最核心的包括兩個部分,心跳監測部分和資源接管部分,心跳監測可以通過網絡鏈路和串口進行,而且支持冗餘鏈路,它們之間相互發送報文來告訴對方自己當前的狀態,如果在指定的時間內未收到對方發送的報文,那麼就認為對方失效,這時可以啟動資源接管模塊來接管運行在對方主機上的資源或者服務。
本實施例為了防止負載均衡器成為整個系統的單點失效,需要備用伺服器對負載均衡器進行有效性的監管,即將運行於備用伺服器上的HEARTBEAT可以通過乙太網連接檢測負載均衡器的運行狀態,一旦其無法檢測到負載均衡器的"心跳"則自動接管負載均衡器的資源。即該系統需要安裝一個負載均衡器的備份伺服器。負載均衡器和備份伺服器之間通過串行線周期發送狀態信息,實現對負載均衡器的有效性監管。
S120、所述備份伺服器在當所述負載均衡器失效時接管所述負載均衡器的IP位址。
具體的,備份伺服器在負載均衡器失效時,為了保證系統的正常運行,需要備份伺服器接管負載均衡器的任務即接管負載均衡器的IP位址。可選的,所述備份伺服器在當所述負載均衡器失效時接管所述負載均衡器的IP位址,可以包括:
所述備份伺服器在當所述負載均衡器失效時,利用ARP欺騙方法接管所述負載均衡器的IP位址。
具體的,ARP(Address Resolution Protocol,地址解析協議),是根據IP位址獲取物理地址的一個TCP/IP協議。地址解析協議是建立在網絡中各個主機互相信任的基礎上的,網絡上的主機可以自主發送ARP應答消息,其他主機收到應答報文時不會檢測該報文的真實性就會將其記入本機ARP緩存;由此攻擊者就可以向某一主機發送偽ARP應答報文,使其發送的信息無法到達預期的主機或到達錯誤的主機,這就構成了一個ARP欺騙。即用ARP欺騙方式實現IP接管,進而實現服務的高可用。
具體的,利用FAKE實現負載均衡器失效時,備份伺服器自動接管IP位址,並繼續服務。
如果負載均衡器在客戶請求時失效,要求請求重新發出。從而確保了系統的高可用,並且易於管理。即負載均衡器在客戶請求時失效,則提示客戶重新發出所述客戶請求。防止對負載均衡器失效的誤判定。
基於上述技術方案,本發明實施例提的LVS系統的構建方法,利用MON資源管理系統用來監控網絡上的伺服器節點和網絡服務,並利用備用伺服器防止負載均衡器成為整個系統的單點失效,實現了對負載均衡器的冗餘,即提高了系統的可靠性和穩定性,即該LVS系統的構建方法減少服務構建環境的資源投入同時提供穩定的高可用集群環境。
下面對本發明實施例提供的LVS系統進行介紹,下文描述的LVS系統與上文描述的LVS系統的構建方法可相互對應參照。
請參考圖2,圖2為本發明實施例所提供的LVS系統的結構框圖;該LVS系統可以包括:負載均衡器100,備份伺服器200及集群中伺服器節點300;其中,
所述負載均衡器100,用於利用MON進程對整個集群中預定伺服器節點以及對應服務進程進行監控;
所述備份伺服器200,用於通過串行線按照預定周期檢測所述負載均衡器100的運行狀態信息,並根據所述運行狀態信息判斷所述負載均衡器100是否失效;在當所述負載均衡器100失效時接管所述負載均衡器100的IP位址。
基於上述實施例,所述負載均衡器100包括:
記錄模塊,用於根據MON進程中的配置文件中記錄的需要監控的預定伺服器節點;
監控模塊,用於按照監控周期監測所述預定伺服器節點的節點狀態,並利用服務監控器監控對應的服務進程。
基於上述實施例,所述備份伺服器200包括:
心跳檢測模塊,用於利用HEARTBEAT進程通過串行線按照預定周期接收所述負載均衡器利用UDP協議發送運行狀態信息,當未接收到所述運行狀態信息時判定所述負載均衡器失效。
基於上述任意實施例,所述備份伺服器200包括:
接管模塊,用於在當所述負載均衡器失效時,利用ARP欺騙方法接管所述負載均衡器的IP位址。
基於上述任意實施例,所述負載均衡器100還包括:
提示模塊,用於在客戶請求時失效,則提示客戶重新發出所述客戶請求。
基於上述技術方案,本發明實施例提的LVS系統,該系統利用MON資源管理系統用來監控網絡上的伺服器節點和網絡服務,並利用備用伺服器防止負載均衡器成為整個系統的單點失效,實現了對負載均衡器的冗餘,即提高了系統的可靠性和穩定性,即該LVS系統減少服務構建環境的資源投入同時提供穩定的高可用集群環境。
說明書中各個實施例採用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對於實施例公開的系統而言,由於其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
專業人員還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬體、計算機軟體或者二者的結合來實現,為了清楚地說明硬體和軟體的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬體還是軟體方式來執行,取決於技術方案的特定應用和設計約束條件。專業技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發明的範圍。
結合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬體、處理器執行的軟體模塊,或者二者的結合來實施。軟體模塊可以置於隨機存儲器(RAM)、內存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬碟、可移動磁碟、CD-ROM、或技術領域內所公知的任意其它形式的存儲介質中。
以上對本發明所提供的LVS系統的構建方法及LVS系統進行了詳細介紹。本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用於幫助理解本發明的方法及其核心思想。應當指出,對於本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以對本發明進行若干改進和修飾,這些改進和修飾也落入本發明權利要求的保護範圍內。