袁 遠,李世杰,邢建英,蔣句平
(國防科技大學計算機學院,湖南 長沙 410073)
高性能計算能力是綜合國力的重要體現(xiàn),是國家創(chuàng)新體系的重要組成部分,是國家科研實力的重要標志之一。國際上,美國、日本、歐盟都在研發(fā)E級高性能計算機系統(tǒng),預計2021年前后推出。國內(nèi),國防科技大學、江南計算所和曙光公司都已完成E級驗證系統(tǒng)研制[1],各自探索出了構建E級系統(tǒng)的技術路線。但是,驗證系統(tǒng)畢竟規(guī)模有限,與實際E級系統(tǒng)相比,在處理器性能、網(wǎng)絡規(guī)模、可靠性、可用性和能耗等方面還存在較大差距,E級系統(tǒng)構建中仍面臨諸多挑戰(zhàn),仍需要進一步攻克一系列關鍵技術,才能構建出實用好用的E級系統(tǒng)。
監(jiān)控分系統(tǒng)作為高性能計算機系統(tǒng)的神經(jīng)中樞[2],為系統(tǒng)提供全方位的狀態(tài)監(jiān)控、配置控制和調(diào)試維護功能,是高性能計算機系統(tǒng)穩(wěn)定運行的重要保障。隨著高性能計算機系統(tǒng)計算能力達到E級甚至數(shù)E級,組裝密度成倍增加,結點規(guī)模不斷擴大,其可靠性、可擴展性和能耗問題更加突顯[3],這導致監(jiān)控分系統(tǒng)自身在可擴展性、可靠性、可服務性和高效運維等方面面臨更大的挑戰(zhàn),現(xiàn)有監(jiān)控分系統(tǒng)架構和軟硬件設計[4]已不能滿足E級系統(tǒng)需求,亟待全面革新,以支撐E級甚至數(shù)E級系統(tǒng)的構建。
本文重點介紹了E級監(jiān)控分系統(tǒng)面臨的主要挑戰(zhàn)和應對這些挑戰(zhàn)的設計思路。針對可擴展性挑戰(zhàn),提出插件、機框到系統(tǒng)三級區(qū)域自治式監(jiān)控管理架構,3級之間統(tǒng)一通過高速以太網(wǎng)互連,可支持10萬以上結點規(guī)模E級系統(tǒng)的監(jiān)控管理;針對可靠性挑戰(zhàn),在專用監(jiān)控網(wǎng)絡中設計多級雙星型網(wǎng)絡拓撲,通過核心交換機、機框管理單元和系統(tǒng)管理單元的冗余技術,有效避免了單點故障,提升監(jiān)控分系統(tǒng)可靠性;針對可服務性挑戰(zhàn),設計單插件4結點以上的串口遠程訪問、多結點固件帶外并發(fā)遠程更新、插件管理單元BMU(Board Management Unit)物理位置映射、固件高速分發(fā)等功能,可有效支持大規(guī)模結點帶外配置與調(diào)試;針對高效運維需求,引入智能化運維AIOps(Artificial Intelligence for IT Operations)技術[5],基于全系統(tǒng)監(jiān)控數(shù)據(jù),通過機器學習方法,支持故障診斷和預測、制冷設備能耗管理等功能,提升運維效率,降低能耗。
本文剩余部分組織如下:第2節(jié)介紹E級監(jiān)控分系統(tǒng)面臨的主要挑戰(zhàn),第3節(jié)介紹E級監(jiān)控分系統(tǒng)為應對各挑戰(zhàn)的針對性設計,第4節(jié)通過原型系統(tǒng)對部分設計進行驗證,第5節(jié)總結全文。
E級監(jiān)控分系統(tǒng)主要在可擴展性、可靠性、可服務性和高效運維4個方面面臨更大的挑戰(zhàn)。
(1)可擴展性。
監(jiān)控分系統(tǒng)的可擴展性必須與高性能計算機系統(tǒng)的可擴展性相匹配。E級系統(tǒng)較現(xiàn)有100P級系統(tǒng),雖然單結點計算能力有數(shù)倍提升,但計算結點規(guī)模仍將擴展至5~10倍,可能達到10萬之多[6]。待監(jiān)控功能組件數(shù)量的大幅增加對監(jiān)控系統(tǒng)的可擴展性帶來了更大挑戰(zhàn)??蓴U展性挑戰(zhàn)主要體現(xiàn)在2個方面:一是監(jiān)控架構可擴展,隨著計算結點數(shù)量的增加,為確保E級系統(tǒng)構建成本可接受,必須不斷提高組裝密度,因此監(jiān)控架構需滿足機框內(nèi)不斷增加的功能組件的精細化監(jiān)控需求;同時監(jiān)控架構還需具有更強大的機框間橫向擴展能力,用于支持未來數(shù)E級系統(tǒng)的構建。二是處理方式的可擴展,海量功能組件的精細化監(jiān)控,所產(chǎn)生的監(jiān)控信息大數(shù)據(jù)化,很難通過集中方式完成全系統(tǒng)監(jiān)控信息的處理分析,對監(jiān)控組件的處理方式提出了新要求。因此,如何綜合通過監(jiān)控分系統(tǒng)的架構和網(wǎng)絡設計解決可擴展性問題是亟待思考的關鍵問題。
(2)可靠性。
監(jiān)控分系統(tǒng)自身的可靠性是保障高性能計算機系統(tǒng)安全穩(wěn)定運行的前提。在E級系統(tǒng)中,監(jiān)控、互連、存儲和基礎架構組件的規(guī)模都將隨著計算結點規(guī)模的擴大而擴大[7]。假設未來E級系統(tǒng)中的計算結點規(guī)模達到10萬,按現(xiàn)有“天河二號”2倍計算密度的組裝結構來估算,即使不考慮互連和存儲的監(jiān)控組件需求,插件級監(jiān)控組件數(shù)量將超過2萬,機框級監(jiān)控組件數(shù)量也達到800,監(jiān)控組件故障率將大幅提升。如不采取可靠性設計,很可能導致監(jiān)控組件先于功能組件發(fā)生故障(此處故障指引起異?,F(xiàn)象的根因),直接影響到功能組件的異常(此處異常指故障引起的現(xiàn)象)檢測與故障診斷,甚至在突發(fā)情況下導致安全事故。因此,如何提升監(jiān)控系統(tǒng)自身的可靠性,使其成為全系統(tǒng)安全穩(wěn)定運行的堅強后盾,是E級監(jiān)控系統(tǒng)面臨的主要挑戰(zhàn)之一。
(3)可服務性。
監(jiān)控分系統(tǒng)為高性能計算機全系統(tǒng)配置調(diào)試提供了必備手段。監(jiān)控分系統(tǒng)提供的配置調(diào)試手段主要包括狀態(tài)監(jiān)測、結點遠程串口訪問、高速網(wǎng)絡配置管理、遠程固件更新和加切電控制等。實踐證明,這些手段能夠有效地提升高性能計算機全系統(tǒng)調(diào)試效率,但同樣會由于E級系統(tǒng)計算密度增加與結點規(guī)模的擴大而面臨新的挑戰(zhàn)。如遠程串口訪問功能,如何實現(xiàn)單計算插件中4~8個計算結點遠程并發(fā)串口訪問,需要監(jiān)控組件在軟硬件設計上提供支持;又如遠程固件更新功能,如何通過帶外方式快速地將二進制的固件文件分發(fā)到末端監(jiān)控組件上,這些都是需要思考解決的問題。因此,如何有效滿足E級系統(tǒng)大規(guī)模調(diào)試管理需求,提升全系統(tǒng)的配置調(diào)試效率,也是監(jiān)控分系統(tǒng)面臨的難點之一。
(4)高效運維。
監(jiān)控分系統(tǒng)為高性能計算機系統(tǒng)的運維管理提供了高效支撐。監(jiān)控分系統(tǒng)的運維管理功能不但覆蓋了高性能計算機系統(tǒng)中計算、互連、存儲和基礎架構等各個組成部分,還負責對超算中心配套的制冷系統(tǒng)和供電系統(tǒng)實施管理。在E級系統(tǒng)中,可靠性墻和能耗墻與計算規(guī)模和計算能力之間的矛盾變得難以調(diào)和[8]。為確保E級系統(tǒng)中各任務穩(wěn)定低耗運行,海量組件故障的精確診斷與預測、主機系統(tǒng)與制冷系統(tǒng)協(xié)同能耗優(yōu)化管理等成為監(jiān)控分系統(tǒng)必須解決的難題。然而,現(xiàn)有的自動化運維和開發(fā)運維方式由于效率低、準確性差等問題,已無法滿足E級系統(tǒng)高效運維管理的需求。如何充分利用好監(jiān)控分系統(tǒng)收集到的海量監(jiān)控數(shù)據(jù),通過機器學習的方法開展智能化運維,成為監(jiān)控分系統(tǒng)面臨的另一大挑戰(zhàn)。
針對監(jiān)控分系統(tǒng)在可擴展性和可靠性上面臨的挑戰(zhàn),本文提出一種區(qū)域自治式3級監(jiān)控管理架構,如圖1所示。該架構將系統(tǒng)中的監(jiān)控組件劃分為3個層級,包括插件管理單元BMU、機框管理單元CMU(Chassis Management Unit)和系統(tǒng)管理單元SMU(System Management Unit)。3個層級的監(jiān)控組件統(tǒng)一通過網(wǎng)絡接口接入專用監(jiān)控網(wǎng)絡,實現(xiàn)監(jiān)控數(shù)據(jù)和控制命令的上傳下達。
Figure 1 Architecture of the multi-level monitoring with regional autonomy圖1 區(qū)域自治式多級監(jiān)控管理架構
(1)BMU。由于E級系統(tǒng)中計算插件組裝密度大幅提高,互連插件光端口數(shù)成倍增長,僅依賴硬件接口資源受限的機框監(jiān)控單元實施全機框扁平化監(jiān)控管理,監(jiān)控服務的可擴展性和實時性無法得到保障。因此,在監(jiān)控架構設計上向下延伸一級,增加插件管理單元BMU,承擔各功能插件內(nèi)部的精細化監(jiān)控管理。BMU采用模塊化的設計思路,一塊BMU板卡采用標準連接器與各種功能插件對接,通過軟件定義的方式同時滿足計算、互連和存儲等功能插件定制化的監(jiān)控需求。這樣既保證了插件級監(jiān)控服務的可擴展性,同時BMU板卡可獨立設計與升級,且支持各插件單獨調(diào)測試,提高了研發(fā)和調(diào)測試效率。
(2)CMU。CMU硬件以獨立插件形式組裝在機框背板上。為提升機框級監(jiān)控服務的可擴展性,CMU上集成一個機框交換模塊,通過背板實現(xiàn)與機框內(nèi)其它插件BMU的互連,用于構建機框內(nèi)的監(jiān)控網(wǎng)絡;為分擔系統(tǒng)管理單元SMU的服務壓力,CMU上集成一個機框管理模塊,該模塊由低功耗通用微處理器、內(nèi)存和本地盤構成,可先于SMU對機框內(nèi)各功能插件監(jiān)控數(shù)據(jù)進行獨立收集、存儲與處理,提供區(qū)域自治管理能力;CMU上還安裝有一塊BMU板卡,實現(xiàn)對CMU插件、機框環(huán)境(溫度、煙霧等)和機框共享組件(電源模塊、散熱模塊)的監(jiān)控;為保障機框級監(jiān)控服務的可靠性,CMU采用冗余熱備設計,支持單點故障后的自動切換。
(3)SMU。SMU硬件基于通用高性能服務器構建,負責對全系統(tǒng)實施多維度監(jiān)控管理,并通過基于Web的圖形化監(jiān)控管理軟件,為用戶提供系統(tǒng)級的狀態(tài)監(jiān)測、配置控制、調(diào)試維護、故障預測和能耗控制等服務,保障全系統(tǒng)高效調(diào)測試和穩(wěn)定運行。為保障系統(tǒng)級監(jiān)控服務的可靠性,SMU采用冗余多活設計,多臺SMU互為備份,當出現(xiàn)SMU宕機,可確保系統(tǒng)級監(jiān)控服務不中斷。
3個層級的監(jiān)控組件共同實現(xiàn)區(qū)域自治管理功能。在區(qū)域自治管理機制中,根據(jù)計算結點的不同任務定位,由SMU將若干個機框組織成一個自治區(qū)域,如單個機柜由4個機框組成,可以被組織成一個區(qū)域,又或者多個機柜組織成一個區(qū)域。區(qū)域中CMU和BMU分飾“管理者”和“執(zhí)行者”的角色,并由多個“管理者”中選出一個作為“高級管理者”,“高級管理者”負責區(qū)域自治管理策略的制定,傳達SMU的命令,并收集上報區(qū)域內(nèi)各個“管理者”的監(jiān)控情況?!案呒壒芾碚摺钡倪x取可通過人工方式或者自動選取算法,基于區(qū)域內(nèi)CMU的網(wǎng)絡拓撲結構,綜合考慮CMU之間、CMU和SMU之間的跳步數(shù)來確定。
Figure 2 Topology diagram of the system-level monitoring network圖2 監(jiān)控網(wǎng)絡拓撲結構示意圖
在每個自治區(qū)域中,“高級管理者”根據(jù)SMU下達的當前區(qū)域劃分與任務定位,結合該區(qū)域的軟硬件配置、能耗需求和故障特點,制定該區(qū)域的自治管理策略。如異構科學計算區(qū)域中不但需要監(jiān)控多核微處理器結點的運行狀態(tài),還需要重點監(jiān)控眾核加速器和集中共享存儲設備的軟硬件狀態(tài)、功耗和故障;大數(shù)據(jù)計算區(qū)域中則需要增加分布式存儲設備的狀態(tài)及故障監(jiān)控等等;在此基礎上,提供適合該區(qū)域任務的軟件環(huán)境和并發(fā)固件帶外更新、高速網(wǎng)絡配置管理、故障調(diào)試診斷等手段,高效實現(xiàn)區(qū)域全面自治管理。區(qū)域自治管理機制可有效降低SMU的管理復雜度,支持面向應用任務劃分的區(qū)域管理,支持單柜、單排以及各種規(guī)模的系統(tǒng)調(diào)試,大幅提升監(jiān)控分系統(tǒng)的可擴展性和管理效率,結合專用監(jiān)控網(wǎng)絡設計,可有效滿足10萬結點甚至更大規(guī)模高性能計算機系統(tǒng)的監(jiān)控管理需求。
監(jiān)控網(wǎng)絡獨立于用于業(yè)務數(shù)據(jù)交互的高速互連網(wǎng)絡,負責3級監(jiān)控組件之間互連互通,其設計是滿足E級監(jiān)控分系統(tǒng)高可擴展性和高可靠性的關鍵。在高可擴展性方面,通過機框內(nèi)CMU上的機框交換模塊設計,滿足單機框最大組裝密度下的監(jiān)控需求;通過機框間的監(jiān)控網(wǎng)絡拓撲設計和2級外部交換機選型,滿足10萬結點規(guī)模E級系統(tǒng)的監(jiān)控需求。在高可靠性方面,通過多級雙星型網(wǎng)絡拓撲設計,實現(xiàn)CMU的冗余熱備、SMU的冗余多活和核心交換機的冗余熱備。
監(jiān)控網(wǎng)絡分為3層,如圖2所示:第1層為核心層,由2臺多端口高速核心交換機組成,端口數(shù)和吞吐率與匯聚層交換機數(shù)量和吞吐率相匹配;第2層為匯聚層,由若干多端口千兆以太網(wǎng)交換機組成,端口數(shù)與吞吐率與接入層CMU機框交換模塊相匹配;第3層為接入層,由所有主從CMU機框交換模塊組成,端口數(shù)由機框內(nèi)功能插件數(shù)量來決定。
(1)在核心層中,考慮監(jiān)控網(wǎng)絡的高可用性,選用的2臺多端口高速核心交換機互為冗余,可虛擬成1臺核心交換機,核心交換機與匯聚交換機之間采用雙星型拓撲,避免核心交換機單點故障。2臺或多臺SMU連接到2臺核心交換機上,通過核心交換機的網(wǎng)關功能實現(xiàn)SMU的冗余多活。
(2)在匯聚層中,若干機框分為1組,每組采用1臺48端口千兆網(wǎng)交換機構建網(wǎng)絡。組內(nèi)每個機框的主從CMU都通過1路千兆以太網(wǎng)鏈路連接到該48端口千兆交換機上,千兆交換機分別上行2路萬兆以太網(wǎng)鏈路連接到2臺高速核心交換機上。
(3)在接入層中,主從CMU與各功能插件的BMU之間構建雙星型冗余拓撲,如圖3所示,框內(nèi)2個交換平面相互獨立,通過冗余切換策略,可有效避免CMU的單點故障,提升機框級監(jiān)控服務的可靠性。
Figure 3 Topology diagram of the chassis-level double star monitoring network圖3 機框內(nèi)雙星型監(jiān)控網(wǎng)絡拓撲結構示意圖
針對E級監(jiān)控分系統(tǒng)在可服務性上面臨的挑戰(zhàn),主要對BMU和CMU上的配置調(diào)試功能開展優(yōu)化設計。
(1)BMU。BMU作為整個監(jiān)控分系統(tǒng)的末端,是所有監(jiān)控功能的最終“執(zhí)行者”。BMU通過多路I2C、GPIO等接口與功能插件主板上的傳感器相連接,實時監(jiān)測器件的電壓、電流和溫度等狀態(tài)參數(shù),并負責根據(jù)閾值判斷狀態(tài)正常與否,利用SNMP-Trap的方式上報CMU;BMU還通過I2C或GPIO接口對功能插件上計算結點和高速互連芯片實施加切電控制,同時支持突發(fā)情況下自動安全保護,即過溫切電等。針對帶內(nèi)更新結點固件依賴于操作系統(tǒng)的問題,設計帶外多結點固件并發(fā)更新功能,使得更新時機與結點系統(tǒng)是否正常工作無關,同時優(yōu)化固件更新的軟件棧,縮短固件更新時間,提高大規(guī)模系統(tǒng)配置效率。針對多結點并發(fā)遠程調(diào)試需求,BMU的主控芯片通過外接USB轉(zhuǎn)串口芯片,可實現(xiàn)1路USB接口擴展至少4路串口,并且通過硬件手段檢測USB設備的加載順序,支持多路串口設備與結點號之間有序映射,有效滿足了高組裝密度計算插件的結點遠程調(diào)試需求。
(2)CMU。CMU作為機框的“管理者”,負責向機框內(nèi)各BMU下達命令,并收集處理BMU上報的各類監(jiān)控數(shù)據(jù)。針對機框自動分配IP地址的BMU無法定位物理位置的問題,CMU主控通過MDIO接口訪問機框交換模塊,獲取交換芯片的端口與IP地址映射表,再根據(jù)交換端口與槽位號的布線關系,可有效識別BMU物理位置,在高效配置IP地址的同時實現(xiàn)了監(jiān)控數(shù)據(jù)源的精確定位。針對大規(guī)模系統(tǒng)中固件和服務更新速度慢的問題,CMU設計多級組播樹的文件分發(fā)機制,SMU將文件分發(fā)給少量CMU,再通過CMU之間“一傳十,十傳百”的方式,可有效提高文件在監(jiān)控網(wǎng)絡中的分發(fā)速度,滿足高效配置大規(guī)模系統(tǒng)需求。針對主從CMU冗余切換中存在誤切、拒切和“腦分裂”的問題,CMU設計一種基于混合狀態(tài)心跳的對端BMU仲裁冗余切換機制,該機制中的混合狀態(tài)心跳包含軟硬件多種狀態(tài)信息,以確保主從切換的準確性;同時,當主從CMU之間的心跳線出現(xiàn)故障時,通過收到補救心跳的對端BMU來實施主從仲裁,有效避免“腦分裂”現(xiàn)象的出現(xiàn)。
(3)SMU。SMU是全系統(tǒng)的“大總管”,通過基于RESTFUL形式的輕量級監(jiān)控管理協(xié)議與CMU交互。在SMU上部署的系統(tǒng)級監(jiān)控數(shù)據(jù)管理平臺,負責存儲和展現(xiàn)海量多源異構的帶內(nèi)、帶外的監(jiān)控數(shù)據(jù),并提供掛載智能化運維功能接口。針對大數(shù)據(jù)處理分析時訪問量大的特點,設計高可靠的數(shù)據(jù)索引方法和高通量的數(shù)據(jù)訪問策略,為高效訓練建模和預測推理提供支持,保證數(shù)據(jù)訪問的高可獲得性和海量數(shù)據(jù)分析的實時性。
為提高E級系統(tǒng)的運維效率,需引入智能化運維(AIOps)概念,基于海量監(jiān)控數(shù)據(jù),結合機器學習算法,開展系統(tǒng)級智能化運維探索。然而,智能化運維不但覆蓋E級主機系統(tǒng)及配套的制冷系統(tǒng)和供電系統(tǒng),涉及資源管理與調(diào)度、故障診斷與預測、能耗管理與優(yōu)化等諸多方面,且海量監(jiān)控數(shù)據(jù)作為智能運維的基礎,從采集、存儲到分析建模各步驟都面臨需要解決的問題。考慮到篇幅受限,本節(jié)主要從主機系統(tǒng)故障預測和制冷設備能耗管理2個方面分析建模相關設計思路。
3.4.1 主機系統(tǒng)故障預測
主機系統(tǒng)故障預測主要分3大功能模塊:異常檢測[9]、故障診斷[10]和故障預測[11]。
在異常檢測模塊中,通過收集一段時間系統(tǒng)某項指標相關的監(jiān)控數(shù)據(jù),結合人工標注,利用機器學習的方法,如聚類算法、隨機森林等,來進行關鍵性能指標KPI(Key Performance Indicator)曲線分析,構建起其中的正常模式與異常模式,再對實時監(jiān)控數(shù)據(jù)進行模式匹配,發(fā)現(xiàn)異常。
在故障診斷模塊中,由于E級系統(tǒng)規(guī)模大,系統(tǒng)復雜,導致同一故障源會觸發(fā)一系列異常事件,不同的故障源也可能觸發(fā)得到相同的異常事件。因此,需要基于檢測到的海量異常事件,結合運維人員經(jīng)驗,通過機器學習的方法,如FP-Growth、Apriori等,對異常事件之間的關聯(lián)關系開展分析挖掘,構建較完備的故障傳播鏈。故障傳播鏈可以用有向無環(huán)圖來表示,當系統(tǒng)檢測出異常時,可通過搜索算法,沿著故障傳播鏈找出根因,實現(xiàn)異常診斷。
在故障預測模塊中,主要挑戰(zhàn)在于訓練故障預測模型的監(jiān)控數(shù)據(jù)需要足夠多,但實際情況中故障數(shù)量較少,且監(jiān)控數(shù)據(jù)中有效信息也相對較少。故障預測首先要通過機器學習的方法,如決策樹、聚類樹和隨機森林等,并結合運維人員經(jīng)驗,從歷史監(jiān)控數(shù)據(jù)中找出導致該類異常事件的相關信號,當出現(xiàn)這些信號,則認為異常事件將會發(fā)生,并通過故障診斷定位根因,幫助運維人員提前處理問題。
3.4.2 制冷設備能耗管理
制冷系統(tǒng)作為超算中心中除E級主機系統(tǒng)外的第一“能耗大戶”,能耗優(yōu)化需求迫切[12]。現(xiàn)有制冷系統(tǒng)能耗優(yōu)化手段缺乏制冷設備相互之間的和與主機系統(tǒng)之間的有效協(xié)同,效率低、效果差。此外,由于制冷設備種類多,參數(shù)量大,影響能耗的因素復雜,且與主機系統(tǒng)之間存在復雜能量轉(zhuǎn)換關系,耦合緊密,因此協(xié)同能耗管理是一個極具挑戰(zhàn)的難題。采用大數(shù)據(jù)加機器學習的方法是解決這一難題的有效手段之一[13]。本節(jié)給出一種基于機器學習的制冷設備能耗調(diào)節(jié)方法。該方法包括制冷設備能耗預測和面向?qū)崟r負載的制冷設備能耗調(diào)節(jié)2個模塊。
在制冷設備能耗預測方法中,基于監(jiān)控分系統(tǒng)采集到的制冷設備歷史能耗、配置參數(shù)和環(huán)境等數(shù)據(jù),結合系統(tǒng)歷史作業(yè)負載數(shù)據(jù),在對樣本數(shù)據(jù)清理、抽取的基礎上,綜合利用數(shù)據(jù)挖掘和機器學習的方法進行分析,訓練并構建制冷設備智能化能耗預測模型。該模型包括2個方面:一是多配置參數(shù)條件下制冷量和能耗預測模型,為制冷設備配置參數(shù)方案優(yōu)化提供評估手段;二是面向作業(yè)負載的最小制冷量需求和最低制冷能耗預測模型,為制冷設備配置參數(shù)方案調(diào)整提供優(yōu)化目標。
在制冷設備能耗調(diào)節(jié)方法中,面向動態(tài)變化的系統(tǒng)負載,設計面向系統(tǒng)負載的制冷設備配置參數(shù)生成框架,生成過程將劃分為2個階段,第1階段基于作業(yè)負載變化對制冷量與能耗需求進行預測,采取面向最小制冷量和最低能耗目標的配置參數(shù)反向設計方式,達到快速生成目標參數(shù)配置方案的目標;第2階段基于制冷量與能耗量目標評估實現(xiàn)參數(shù)配置方案快速生成,即面向確定的制冷量與能耗量目標,設計可快速收斂的高維配置參數(shù)空間近似最優(yōu)解算法,從而可根據(jù)作業(yè)負載數(shù)據(jù)找出滿足該負載且支持制冷設備最低能耗的配置參數(shù),實現(xiàn)制冷設備的有效節(jié)能。
為對監(jiān)控分系統(tǒng)的設計進行階段性驗證,完成了BMU、CMU硬件原型的設計與實現(xiàn),以及3級監(jiān)控組件主要軟件功能研發(fā),并依托基礎架構分系統(tǒng)構建了一個機框規(guī)模的原型系統(tǒng)。在該原型系統(tǒng)上,開展了監(jiān)控架構、監(jiān)控網(wǎng)絡和監(jiān)控功能的相關驗證。但是,由于原型系統(tǒng)規(guī)模小,實際運行時間短,部分系統(tǒng)級設計,如區(qū)域自治管理、固件分發(fā)、智能化運維相關功能,尚不具備驗證條件,因此本節(jié)僅對可驗證功能情況進行描述。
如圖4所示,機框原型系統(tǒng)由1套機框結構件、32塊計算插件、2塊互連插件、2個機框管理單元CMU、1塊背板以及配套供電和散熱組件等組成。計算插件、互連插件和CMU上都安裝有插件管理單元BMU,BMU和CMU之間通過背板實現(xiàn)互連,構建機框內(nèi)雙星型監(jiān)控網(wǎng)絡;系統(tǒng)管理單元SMU與CMU之間通過以太網(wǎng)實現(xiàn)互連。
Figure 4 Chassis prototype圖4 機框原型系統(tǒng)
(1)BMU板卡上集成一顆嵌入式SOC主控、DDR3內(nèi)存顆粒和SPI FLASH等器件,通過SODIMM插槽與各功能插件的主板連接,提供多路I2C、RGMII、SPI、USB、JTAG、GPIO等硬件I/O接口。BMU上基于嵌入式操作系統(tǒng)部署有插件級監(jiān)控管理軟件。BMU實物如圖5所示。
Figure 5 BMU prototype圖5 BMU板卡實物圖
(2)CMU主板由一顆低功耗的FT-HK芯片作為主控,配置有2 GB DDR4的內(nèi)存顆粒、256 GB SSD固態(tài)盤、48端口的交換芯片和1塊BMU板卡。前面板提供2個RJ45千兆網(wǎng)接口用于對接外部的匯聚交換機,1個USB接口用于系統(tǒng)配置與調(diào)試。CMU上基于裁剪優(yōu)化后Linux操作系統(tǒng)部署有機框級監(jiān)控管理軟件。CMU實物如圖6所示。
Figure 6 CMU prototype圖6 CMU實物圖
(3)SMU硬件上為一款12盤位的雙路通用服務,在通用Linux操作系統(tǒng)上部署有基于ElasticSearch和Kibana的系統(tǒng)級監(jiān)控數(shù)據(jù)統(tǒng)管理平臺。SMU實物如圖7所示。
Figure 7 SMU server圖7 SMU實物圖
Figure 8 Connectivity verification of the 3-level monitoring architecture圖8 3級監(jiān)控架構連通性驗證
4.2.1 功能驗證
(1)監(jiān)控架構驗證。
SMU向CMU發(fā)送powerctl指令進行指定計算插件的加切電控制,CMU接收到后,向BMU發(fā)送基于IPMI的加切電指令,并完成計算插件的加切電控制。驗證情況如圖8所示。
圖8a表示從SMU的終端上輸入powerctl指令,通知CMU對原型系統(tǒng)中8,9,24,25,26號計算插件進行加電操作,圖8c顯示上述計算插件初始狀態(tài)均為未上電狀態(tài),用0表示。圖8b顯示CMU的后臺程序執(zhí)行情況,可以看出在收到SMU命令后,CMU對相應計算插件進行了加電power on操作,相應的圖8d顯示了加電后的計算插件狀態(tài),可以發(fā)現(xiàn)目標計算插件均已變?yōu)樯想姞顟B(tài),用1表示。該結果驗證了3級監(jiān)控架構中組件之間的連通性。
(2)遠程并發(fā)串口訪問功能驗證。
SMU上的SecureCRT軟件同時開啟多個計算結點串口,并通過操作驗證遠程并發(fā)串口訪問功能。驗證情況如圖9所示,結果表明各計算結點的串口能同時遠程訪問和交互。
Figure 9 Verification of the parallel serial port over lan access圖9 遠程并發(fā)串口訪問功能驗證
(3)監(jiān)控數(shù)據(jù)采集功能驗證。
在CMU的終端上輸入計算插件監(jiān)控數(shù)據(jù)采集命令,等待BMU返回結果。驗證情況如圖10所示,結果表明CMU能夠有效地從BMU上獲取計算插件所有傳感器信息。
Figure 10 Verification of monitoring data acquisition function圖10 監(jiān)控數(shù)據(jù)采集功能驗證
Figure 11 Verification of the BIOS firmware update function圖11 固件更新功能驗證
(4)固件遠程更新功能驗證。
在CMU的終端上輸入計算結點固件(BIOS)遠程更新命令,對相應固件進行在線遠程更新,等待BMU返回結果。驗證情況如圖11所示,結果表明固件遠程更新功能正確。
(5)監(jiān)控圖形化界面功能驗證。
在瀏覽器中輸入SMU的web界面URL,查看SMU圖形化監(jiān)控功能。驗證情況如圖12所示,結果表明圖形化監(jiān)控功能正常。
Figure 12 Function Verification of monitoring graphical interface圖12 監(jiān)控圖形化界面功能驗證
4.2.2 性能驗證
在原型系統(tǒng)性能驗證中,將本文提出的系統(tǒng)與上一代實際系統(tǒng)中的監(jiān)控分系統(tǒng)進行了對比測試,分別從CMU的數(shù)據(jù)采集時間、加切電時延、固件更新時間等3個方面評測原型系統(tǒng)的性能表現(xiàn)。性能比較結果如表1所示。
(1)機框數(shù)據(jù)采集。
由于原型系統(tǒng)中3級監(jiān)控架構采用了CMU到BMU、BMU到多個結點的2級并發(fā)數(shù)據(jù)采集機制,而上一代監(jiān)控分系統(tǒng)中無BMU,CMU僅通過多路低速I2C硬件接口與對應數(shù)量插件相連,因此原型系統(tǒng)的機框數(shù)據(jù)采集時間要遠優(yōu)于上一代監(jiān)控分系統(tǒng)。
Table 1 Results of the performance comparison表1 性能驗證對比測試結果
(2)加切電時延。
由于原型系統(tǒng)的監(jiān)控診斷分系統(tǒng)中增加了插件的監(jiān)控層級,計算插件上復雜可編程邏輯器件CPLD(Complex Programmable Logic Device)設計預留的加切電延時相應增加,以保證加切電命令確實完整執(zhí)行,因此相比上一代監(jiān)控分系統(tǒng),原型系統(tǒng)的加切電時延有所增大。
(3)固件更新時間。
在單結點上,原型系統(tǒng)中采用的帶外遠程固件更新方式和上一代使用的帶內(nèi)固件更新方式相比時間更短,主要原因是帶外固件更新硬件通路與帶內(nèi)固件更新一致,但從軟件進行了裁剪優(yōu)化,因此表現(xiàn)更好。
(4)冗余切換。
由于上一代監(jiān)控分系統(tǒng)不具備主從CMU冗余架構,本文僅對原型系統(tǒng)上主從CMU冗余切換功能進行測試。通過模擬主CMU故障,共進行750次冗余切換,記錄下每次冗余切換時間,驗證結果如圖13所示。從結果可以看出,冗余切換時間比較穩(wěn)定地維持在430 ms左右,表明冗余切換準確性和穩(wěn)定性較強。
Figure 13 Verification of redundancy switching 圖13 冗余切換功能驗證
本文重點介紹了E級高性能計算機系統(tǒng)中監(jiān)控分系統(tǒng)面臨的主要挑戰(zhàn)和應對這些挑戰(zhàn)的設計思路。針對可擴展性挑戰(zhàn),可通過增加監(jiān)控層級和區(qū)域自治的方式解決;針對可靠性挑戰(zhàn),可通過專用監(jiān)控網(wǎng)絡設計和增加監(jiān)控組件冗余備份能力來避免單點故障;針對可服務性挑戰(zhàn),可通過軟硬件協(xié)同設計,優(yōu)化各類監(jiān)控服務大規(guī)模系統(tǒng)效率來解決;針對高效運維的需求,可通過探索智能化運維方法來提升E級系統(tǒng)可靠性,降低能耗。這些設計思路部分已在機框規(guī)模原型系統(tǒng)上得到驗證,對于下一步E級監(jiān)控分系統(tǒng)的構建有較大的指導意義。