多節點遠程操作方法和裝置制造方法
【專利摘要】本發明提供了一種多節點遠程操作方法和裝置。涉及計算應用及集群管理領域;解決了對多節點遠程操作效率低下的問題。該方法包括:獲取需要遠程操作的節點信息;在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作。本發明提供的技術方案適用于大規模集群,實現了批量高效的節點遠程操作。
【專利說明】多節點遠程操作方法和裝置
【技術領域】
[0001]本發明涉及服務器計算應用及集群管理領域,尤其涉及一種多節點遠程操作方法和裝置。
【背景技術】
[0002]隨著集群在網絡服務以及高性能計算領域的普遍使用,需要對集群中的各服務器進行批量遠程操作的內容越來越多,而目前各領域使用的集群規模也在逐年擴大,包含上百至上千臺服務器的集群已經成為大型互連網公司、超級計算中心的必需設備。
[0003]而在這些大規模集群的管理中,不可避免的會對集群中包含的各個節點服務器進行遠程批量操作,一般的批量操作使用腳本進行,腳本的一般流程是通過循環,順序遠程指定列表中的節點服務器名稱,并執行同一操作。這種方法因為是順序執行遠程操作,所以在集群的節點服務器數量在幾百、幾千甚至上萬時,這種情況下,順序執行的方法將所需時間是單臺服務器所需時間的幾百、幾千甚至上萬倍。
[0004]因此,提供快速化的操作腳本工具,就顯得非常有實際意義。
【發明內容】
[0005]本發明提供了一種多節點遠程操作方法和裝置,解決了對多節點遠程操作效率低下的問題。
[0006]一種多節點遠程操作方法,包括:
[0007]獲取需要遠程操作的節點信息;
[0008]在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作。
[0009]優選的,獲取需要遠程操作的節點信息包括:
[0010]獲取預置的節點名稱列表,在所述節點名稱列表中存儲有一個或多個節點的信
肩、O
[0011]優選的,在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作包括:
[0012]將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點;
[0013]為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄;
[0014]在本批次的節點全部能夠遠程登錄時,使用各節點對應的線程對相應的節點進行遠程操作;
[0015]在對所述節點遠程操作完畢后,結束該節點對應的線程;
[0016]在本批次全部線程均結束后,啟動對下一批次節點的遠程操作。
[0017]優選的,在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作的步驟之前,還包括:[0018]設置可啟動的最大線程數為大于I且小于或等于當前所在節點的處理器核心數的值。
[0019]優選的,將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點包括:
[0020]在所述節點數量未超過所述可啟動的最大線程數時,將所述節點劃分為一個批次;
[0021]在所述節點數量超過所述可啟動的最大線程數時,將所述節點劃分為兩個以上的批次,各批次包含兩個以上、所述最大線程數以下的節點。
[0022]優選的,為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄的步驟之后,還包括:
[0023]在存在不能遠程登錄的節點時,停止對全部節點的遠程操作,并輸出不能登錄的節點的信息。
[0024]本發明還提供了一種多節點遠程操作裝置,包括:
[0025]節點信息獲取模塊,用于獲取需要遠程操作的節點信息;
[0026]批量處理模塊,用于在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作。
[0027]優選的,所述批量處理模塊包括:
[0028]批次劃分單元,用于將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點;
[0029]線程啟動單元,用于為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄;
[0030]操作執行單元,用于在本批次的節點全部能夠遠程登錄時,使用各節點對應的線程對相應的節點進行遠程操作;
[0031]線程結束單元,用于在對所述節點遠程操作完畢后,結束該節點對應的線程;
[0032]執行管理單元,用于在本批次全部線程均結束后,啟動對下一批次節點的遠程操作。
[0033]優選的,該裝置還包括:
[0034]線程數據限制模塊,用于設置可啟動的最大線程數為大于I且小于或等于當前所在節點的處理器核心數的值。
[0035]優選的,所述批次劃分單元具體用于:
[0036]在所述節點數量未超過所述可啟動的最大線程數時,將所述節點劃分為一個批次,
[0037]在所述節點數量超過所述可啟動的最大線程數時,將所述節點劃分為兩個以上的批次,各批次包含兩個以上、所述最大線程數以下的節點。
[0038]本發明提供了一種多節點遠程操作方法和裝置,在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作,實現了批量高效的節點遠程操作,同樣耗時內遠程操作的節點數量增加,提高了對節點遠程操作的效率,解決了對多節點遠程操作效率低下的問題。
【專利附圖】
【附圖說明】[0039]圖1為本發明的實施例一提供的一種多節點遠程操作方法的流程圖;
[0040]圖2為圖1中步驟103的具體流程圖;
[0041]圖3為本發明的實施例二提供的一種多節點遠程操作裝置的結構示意圖;
[0042]圖4為圖3中批量處理模塊302的結構示意圖。
【具體實施方式】
[0043]在大規模集群的管理中,不可避免的會對集群中包含的各個節點服務器進行遠程批量操作,一般的批量操作使用腳本進行,腳本的一般流程是通過循環,順序遠程指定列表中的節點服務器名稱,并執行同一操作。這種方法因為是順序執行遠程操作,所以在集群的節點服務器數量在幾百、幾千甚至上萬時,這種情況下,順序執行的方法將所需時間是單臺服務器所需時間的幾百、幾千甚至上萬倍。
[0044]下文中將結合附圖對本發明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。
[0045]首先結合附圖,對本發明的實施例一進行說明。
[0046]本發明實施例提供了一種多節點遠程操作方法,使用該方法對多節點進行批量遠程操作的流程如圖1所示,包括:
[0047]步驟101、獲取需要遠程操作的節點信息;
[0048]本發明實施例中,以運行腳本的方式控制整個遠程操作過程。
[0049]本步驟中,具體的,集群中的服務器(可以是指定完成遠程操作的集群中的任意服務器,優選的,可為管理服務器)獲取預置的節點名稱列表,在所述節點名稱列表中存儲有一個或多個節點的信息。
[0050]步驟102、設置可啟動的最大線程數為大于I且小于或等于當前所在節點的處理器核心數的值;
[0051]本步驟中,設置腳本的可啟動的最大線程數,考慮到處理器的處理能力,可設置為一大于I且小于或等于當前所在節點的處理器核心數的值;優選的,可設置為當前所在節點的處理器核心數的值。
[0052]步驟103、在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作;
[0053]本步驟具體如圖2所示,包括:
[0054]步驟1031、將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點;
[0055]本步驟中,首先通過得到的節點列表,計算待操作的節點總數量以統計節點總數量;然后判斷節點總數量是否超過腳本可啟動的最大線程數。根據判斷結果作具體劃分,包括:
[0056]在所述節點數量未超過所述可啟動的最大線程數時,將所述節點劃分為一個批次;
[0057]在所述節點數量超過所述可啟動的最大線程數時,將所述節點劃分為兩個以上的批次,各批次包含兩個以上、所述最大線程數以下的節點。
[0058]然后,即可以批次為單位批量對上述多個節點進行遠程操作。
[0059]步驟1032、為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄;
[0060]本步驟中,使用啟動的線程并行檢測節點列表中的節點是否可遠程登錄.根據檢測結果,在本批次全部節點均成功遠程登錄時,進入步驟1033,否則進入步驟1034。
[0061]步驟1033、在本批次的節點全部能夠遠程登錄時,使用各節點對應的線程對相應的節點進行遠程操作,然后進入步驟1035。
[0062]步驟1034、在存在不能遠程登錄的節點時,停止對全部節點的遠程操作,并輸出不能登錄的節點的信息;
[0063]本步驟中,如果檢測出有節點無法遠程登錄,則輸出提示相應的節點無法遠程登錄,提示用戶修改節點名稱列表或檢查相應的節點,并退出腳本,中止對全部節點的遠程操作。
[0064]步驟1035、在對所述節點遠程操作完畢后,結束該節點對應的線程;
[0065]步驟1036、在本批次全部線程均結束后,啟動對下一批次節點的遠程操作;
[0066]本步驟中,如果節點總數量超過腳本可啟動的最大線程數,則每次以啟動線程數來并行執行不同節點上的批量操作,一次啟動的全部線程都結束之后,再啟動下一批線程,分次直至節點名稱列表中的最后一個節點完成批量操作。
[0067]下面結合附圖,對本發明的實施例二進行說明。
[0068]本發明實施例提供了一種多節點遠程操作裝置,該裝置的結構如圖3所示,包括:
[0069]節點信息獲取模塊301,用于獲取需要遠程操作的節點信息;
[0070]批量處理模塊302,用于在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作。
[0071]優選的,所述批量處理模塊302的結構如圖4所示,包括:
[0072]批次劃分單元3021,用于將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點;
[0073]線程啟動單元3022,用于為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄;
[0074]操作執行單元3023,用于在本批次的節點全部能夠遠程登錄時,使用各節點對應的線程對相應的節點進行遠程操作;
[0075]線程結束單元3024,用于在對所述節點遠程操作完畢后,結束該節點對應的線程;
[0076]執行管理單元3025,用于在本批次全部線程均結束后,啟動對下一批次節點的遠程操作。
[0077]優選的,該裝置還包括:
[0078]線程數據限制模塊303,用于設置可啟動的最大線程數為大于I且小于或等于當前所在節點的處理器核心數的值。
[0079]優選的,所述批次劃分單元3021具體用于:
[0080]在所述節點數量未超過所述可啟動的最大線程數時,將所述節點劃分為一個批次,
[0081]在所述節點數量超過所述可啟動的最大線程數時,將所述節點劃分為兩個以上的批次,各批次包含兩個以上、所述最大線程數以下的節點。[0082]上述多節點遠程操作裝置,能夠集成于集群中的服務器中,與本發明的實施例一提供的一種多節點遠程操作方法相結合,在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作,實現了批量高效的節點遠程操作,同樣耗時內遠程操作的節點數量增加,提高了對節點遠程操作的效率,解決了對多節點遠程操作效率低下的問題。
[0083]本領域普通技術人員可以理解上述實施例的全部或部分步驟可以使用計算機程序流程來實現,所述計算機程序可以存儲于一計算機可讀存儲介質中,所述計算機程序在相應的硬件平臺上(如系統、設備、裝置、器件等)執行,在執行時,包括方法實施例的步驟之一或其組合。
[0084]可選地,上述實施例的全部或部分步驟也可以使用集成電路來實現,這些步驟可以被分別制作成一個個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現。這樣,本發明不限制于任何特定的硬件和軟件結合。
[0085]上述實施例中的各裝置/功能模塊/功能單元可以采用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,也可以分布在多個計算裝置所組成的網絡上。
[0086]上述實施例中的各裝置/功能模塊/功能單元以軟件功能模塊的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。上述提到的計算機可讀取存儲介質可以是只讀存儲器,磁盤或光盤等。
[0087]任何熟悉本【技術領域】的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以權利要求所述的保護范圍為準。
【權利要求】
1.一種多節點遠程操作方法,其特征在于,包括: 獲取需要遠程操作的節點信息; 在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作。
2.根據權利要求1所述的多節點遠程操作方法,其特征在于,獲取需要遠程操作的節點信息包括: 獲取預置的節點名稱列表,在所述節點名稱列表中存儲有一個或多個節點的信息。
3.根據權利要求1所述的遠程批量操作方法,其特征在于,在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作包括: 將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點; 為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄; 在本批次的節點全部能夠遠程登錄時,使用各節點對應的線程對相應的節點進行遠程操作; 在對所述節點遠程操作完畢后,結束該節點對應的線程; 在本批次全部線程均結束后,啟動對下一批次節點的遠程操作。
4.根據權利要求3所述的多節點遠程操作方法,其特征在于,在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作的步驟之前,還包括: 設置可啟動的最大線程數為大于I且小于或等于當前所在節點的處理器核心數的值。
5.根據權利要求4所述的多節點遠程操作方法,其特征在于,將所述節點劃分為一個或多個批次,每個批次包括至少兩個節點包括: 在所述節點數量未超過所述可啟動的最大線程數時,將所述節點劃分為一個批次; 在所述節點數量超過所述可啟動的最大線程數時,將所述節點劃分為兩個以上的批次,各批次包含兩個以上、所述最大線程數以下的節點。
6.根據權利要求3所述的多節點遠程操作方法,其特征在于,為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄的步驟之后,還包括: 在存在不能遠程登錄的節點時,停止對全部節點的遠程操作,并輸出不能登錄的節點的信息。
7.一種多節點遠程操作裝置,其特征在于,包括: 節點信息獲取模塊,用于獲取需要遠程操作的節點信息; 批量處理模塊,用于在需要遠程操作的節點數量為多個時,分批次批量對所述節點進行遠程操作,每批次對至少兩個所述節點進行遠程操作。
8.根據權利要求7所述的多節點遠程操作裝置,其特征在于,所述批量處理模塊包括: 批次劃分單元,用于將所述節點劃分為一個或多個批次,每個批次包括至少兩個節占.線程啟動單元,用于為本批次需要進行遠程操作的節點各啟動一唯一對應的線程,檢測各節點是否能夠遠程登錄; 操作執行單元,用于在本批次的節點全部能夠遠程登錄時,使用各節點對應的線程對相應的節點進行遠程操作; 線程結束單元,用于在對所述節點遠程操作完畢后,結束該節點對應的線程; 執行管理單元,用于在本批次全部線程均結束后,啟動對下一批次節點的遠程操作。
9.根據權利要求8所述的多節點遠程操作裝置,其特征在于,該裝置還包括: 線程數據限制模塊,用于設置可啟動的最大線程數為大于I且小于或等于當前所在節點的處理器核心數的值。
10.根據權利要求9所述的多節點遠程操作裝置,其特征在于,所述批次劃分單元具體用于: 在所述節點數量未超過所述可啟動的最大線程數時,將所述節點劃分為一個批次,在所述節點數量超過所述可啟動的最大線程數時,將所述節點劃分為兩個以上的批次,各批次包含兩個以上、所述最大線程數以下的節點。
【文檔編號】H04L29/08GK103997537SQ201410242440
【公開日】2014年8月20日 申請日期:2014年6月3日 優先權日:2014年6月3日
【發明者】陳博文 申請人:浪潮(北京)電子信息產業有限公司