田 際,王大鵬,劉希念,宋文貴,馮庭有,吳 波,周鈺濤
(1.華能東莞燃機熱電有限責任公司,廣東 東莞 523590;2.西安熱工研究院有限公司,陜西 西安 710054;3.西安西熱電站信息技術有限公司,陜西 西安 710054)
近年來,隨著物聯網、人工智能、5G通信、云計算、移動互聯網等技術的深入發展,特別是隨著云計算相關領域的虛擬化技術、自動化容器技術、分布式計算技術的發展日趨成熟[1-2],發電企業開始積極探索構建企業級云平臺[3],并將其應用在企業信息平臺建設中。
此外,在信息化和工業化融合(兩化融合)模式發展的當前背景下[4-5],發電企業如何將生產系統與信息管理系統進行整合,并通過建立覆蓋發電企業生產和經營方向的大型信息管理平臺,打破各生產系統與信息管理系統在物理層面、業務層面和管理層面的信息孤島現狀,是需要解決的另一個問題。
云平臺通常可分為公有云、私有云和混合云[6],其中最為常見的是公有云,雖然具有成本低、運維簡單、易擴展等特點,但是從網絡安全性、數據私密性、信息保密性的角度出發,發電企業必須在企業防火墻內側對服務器、交換機、防火墻等硬件設施進行投資,并組建有實施和運維能力的專業技術團隊構建企業級私有云平臺。
發電企業私有云平臺的構建分別從硬件平臺和軟件框架著手。
為滿足私有云復雜的業務負載和大規模數據敏捷存取需求,本文基于虛擬化技術構建了發電企業私有云硬件平臺,將分散的服務器群的操作系統、內存、CPU、存儲磁盤和網絡接口等整合至虛擬資源池,并在虛擬化技術、分布式存儲技術、分布式計算技術和動態資源調度技術的協同作用下,實現操作系統和內存、CPU、存儲磁盤和網絡接口等硬件資源的集中管理、動態共享、靈活調度和彈性擴展[7],如圖1所示。目前,構建私有云硬件平臺主要使用基于超融合架構的服務器[8]。

圖1 私有云硬件平臺技術示意圖
雖然發電企業生產系統業務邏輯復雜,但企業用戶數量少、云應用的并發訪問量較小,為了提高系統資源利用率,實現敏捷開發、高效部署和便捷維護,本文構建了基于容器技術的發電企業私有云軟件框架。
由于應用程序的發布和運行與操作系統有較強的依賴關系,即使是同一個操作系統因底層環境輕微的不同也會引起應用程序無法正常部署或運行崩潰,為此,針對私有云應用,本文引入一種自動化的部署技術—Docker容器。通過Docker容器將云應用所需的相關程序及其運行所依賴的操作系統環境文件(如dll等文件)打包封裝,并以獨立的進程運行,不但杜絕了因開發環境和應用環境不一致導致云應用無法正常部署或運行的情況[9-10],而且能夠迅速實現多個云應用容器的獨立部署。對于云應用的持續集成、部署與交付采用gitlab CI/CD技術實現[11-12]。
基于硬件平臺和軟件框架的發電企業私有云平臺構建完成后,發電企業生產系統與信息管理系統會部署云端應用,如何打破這些云端應用在物理層面、業務層面和管理層面各自獨立的現狀,則需要開發基于Docker的發電企業私有云的一體化信息管理平臺,以實現統一用戶管理和各云端應用數據和信息的互通與共享。
基于Docker的發電企業私有云的一體化信息管理平臺在私有云硬件平臺中部署4臺服務器,包括:數據庫服務器、計算服務器、應用服務器和管理服務器。
數據庫服務器安裝MySQL云數據庫;計算服務器運行3個Docker容器,分別部署數據中臺的數據采集相關服務、數據治理相關服務和數據應用相關服務;應用服務器運行5個Docker容器,分別部署一體化平臺發布服務、基礎平臺服務、單點登錄服務、應用集成服務和數據接口服務;管理服務器負責云數據庫和所有Docker容器的運行、維護、升級、備份等。系統硬件主要功能匯總見表1所列,平臺拓撲結構如圖2所示。

表1 系統硬件主要功能

圖2 系統網絡拓撲圖
基于Docker的發電企業私有云的一體化信息管理平臺的系統架構主要分為三層:基礎設施即服務(IaaS)層、集成平臺即服務(IPaaS)層和軟件即服務(SaaS)層,平臺邏輯架構示意圖如圖3所示。

圖3 平臺邏輯架構示意圖
IaaS層為一體化信息管理平臺提供了操作系統、內存、CPU、存儲磁盤和網絡等基礎設施資源,并實現了資源的按需分配和彈性調度。
IPaaS層處于IaaS層與SaaS層之間,無需關注基礎設施層細節,IPaaS層基于Docker容器為私有云一體化信息管理平臺SaaS層提供各種云環境開發、部署和運行平臺。
私有云云數據庫、Docker容器和gitlab CI/CD自動化部署提供了私有云基礎服務;業務流引擎、工作流服務、ETL服務、媒體流服務等構成了基礎平臺;由數據治理、數據服務和數據應用構成的數據中臺提供數據引擎服務。此外,以API接口為主的數據接口、以CAS服務為主的單點登錄平臺、以集成服務為主的應用集成平臺為第三方接入和系統集成提供服務。
SaaS層即私有云云端應用層,實現數據中心、單點登錄、系統管理等一體化信息管理平臺的應用功能,以及與多個生產系統、信息管理系統的系統集成。
這種多層次部署方式能夠滿足電力行業的相關信息安全要求,也能適應企業管理的網絡結構要求。
基于Docker的發電企業私有云的一體化信息管理平臺的基礎平臺采用面向組件的設計思想,通過可視化的配置界面來為開發者提供一個開放、靈活、可重用的快速開發平臺。
基礎平臺在技術架構上是基于Java語言開發,集開發、運行、管理于一體的分布式軟件平臺,提供了基礎的Web應用框架,支持擴展服務,是發電企業生產系統與信息管理系統的基礎框架。
基于Docker的發電企業私有云的一體化信息管理平臺的數據中臺是以實時數據為基礎,以機組、系統和設備為中心,根據實時生態數據的設計理念,綜合考慮企業的組織結構和業務模式,為達到讓企業數據活用起來的目的而開發的一個綜合性平臺。
數據中臺從功能上分為數據采集、數據治理和數據應用3大功能,并細分為9個子功能。數據中臺功能結構及企業數據流程如圖4所示。

圖4 數據中臺功能結構及企業數據流程示意圖
數據采集與數據治理一起被稱為數據中臺的服務端,服務端是數據中臺的核心。數據采集負責從各生產系統和信息管理系統采集不同類型的企業數據,并完成對企業數據的清洗和加工。經過清洗和加工的企業數據依次經過數據設計、數據整合、數據驗證和數據分析流程,完成數據治理并存儲至云數據庫中。
數據應用是數據中臺的應用端,負責治理后產生的數據與用戶之間的分享和交互,通過數據服務應用和數據價值應用,力求將企業數據持續不斷地變成企業資產,以服務于企業業務,并最終通過數據中心的Web界面進行展示,如圖5所示。

圖5 數據中心界面
數據中臺采用面向組件的開發模式,并借鑒微服務模式,將數據中臺以子功能為單位創建各自獨立的原子組件及服務,當個別組件及服務異常時只會影響對應的功能,而數據中臺整體功能不受影響。
為了消除企業內部信息孤島,將分布在各部門各自獨立的生產系統和管理信息系統資源進行綜合集成為一個整體,基于Docker的發電企業私有云的一體化信息管理平臺以系統與設備管理為基礎,以設備編碼為主線,以統一規劃、分步實施的原則,通過網絡互連、數據共享、應用集成和流程銜接,開發了系統集成功能,并建立界面統一的風格。
系統集成實現了對SAP系統、運行管理系統、廠級信息監控系統(SIS)、安防監控系統、智能巡檢系統、班組日常管理系統的集成,并為其他生產管理系統的集成預留了擴展接口。通過對各生產系統和信息管理系統的集成,最終可為開展數據分析、技術監督、生產決策奠定基礎。
基于Docker的發電企業私有云的一體化信息管理平臺,通過CAS服務實現與各生產系統和信息管理系統的賬號權限集中管理和單點登錄,如圖6所示。從結構體系上看,CAS包含CAS Server和CAS Client。CAS Server在平臺發布服務器上獨立部署,負責從云數據庫中檢索用戶信息,進行用戶名、密碼和驗證碼的認證以及權限授權;CAS Client負責處理各生產系統與信息管理系統受保護資源的訪問請求,當未登錄用戶請求登錄時,重新指向到CAS Server進行認證登錄[13]。

圖6 單點登錄平臺流程示意圖
隨著虛擬化、自動化容器、分布式計算等技術的發展成熟,發電企業開始在云計算領域積極探索。本文從硬件平臺和軟件框架兩個方面入手,構建了企業級私有云。在私有云上基于Docker容器技術開發了一體化信息管理平臺,實現了基礎平臺、數據中臺和數據中心、單點登錄平臺等功能,并對各類生產系統和信息管理系統進行集成,期望通過建立覆蓋發電企業生產和經營的大型信息管理平臺,打破各生產系統與信息管理系統在物理層面、業務層面和管理層面的信息孤島現狀,實現數據和信息的互通與共享,助力于企業的工業化和信息化的融合與發展。