本發明專利技術實施例公開了一種集群節點故障處理方法、系統及介質。該方法包括:通過故障存儲組件獲取異常節點采用自定義資源CRD模式上報的故障節點信息;通過故障決策組件對故障存儲組件中的故障節點信息進行監聽,根據新增的故障節點信息判斷是否觸發為對應故障節點設置污點標簽;通過故障決策組件根據判斷結果調用故障處理組件發送故障處理消息給主節點中的Apiserver組件,故障處理消息用于指示Apiserver組件執行故障處理操作。本實施例可以快速的檢測到集群中發生故障的節點并通過設置污點標簽隔離該故障節點,從而保證了業務正常的運行。正常的運行。正常的運行。
【技術實現步驟摘要】
一種集群節點故障處理方法、系統及介質
[0001]本專利技術涉及計算機
,尤其涉及一種集群節點故障處理方法、系統及存儲介質。
技術介紹
[0002]Kubernetes(簡稱K8s)是Google開源的用于管理容器化的系統,一般可以將web應用遷移到Kubernetes集群上。Kubernetes集群部署了多個節點和節點組件等。
[0003]現有技術中,對于Kubernetes集群的故障檢測及處理方案更多的是依賴監控組件的監控,若監控到某一集群節點出現故障,通過手動的方式進行恢復,在恢復期間,主節點中的調度程序會將容器組件調度到當前發生故障的節點,從而影響業務的運行。
[0004]因此,如何在集群節點出現故障時,仍然可以保證業務正常運行成為亟待解決的問題,
技術實現思路
[0005]本專利技術提供了一種集群節點故障處理方法、系統及存儲介質,以解決現有技術中,若某一集群節點出現故障,而Kubernetes仍然將工作負載調度到當前節點而影響業務的問題,實現快速的檢測到節點的故障并隔離故障節點,從而保證業務正常的運行。
[0006]根據本專利技術的一方面,提供了一種集群節點故障處理方法,包括:
[0007]通過故障存儲組件獲取異常節點采用自定義資源CRD模式上報的故障節點信息;
[0008]通過故障決策組件對所述故障存儲組件中的故障節點信息進行監聽,根據新增的故障節點信息判斷是否觸發為對應故障節點設置污點標簽;
[0009]通過故障決策組件根據判斷結果調用故障處理組件發送故障處理消息給主節點中的Apiserver組件,所述故障處理消息用于指示Apiserver組件執行故障處理操作。
[0010]根據本專利技術的另一方面,提供了一種集群節點故障處理系統,包括:
[0011]普通節點,用于通過故障檢測組件獲取本節點的組件故障或硬件故障,根據檢測結果生成故障節點信息,發送故障節點信息給執行上述的集群節點的故障處理方法的健康節點;
[0012]所述健康節點,用于上述的集群節點的故障處理方法的健康節點;
[0013]主節點,用于通過Apiserver組件獲取所述健康節點發送的故障處理消息,根據所述故障處理消息確定具有污點標簽的故障節點,通過Scheduler組件暫停將新的容器組Pod調度到具有污點標簽的故障節點,或者,在暫停將新的容器組Pod調度到具有污點標簽的故障節點的基礎上,對具有污點標簽的故障節點上的已有容器組Pod進行驅逐。
[0014]根據本專利技術的另一方面,提供了一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機指令,所述計算機指令用于使處理器執行時實現本專利技術任一實施例所述的一種集群節點故障處理方法。
[0015]本專利技術實施例的技術方案,可以快速的檢測到集群中發生的故障節點并通過設置
污點標簽隔離該故障節點,從而保證業務正常的運行。
[0016]應當理解,本部分所描述的內容并非旨在標識本專利技術的實施例的關鍵或重要特征,也不用于限制本專利技術的范圍。本專利技術的其它特征將通過以下的說明書而變得容易理解。
附圖說明
[0017]為了更清楚地說明本專利技術實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本專利技術的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
[0018]圖1a是現有技術提供的Kubernetes集群的各個節點結構示意圖;
[0019]圖1b是根據本專利技術實施例一提供的一種集群節點故障處理方法的流程圖;
[0020]圖2是根據本專利技術實施例二提供的又一種集群節點故障處理方法的流程圖;
[0021]圖3是根據本專利技術實施例三提供的另一種集群節點故障處理方法的流程圖;
[0022]圖4是根據本專利技術實施例四提供的一種集群節點故障處理系統的結構示意圖。
具體實施方式
[0023]為了使本
的人員更好地理解本專利技術方案,下面將結合本專利技術實施例中的附圖,對本專利技術實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本專利技術一部分的實施例,而不是全部的實施例。基于本專利技術中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都應當屬于本專利技術保護的范圍。
[0024]需要說明的是,本專利技術的說明書和權利要求書及上述附圖中的術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
[0025]目前,對于Kubernetes集群,圖1a展示了Kubernetes集群的各個節點,如圖1a所示:其主節點可以是Master,用于負責整個集群的管理和控制;主節點可以包括Scheduler(調度程序)、Apiserver(用戶接口服務)、Controller
?
Manage(控制器管理)和Etcd(分布式KV存儲產品)。
[0026]Kubernetes集群的從節點可以是Node。Node上運行著Master節點分配的容器組Pod,當一個Node宕機,其上的Pod會被自動轉移到其他Node上,每一個Node節點都安裝了Node組件,包括Kubelet(進程源碼)、Calico(開源的網絡和網絡安全方案)、Containerd(管理容器的生命周期)和Docker(應用容器引擎)等,同時Pod還會共享Node節點的磁盤、Cpu(CentralProcessingUnit,中央處理器)和內存等硬件資源。
[0027]其中,Kubelet可以用于負責Pod的生命周期管理,它監視已分配給節點的Pod,同時與Master密切協作,維護和管理該Node上面的所有容器,以實現集群管理的基本功能。即,Node節點通過Kubelet與master組件交互,可以理解為Kubelet是Master在每個Node節點上面的agent(代理者)。本質上,它負責使Pod的運行狀態與期望的狀態一致。
[0028]由于組件可以安裝在每個Kubernetes的Node節點上,如果某一組件運行狀態異
常,而Kubernetes仍然將工作負載調度到當前節點的話會造成異常,影響業務;同樣會影響業務的也包括Node節點上的硬件(內存、Cpu、磁盤)異常。
[0029]為解決上述問題,本專利技術提供一種集群節點故障處理方案,相比于現有技術,可以實現快速的檢測到節點的故障并隔離故障節點,保證業務正常的運行。
[0030]實施例一
[0031]圖1b為本專利技術實施例一提供了一種集群節點故障處理方法的流程圖,本實施例可適用于集群節點出現故障進行處理的情況,該方法可以由一種集群節點故障處理系統來執行。如圖1b所示,該方法包括:
[003本文檔來自技高網...
【技術保護點】
【技術特征摘要】
1.一種集群節點的故障處理方法,其特征在于,應用于集群中的健康節點,包括:通過故障存儲組件獲取異常節點采用自定義資源CRD模式上報的故障節點信息;通過故障決策組件對所述故障存儲組件中的故障節點信息進行監聽,根據新增的故障節點信息判斷是否觸發為對應故障節點設置污點標簽;通過故障決策組件根據判斷結果調用故障處理組件發送故障處理消息給主節點中的Api server組件,所述故障處理消息用于指示Api server組件執行故障處理操作。2.根據權利要求1所述的方法,其特征在于,所述根據新增的故障節點信息判斷是否觸發為對應故障節點設置污點標簽,包括:在監聽到新增的故障節點信息的情況下,通過故障決策組件根據所述新增的故障節點信息匹配設定的故障處理策略,根據匹配結果判斷是否觸發為對應故障節點設置污點標簽,其中,故障處理策略包含故障場景與故障處理方式的關聯關系。3.根據權利要求2所述的方法,其特征在于,所述設定的故障處理策略包括如下至少一項:在故障節點信息為Docker故障的情況下,故障場景為Docker組件故障觸發的節點故障,故障處理方式包括為對應故障節點設置污點標簽;在故障節點信息為Containerd故障且Calico故障的情況下,故障場景為Containerd組件與Calico組件同時故障觸發的節點故障,故障處理方式包括為對應故障節點設置污點標簽;在故障節點信息為Calico故障且Kubelet故障的情況下,故障場景為Calico組件與Kubelet組件同時故障觸發的節點故障,故障處理方式包括為對應故障節點設置污點標簽,且將對應故障節點上的容器組Pod驅逐到健康節點;在故障節點信息為Kubelet故障的情況下,故障場景為Kubelet組件故障觸發的節點故障,故障處理方式包括為對應故障節點設置污點標簽;在故障節點信息為硬件故障的情況下,故障場景為硬件故障觸發的節點故障,故障處理方式包括重啟故障節點并不為對應故障節點設置污點標簽。4.根據權利要求3所述的方法,其特征在于,所述通過故障決策組件根據所述新增的故障節點信息匹配設定的故障處理策略,根據匹配結果判斷是否觸發為對應故障節點設置污點標簽,包括:通過故障決策組件根據所述新增的故障節點信息匹配設定的故障處理策略得到故障場景;通過故障決策組件根據所述故障場景對應的故障處理方式,判斷是否觸發為對應故障節點設置污點標...
【專利技術屬性】
技術研發人員:汪勁松,張亞祥,張銘,
申請(專利權)人:上海浦東發展銀行股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。