謝禮江
(廣東省氣象探測數(shù)據(jù)中心,廣東 廣州 510088)
2015年,廣東省氣象局建設(shè)的華為OceanStor 18800高性能存儲投入業(yè)務運行以來,在支撐氣象業(yè)務系統(tǒng)中發(fā)揮了非常重要的作用。這套高性能存儲是廣東省氣象業(yè)務網(wǎng)、IDEA接口平臺、SWIFT[1]、基礎(chǔ)設(shè)施虛擬化資源池平臺、廣東省氣象決策輔助系統(tǒng)、廣東省省突發(fā)布管理系統(tǒng)、FAST3.0業(yè)務平臺、CIMISS等50個核心關(guān)鍵業(yè)務系統(tǒng)的存儲資源支撐。隨著這套存儲滿負載運行年限增加(已運行6 a)和逐漸趨于老化,存儲硬件設(shè)備進入IT產(chǎn)品生命周期(5~7 a)末段,性能處于下降的趨勢,故障率也逐年提高[2]。僅在2020年,就更換隱患或故障盤30個,升級控制器軟件3次,更換其它硬件設(shè)備8次,全年平均每15 d就需要處理1次故障,每月至少出現(xiàn)1~3個隱患盤,機框、主板、CPU、內(nèi)存、網(wǎng)卡和HBA卡等硬件設(shè)備也無規(guī)律地出現(xiàn)故障,且此套存儲硬件設(shè)備逐漸斷供,廠商計劃將在2021年12月31日停止對OceanStor 18800高性能存儲提供技術(shù)維保服務,這將對相關(guān)氣象業(yè)務的安全保障和業(yè)務連續(xù)性構(gòu)成極大風險。故障會導致業(yè)務受到影響,甚至導致業(yè)務中斷或數(shù)據(jù)丟失,不利于氣象業(yè)務系統(tǒng)穩(wěn)定運行。
為保持現(xiàn)有業(yè)務的連續(xù)性,以及滿足近年增加的氣象業(yè)務,急需建設(shè)一套高性能存儲替換現(xiàn)有存儲。由于氣象業(yè)務具有時效性、連續(xù)性和穩(wěn)定性[3]的特點,需要基于氣象業(yè)務零中斷的基礎(chǔ)上,探討研究如何把存放在OceanStor 18800高性能存儲的數(shù)據(jù)遷移到新存儲上,實現(xiàn)這50多個核心關(guān)鍵業(yè)務系統(tǒng)的平滑遷移。
OceanStor 18800存儲采用 RAID2.0+塊虛擬化卷架構(gòu),所有磁盤陣列柜全部配置為高性能15K 轉(zhuǎn)速的SAS(Serial Attached SCSI)磁盤和固態(tài)硬盤(SSD:Solid State Disk)[4],以高性能、高可靠、高擴展、存儲效率、數(shù)據(jù)保護為其設(shè)計理念,總共配置了6個控制器,1TB緩存,占用機房機柜4個,總可用容量550 TB,組成多活控制器群集,為業(yè)務端應用主機訪問存儲提供了負載均衡和高可用功能。
OceanStor 18800存儲根據(jù)氣象業(yè)務需求,目前分配13個硬盤域,13個存儲池。劃分20個卷LUN(logic unit number)約500 TB作為虛擬化集群資源池使用[5],運行了700臺虛擬服務器機,部署了超50個核心關(guān)鍵氣象業(yè)務系統(tǒng);60個卷約50 TB空間作為CIMISS核心業(yè)務數(shù)據(jù)庫系統(tǒng)的Oracle RAC群集使用。
Oceanstor 18800高性能存儲承載著廣東省氣象臺、廣東省探測數(shù)據(jù)中心、廣東省氣象服務中心等10個單位的核心關(guān)鍵氣象業(yè)務系統(tǒng)服務。為保持現(xiàn)有業(yè)務的連續(xù)性,以及滿足近年增加的氣象業(yè)務存儲需求,在選擇新存儲時需滿足以下幾點要求:
性能和存儲空間更優(yōu)。氣象業(yè)務飛速發(fā)展,基礎(chǔ)設(shè)施資源池的存儲資源是業(yè)務系統(tǒng)的底層支撐,其性能和存儲是否滿足業(yè)務需求直接影響著氣象現(xiàn)代化和信息化的發(fā)展速度。
能耗和占用物理空間更小。減少耗能可以降低成本,也是人類在進行任何生產(chǎn)活動追求的目標;減少占用物理空間,提高機房使用率。
支持在線數(shù)據(jù)遷移。根據(jù)氣象業(yè)務時效性、連續(xù)性和穩(wěn)定性的特點,氣象業(yè)務的安全保障和業(yè)務連續(xù)性是最優(yōu)先考慮的因素,無法在線數(shù)據(jù)遷移意味著要停50個關(guān)鍵核心的業(yè)務系統(tǒng),業(yè)務系統(tǒng)的中斷會對氣象業(yè)務造成很大影響。
按照新存儲建設(shè)要求思路,本文選擇同品牌和同系列且性能更優(yōu)、擴展性更好的華為 OceanStor18810 V5 “芯”系列高端智能混合閃存存儲代替舊存儲。相比舊存儲,OceanStor18810 V5繼承了舊存儲塊級虛擬化、智能緩存分區(qū)技術(shù)、同步遠程復制、異步遠程復制、智能數(shù)據(jù)迅移、智能數(shù)據(jù)遷移、異構(gòu)虛擬化等技術(shù)特點,并針對舊存儲存在的架構(gòu)設(shè)計和硬盤設(shè)備老舊、占用物理空間多、耗能高等問題研發(fā),運用SmartMatrix 3.0 架構(gòu)、閃存優(yōu)化技術(shù)、SAN 與 NAS 一體化雙活、高效能的硬件平臺,為數(shù)據(jù)存儲和使用提供可靠性更強、性能更好、業(yè)務數(shù)據(jù)遷移更穩(wěn)定的解決方案。
OceanStor18810 V5采用智能矩陣式多控架構(gòu),以控制框為單位橫向擴展,達到性能和容量的線性增長,運用4U Acitve-Active 四控冗余高密架構(gòu)設(shè)計,每個控制框支持 4 個控制器和 2 個控制器 2 種方式,在提高性能的同時,又減少了占用的物理空間,相比Oceanstor 18800舊存儲,各方面都具有很大優(yōu)勢(表1)。
表1 新舊存儲性能對比
本次存儲涉及VMware 虛擬化集群資源池和2臺服務器CIMISS ORACLE 數(shù)據(jù)庫,資源池承載著約700臺虛擬機,運行了超過50個氣象關(guān)鍵核心系統(tǒng),采用異構(gòu)遷移技術(shù)在存儲底層進行約430 TB的數(shù)據(jù)、多應用的混合模式遷移,必須基于安全性、可行性和可操作性的原則進行探討研究,減少數(shù)據(jù)遷移過程中對氣象業(yè)務造成的影響甚至數(shù)據(jù)丟失風險。
安全性。在數(shù)據(jù)遷移過程中,數(shù)據(jù)的安全放在首位,整個實施調(diào)優(yōu)方案也是以數(shù)據(jù)安全為出發(fā)點進行設(shè)計。
圖1 存儲遷移網(wǎng)絡圖
可行性。數(shù)據(jù)遷移綜合考慮業(yè)務需求,環(huán)境情況和應用部署情況,根據(jù)收集到的信息進行充分考慮,對數(shù)據(jù)遷移和業(yè)務要求評估討論,確保數(shù)據(jù)遷移可行。
可操作性。整套數(shù)據(jù)遷移也同時考慮在實施過程中操作的難易程度,工作量,復雜度等因素,要求可操作性強,降低氣象業(yè)務影響風險系數(shù)。
異構(gòu)虛擬化遷移技術(shù)主要是通過把異構(gòu)陣列映射到本端陣列,把異構(gòu)陣列的存儲空間通過eDevLUN(ExternalDevice LUN)的方式管理和利用起來。元數(shù)據(jù)卷用于對eDevLUN 的數(shù)據(jù)存儲位置進行管理,在本端存儲系統(tǒng)上創(chuàng)建的eDevLUN與異構(gòu)存儲系統(tǒng)上的外部 LUN形成一一對應的關(guān)系,對eDevLUN的讀寫操作實現(xiàn)了對外部LUN的數(shù)據(jù)訪問。通過 LUN偽裝技術(shù),讓存儲系統(tǒng)的eDevLUN的WWN 和 Host LUN ID設(shè)置成與異構(gòu)存儲系統(tǒng)上的 LUN 的信息一致,在數(shù)據(jù)遷移完成后,通過主機多路徑軟件實現(xiàn)在線 LUN 的無縫切換,從而在主機不中斷業(yè)務的情況下完成數(shù)據(jù)遷移。
使用MigrationDirector存儲數(shù)據(jù)遷移工具具有全自動、高效并發(fā)、靈活設(shè)置的特點,通過管理服務器自動推送遷移服務器,存儲自動掛載和卸載,運用多并發(fā)執(zhí)行任務從源端存儲搬運到目的端存儲,提高遷移速度和效率;可根據(jù)實際場景靈活配置線程數(shù)和啟動時間,保障業(yè)務遷移的靈活性和彈性,避開氣象業(yè)務高峰期,減少業(yè)務受影響風險。
MigrationDirector工具通過以太網(wǎng)同存儲和業(yè)務主機相連,使用SSH協(xié)議連接源存儲和目的存儲的22號端口,以及REST協(xié)議連接目的存儲8088號端口,通過SSH協(xié)議連接2臺業(yè)務主機執(zhí)行存儲命令。
3.3.1 存儲規(guī)劃 存儲劃分卷滿足VMware虛擬化集群資源池和CIMISS Oracle數(shù)據(jù)庫2個應用場景。為確保數(shù)據(jù)完整性、數(shù)據(jù)遷移安全性和存儲性能一致性,本次新存儲的硬盤域配置和舊存儲的硬盤域配置保持基本一致。
圖2 存儲遷移原理圖
CIMISS Oracle數(shù)據(jù)庫對應70個LUN,總計需要7000個IOPS,綜合考慮緩存命中和硬盤提供的IOPS、業(yè)務讀寫模型(讀寫比:9∶1)和讀寫懲罰等因素,本次為數(shù)據(jù)庫規(guī)劃6塊7.68 TB SSD(RIAD 10)和40塊2.4 TB 10K SAS磁盤(RAID 6 8+2策略),預留10%空間用作自動分層遷移數(shù)據(jù)時用于中轉(zhuǎn)空間使用。
VMware虛擬化集群資源池占用主要存儲空間,規(guī)劃16塊7.68 TB SSD(RIAD 6)和84塊2.4 TB 10K SAS磁盤,采用RAID 6 8+2策略預留8塊磁盤做應急性能和容量擴容使用;50塊10 TB 7.2K NL SAS 323 TB可用,預留10%空間用作自動分層遷移數(shù)據(jù)時用于中轉(zhuǎn)空間使用。
3.3.2 數(shù)據(jù)遷移評估 數(shù)據(jù)遷移時間窗口 在目的存儲接管源存儲進行數(shù)據(jù)遷移時,不管是零中斷遷移還是短暫中斷遷移,都會對存儲上層業(yè)務有一定的影響[6]。接管存儲和數(shù)據(jù)遷移在雙存儲有大量的讀寫操作,IPOS值是否能滿足業(yè)務正常運行是重點要素。氣象業(yè)務在臺風、暴雨等天氣過程時,業(yè)務繁忙,不適合進行數(shù)據(jù)遷移。選擇數(shù)據(jù)遷移時間窗口原則是在業(yè)務空閑時存儲負載量相對較小的時間段。
數(shù)據(jù)遷移存儲 為保證業(yè)務的正常下發(fā),在零中斷遷移時需確保目的存儲在源存儲的空閑啟動器至少有2個,且分配在不同的控制器上;不同型號與版本的目的存儲接管的源存儲的數(shù)量、LUN的數(shù)量與路徑數(shù)是有限制,充分考慮評估數(shù)據(jù)遷移的各種因素。
備份和配置 數(shù)據(jù)遷移之前一定要進行業(yè)務數(shù)據(jù)的備份操作,用于緊急情況下的數(shù)據(jù)回退,確保在執(zhí)行一致性分裂時,選擇業(yè)務較空閑階段進行。在執(zhí)行接管任務時,需要更改配置之后,目的存儲才能接管存儲,更改配置之前確認更改不會造成配置沖突。主機操作系統(tǒng)為Linux且使用的多路徑軟件為原生多路徑(DMMultipath),在選擇零中斷遷移時,先完成主機多路徑軟件的配置。
3.3.3 風險評估和回退方案 業(yè)務數(shù)據(jù)遷移受多種因素影響,屬于高危操作,必須做好氣象業(yè)務風險評估和降低風險隱患的應急措施[7](表2)。
表2 數(shù)據(jù)遷移風險評估
遷移風險。遷移前數(shù)據(jù)進行備份,以防止遷移失敗可能導致的數(shù)據(jù)丟失;遷移前還需對源存儲進行一次全面的檢查,包括存儲硬件以及存儲的配置信息、性能等,確保滿足遷移所需要的條件;遷移過程中,確保網(wǎng)絡通暢,以防網(wǎng)絡原因?qū)е逻w移失敗。
回退方案。在執(zhí)行數(shù)據(jù)遷移的過程中,遇到不可抗力因素或者其他影響數(shù)據(jù)遷移的因素,為了保證業(yè)務不中斷,異常情況時可停止數(shù)據(jù)遷移操作,進行相應的回滾操作,確保業(yè)務的連續(xù)性以及業(yè)務數(shù)據(jù)的完成性。
3.3.4 數(shù)據(jù)遷移流程 數(shù)據(jù)遷移主要分為檢查、創(chuàng)建任務、執(zhí)行任務和驗證4個流程,通過主機、業(yè)務、操作系統(tǒng)、配置和網(wǎng)絡等狀態(tài)檢查,確保滿足數(shù)據(jù)遷移的環(huán)境、配置、軟件和網(wǎng)絡要求;再通過創(chuàng)建任務、執(zhí)行任務(業(yè)務接管、存儲遷移)來完成數(shù)據(jù)遷移,任務結(jié)束后對主機、配置、系統(tǒng)和業(yè)務驗證(圖3)。
圖3 數(shù)據(jù)遷移流程圖
驗證是數(shù)據(jù)遷移的最后一步,也是判斷數(shù)據(jù)是否遷移成功的重要準則[8]。查看主機鏈路狀態(tài),通過 “l(fā)sdev-Cc hdiskx” 查看所有磁盤列表和磁盤路徑,狀態(tài)為Enable則代表成功;登錄DeviceManager查看告警中心,查看主機IOPS、帶寬、響應時間,無告警代表成功;驗證系統(tǒng)性能報表查看性能報表,確認系統(tǒng)業(yè)務正常,且性能符合預期。
3.3.5 數(shù)據(jù)遷移實現(xiàn) 本次遷移以業(yè)務空閑時存儲負載量相對較小的時間段原則,通過CIMISS數(shù)據(jù)庫、VMware虛擬化資源池和50多個氣象業(yè)務核心系統(tǒng)運維管理團隊調(diào)研評估, 選擇2021年11月15—19日為數(shù)據(jù)遷移時間窗口,此時間段是在非汛期且無任何天氣過程,廣東省未發(fā)出暴雨、臺風、寒冷、高溫等預警信號,期間存儲負載量是最高峰負載量的1/8,也是全年存儲負載量最低的時間段。
數(shù)據(jù)遷移準備。首先在18810 V 5新存儲按規(guī)劃完成邏輯卷LUN創(chuàng)建,進入存儲管理系統(tǒng)分配73個LUN邏輯卷到主機,Hdisk4-76是多路徑軟件納管的磁盤,為數(shù)據(jù)存放提供優(yōu)于原來的存儲邏輯環(huán)境;其次通過對2套存儲、氣象業(yè)務系統(tǒng)主機逐一做健康檢查,包括CPU占用、鏈路冗余、性能、網(wǎng)絡、權(quán)限配置、主機多路徑設(shè)備。
配置信息備份。存儲多路徑信息是數(shù)據(jù)遷移失敗回滾的重要配置文件,備份配置信息有利于減少遷移失敗恢復的時間。保存需要的虛擬磁盤屬性信息,一一對應保存,用于升級后將磁盤屬性重置回升級前的屬性。其中包括虛擬磁盤選路算法、隊列深度、預留策略等,通過執(zhí)行命令lsattr -El hdiskX查詢并保存虛擬磁盤的屬性信息。
數(shù)據(jù)遷移。按原存儲承載運行的VMware虛擬化集群資源池和2臺服務器CIMISS ORACLE 數(shù)據(jù)庫類型的應用,分2次集中遷移,根據(jù)數(shù)據(jù)遷移流程逐一執(zhí)行,動態(tài)觀察、監(jiān)控和驗證,本次430 TB數(shù)據(jù)用時82 h,在初始階段新存儲0負載的情況下最高速度可達2.1 GB·s-1,隨著數(shù)據(jù)的遷移,負載的增加,遷移速度也逐漸下降,其平均遷移速度為1.5 GB·s-1。
傳統(tǒng)的數(shù)據(jù)遷移方法主要是借助相關(guān)工具在應用層上遷移。此種方法要求部署相對應的應用環(huán)境,適合單一氣象業(yè)務系統(tǒng)以及存儲數(shù)據(jù)少的應用場景。在應用層面遷移,經(jīng)業(yè)務系統(tǒng)服務器的網(wǎng)卡、CPU、內(nèi)存和磁盤處理,數(shù)據(jù)遷移速度降低到350~750MB·s-1。如果使用該方法,涉及的CIMISS ORACLE 數(shù)據(jù)庫,700臺虛擬機的超過50個氣象關(guān)鍵核心系統(tǒng)都部署對應的應用環(huán)境,給氣象業(yè)務系統(tǒng)運維管理團隊增加巨大的工作量。每個業(yè)務系統(tǒng)可遷移的時間窗口也不一樣,遷移時間分散,預計遷移時間超過1個月,整套存儲數(shù)據(jù)遷移時間長,造成數(shù)據(jù)遷移存在不確定性和增大遷移風險。
氣象業(yè)務具有其連續(xù)性、時效性等特點,支撐氣象業(yè)務的底層存儲的替換和數(shù)據(jù)平穩(wěn)遷移要重點考慮業(yè)務影響和可操作性。同品牌、同家族系列的存儲替換,在一定程度上降低了異構(gòu)存儲數(shù)據(jù)遷移存在的數(shù)據(jù)丟失、業(yè)務影響或中斷的風險。基于氣象業(yè)務零中斷數(shù)據(jù)遷移,需要綜合考慮多方面因素,包括所遷移的氣象業(yè)務類型、數(shù)據(jù)量、氣象業(yè)務系統(tǒng)連續(xù)性要求、可操作的有效時間窗口、氣象業(yè)務系統(tǒng)的重要性程度、氣象上下游業(yè)務量大小、源和目標存儲是否是同構(gòu)和數(shù)據(jù)遷移技術(shù)是否成熟等。當然,要成功實施一個基于氣象業(yè)務零中斷的數(shù)據(jù)遷移項目,不僅要選擇成熟、合適、高效的數(shù)據(jù)遷移技術(shù),更要通過嚴謹完整的規(guī)劃和設(shè)計,遷移業(yè)務數(shù)據(jù)信息收集、遷移業(yè)務數(shù)據(jù)可行性分析、遷移業(yè)務數(shù)據(jù)風險評估、遷移業(yè)務數(shù)據(jù)方案驗證、回退方案制定和遷移實施執(zhí)行等環(huán)節(jié)缺一不可。
相比在應用層上做數(shù)據(jù)遷移的傳統(tǒng)方法,基于存儲底層塊磁盤采用異構(gòu)虛擬化遷移技術(shù)具有遷移速度快、時間短、應用層工作量少、業(yè)務無中斷、可集中遷移的特點,適用氣象業(yè)務系統(tǒng)類型多、數(shù)據(jù)量大以及時間要求短的場景。