李 明,姚 振,方 銳,吳 躍,劉海苗
(1.國網(wǎng)安徽省電力有限公司信息通信分公司,安徽 合肥 230061;2.國網(wǎng)信通產(chǎn)業(yè)集團安徽繼遠軟件有限公司,安徽 合肥 230088)
企業(yè)資源計劃企業(yè)資源計劃(Enterprise Resources Planning,ERP)是一套將財會、分銷、制造和其他業(yè)務功能合理集成的應用軟件系統(tǒng)。
數(shù)據(jù)處理的系統(tǒng)、應用和產(chǎn)品(System,Applications,and Products in Data Processing,SAP)既是一個公司名稱,又是該公司的ERP應用軟件系統(tǒng)的名稱。
國網(wǎng)安徽省電力公司ERP系統(tǒng)采用SAP公司的成熟套裝軟件,至今系統(tǒng)已運行10年時間,目前系統(tǒng)存在硬件性能及架構已不能滿足業(yè)務需求、系統(tǒng)數(shù)據(jù)庫版本過低需要升級、系統(tǒng)內(nèi)核版本過低等問題。其中硬件服役時間過長,硬件設備已經(jīng)老化,硬件配件采購困難,硬件故障頻發(fā),月結、年結及新業(yè)務不斷上線等造成的系統(tǒng)負載較大,因此需要對ERP系統(tǒng)進行架構改造,保障業(yè)務系統(tǒng)的延續(xù)性與可靠性。將小型機遷移到X86服務器上能夠很好地降低系統(tǒng)未來的系統(tǒng)運維風險及運維成本,也符合目前技術發(fā)展的趨勢。
由于集團公司已經(jīng)明確X86服務器為硬件服務器采購標準,原有小型機無法擴容升級。因此服務器硬件需要從小型機遷移到PC服務器,增加系統(tǒng)的可擴展性,構建未來5年的可以穩(wěn)定擴展的基礎架構,降低系統(tǒng)的后續(xù)運維成本及運維風險,遷移后的系統(tǒng)將每年節(jié)省服務器的年度維保費用[1]。
惠普公司小型機上運行的操作系統(tǒng)為其自有的UNIX系統(tǒng),在X86服務器上無法運行,因此操作系統(tǒng)需要從UNIX遷移到LINUX,操作系統(tǒng)推薦使用SUSE Linux操作系統(tǒng),SUSE Linux有專門的For SAP的版本,這是一款SAP系統(tǒng)定制操作系統(tǒng),也是唯一針對所有SAP軟件解決方案進行優(yōu)化的操作系統(tǒng)[1];該系統(tǒng)無須配置大量的選項和補丁,對SAP系統(tǒng)有專門的內(nèi)核參數(shù)優(yōu)化,SAP相關系統(tǒng)配置已預構建于系統(tǒng)內(nèi)部。SUSE Linux目前運行SAP的客戶案例最多。
應用軟件的升級包括兩個方面,一方面是應用軟件主版本的升級,需要從ECC 6升級到EHP8 for ECC6;另一方面是應用軟件內(nèi)核版本的升級,內(nèi)核版本至少需要升級到7.20版本。
3.3.1 應用程序主版本的升級
SAP公司目前對ECC 6已經(jīng)停止再發(fā)補丁,其繼續(xù)提供服務支持的內(nèi)核版本為NW750平臺,所以升級到基于NW750平臺的ECC6 EHP8能夠為系統(tǒng)的安全性提供充分原廠保障;未來6年內(nèi)該版本官方完全支持,還可以支持未來無縫遷移到最新的HANA平臺[2]。
3.3.2 應用程序內(nèi)核版本的升級
應用程序內(nèi)核版本SAP應用內(nèi)核至少需要升級到7.20版本,升級后內(nèi)核在SAP官方維保版本內(nèi)。
目前ERP系統(tǒng)數(shù)據(jù)庫版本已不受廠商技術支持,升級到Oracle 11g版本將為系統(tǒng)安全提供可靠的原廠保障。
總體遷移路線分兩步進行,首先采用標準的SWPM工具將數(shù)據(jù)導出,由于服務器采用新的X86 PC服務器,操作系統(tǒng)采用SUSELinux,數(shù)據(jù)庫采用Oracle 11g數(shù)據(jù)庫,操作系統(tǒng)和數(shù)據(jù)庫可以在數(shù)據(jù)導出之前提前安裝完成,這樣可以減少原有的生產(chǎn)系統(tǒng)停機時間。在數(shù)據(jù)導出之前應停止生產(chǎn)系統(tǒng)的所有服務,并進行數(shù)據(jù)庫全備份,并創(chuàng)建導出、導入目錄,根據(jù)數(shù)據(jù)量預留足夠空間,合理選擇并行處理數(shù)和拆分表數(shù)量;導出完成后需要確立SWPM導入策略,執(zhí)行數(shù)據(jù)導入,數(shù)據(jù)庫導入時需要合理設置進程數(shù)量,正確配置數(shù)據(jù)庫實例相關參數(shù)。導入完成后,還需要進行遷移后的數(shù)據(jù)完整性驗證工作,主要是通過數(shù)據(jù)庫層面對表進行比對,檢查數(shù)據(jù)庫的表對象和視圖對象,對ERP系統(tǒng)中關鍵業(yè)務表進行數(shù)據(jù)條數(shù)比對;驗證遷移后的ERP系統(tǒng)提供的服務是否完備;通過業(yè)務層面進行數(shù)據(jù)驗證,對關鍵業(yè)務點進行查詢,并和停機之前的數(shù)據(jù)進行比對。
然后采用SAP 公司SUM工具,將ERP版本從ECC6升級到最新的EHP8 for SAP ECC6,SUM工具的具體介紹見后續(xù)章節(jié)。升級后,源系統(tǒng)不做任何變動,如果升級失敗,則開啟源系統(tǒng)即可,從而實現(xiàn)風險最小,停機時間也最短。
ERP系統(tǒng)升級遷移完成后,業(yè)務測試是關鍵點之一,業(yè)務測試越全面、越充分,能夠很好地保證生產(chǎn)系統(tǒng)升級遷移后平穩(wěn)運行。業(yè)務測試過程中,業(yè)務顧問和用戶將主要對各模塊關鍵業(yè)務功能、流程、報表及外部系統(tǒng)接口進行測試發(fā)現(xiàn)問題并記錄相應的解決方案;
SWPM工具是整個系統(tǒng)遷移改造中最重要的工具,是SAP公司在2013年強勢推出的新工具,代替原有的Master工具,SWPM就是集成了一系列安裝工具包,增加了很多安裝腳本,是所有以 SAP NW 為基礎的產(chǎn)品的安裝工具。相比之前只為單獨套件服務的Master,SWPM可以安裝眾多歷史版本的套件和獨立產(chǎn)品,包括SAP公司的CRM、ERP、HANA數(shù)據(jù)庫等系列產(chǎn)品[3]。SWPM自身已包含JAVA運行環(huán)境,使得操作系統(tǒng)無須另外安裝JDK。除了提供普通的安裝功能外,還可以用來完成系統(tǒng)遷移,系統(tǒng)重命名,以及雙堆棧系統(tǒng)的分離等工作[3]。由于ERP系統(tǒng)遷移主要進行的是平臺變遷,即從小型機平臺到 X86 平臺,屬于異構遷移,因此從異構遷移的角度出發(fā),確定使用SAP 標準遷移工具SWPM進行遷移。在使用SWPM工具遷移時,為了提高遷移效率,可以采用并行遷移的方式,并行遷移是指在 SWPM 從源系統(tǒng)導出數(shù)據(jù)的同時,在目標系統(tǒng)上進行數(shù)據(jù)導入。源系統(tǒng)和目標系統(tǒng)通過FTP、NFS、SOCKET等不同方式進行數(shù)據(jù)共享。并行遷移需要在目標系統(tǒng)上提前完成系統(tǒng)框架、數(shù)據(jù)庫和應用服務器的搭建,并且對網(wǎng)絡條件、IO 等數(shù)據(jù)共享條件有著較高要求。一般建議在同一數(shù)據(jù)中心的網(wǎng)絡環(huán)境下進行。并行遷移有很多優(yōu)點,例如導出數(shù)據(jù)、數(shù)據(jù)傳輸、導入數(shù)據(jù)并行異步完成,效率較高,相對順序遷移速度快,停機時間短。但是并行遷移也有其自身缺點,例如技術上比順序遷移復雜,對配置要求稍高,對數(shù)據(jù)共享方式的穩(wěn)定性要求較高。在數(shù)據(jù)共享方式由于網(wǎng)絡不穩(wěn)定問題等發(fā)生傳輸中斷的時候,可能需要在導出端和導入端分別修復和重啟相關操作。
這兩個工具在遷移過程中都是用來導出導入數(shù)據(jù)的,其中R3COPY用于同構系統(tǒng)之間的數(shù)據(jù)拷貝,同構系統(tǒng)說明源系統(tǒng)與目標系統(tǒng)的數(shù)據(jù)庫是相同平臺上同類數(shù)據(jù)庫,R3LOAD用于異構系統(tǒng)移植,也可以用于UNICODE系統(tǒng)轉(zhuǎn)換。R3COPY和R3LOAD工具都已經(jīng)集成到了標準的SWPM工具集中,可以直接從SWPM中調(diào)用。ERP系統(tǒng)從UNIX平臺向X86 PC服務器平臺遷移,源系統(tǒng)與目標系統(tǒng)或在不同平臺上,屬于異構系統(tǒng),因此采用R3LOAD工具。在ERP系統(tǒng)遷移過程中,為了要實現(xiàn)生產(chǎn)系統(tǒng)最小停機時間,減少企業(yè)因遷移帶來的經(jīng)濟損失,需要采取一些技術措施來縮短時間,具體技術措施如下:
(1)設置合理的R3load進程數(shù)量,充分發(fā)揮硬件的性能。
(2)通過拆包、拆表的技術手段,將串行的導出作業(yè)變成并行作業(yè),縮短數(shù)據(jù)導出時間。
(3)利用排序工具,定義表的導出導入順序,確保大表優(yōu)先。
(4)優(yōu)化數(shù)據(jù)庫層面的臨時表空間、回滾段、重做日志等減少日志。
(5)對于索引文件較大的表,使用手工方式并行創(chuàng)建索引。
SUM工具是SAP公司提供的應用服務器程序維護工具,包括重要發(fā)行變更的發(fā)行升級、含EHP安裝的系統(tǒng)更新、應用支持包、應用Java補丁、更正已安裝的軟件信息等功能。SUM用于所有基于SAP NW的系統(tǒng),因此也適用基于AS ABAP或AS Java或基于雙堆棧系統(tǒng)的系統(tǒng)。使用SUM工具升級系統(tǒng)時,需要遵守官方的標準流程,基本流程如下:計劃您的維護活動;從SAP官方網(wǎng)站下載SUM和升級包;將壓縮的升級包解壓到SAP系統(tǒng)的主應用程序服務器上的相應文件夾中;將SAP Host Agent更新到最新補丁程序級別;配置SAP Host Agent;通過瀏覽器從本地PC連接;配置SUM,尤其是由于維護計劃程序而指向stack.xml;在待升級的系統(tǒng)上執(zhí)行維護;如果條件許可,請使用SUM中準備好的表格向SAP提供反饋。
系統(tǒng)遷移升級是一項復雜的工作,涉及底層硬件、操作系統(tǒng)、數(shù)據(jù)庫、應用軟件等多個層面,涉及的升級工具也較多,本文僅僅研究了其中一些關鍵升級工具的使用方法。另外整個遷移工作需要考慮的風險點也很多,為了降低風險,需要投入大量的人力物力來做前期調(diào)研和測試工作。