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