戴琳琳,閻志遠,苗 凡,朱建軍
(中國鐵道科學研究院 電子計算技術研究所,北京 100081)
OpenStack在新一代客票系統(tǒng)中的應用
戴琳琳,閻志遠,苗 凡,朱建軍
(中國鐵道科學研究院 電子計算技術研究所,北京 100081)
介紹新一代客票系統(tǒng)采用OpenStack開源軟件搭建云計算平臺,實現(xiàn)客票系統(tǒng)資源統(tǒng)一部署、管理和維護的系統(tǒng)結構。
OpenStack;基礎設施及服務;云平臺
隨著互聯(lián)網(wǎng)售票、電話訂票、自助售票等多種形式的自助售票方式的發(fā)展,中國鐵路客票發(fā)售和預訂系統(tǒng)(簡稱:客票系統(tǒng))的售票接入渠道和方式進一步多樣化,其承載量也呈數(shù)量級增長,漸漸出現(xiàn)以下矛盾:
(1)日益增長的客票軟件需求與資源擴展需求之間的矛盾
新一代客票系統(tǒng)涵蓋了新型互聯(lián)網(wǎng)售票、客票監(jiān)控、客票遠程培訓和測試平臺等新需求,相應地也對硬件資源提出了更高的要求,但是由于場地大小、供電鋪線、空調設置等限制,硬件資源不可能無條件擴展。適當利用現(xiàn)有商用云計算平臺,可以有效解決在短時間內(nèi)資源激增的問題。
(2)日益增長的硬件資源與硬件維護代價和高可靠性之間的矛盾
隨著硬件資源的增長,網(wǎng)絡和平臺結構日益復雜,對日常維護要求更高,同時軟件高可靠性所需的分節(jié)點分地區(qū)容災部署,進一步增加了維護難度。利用云計算平臺的計算節(jié)點同構特性,可有效簡化維護難度,虛擬化資源管理可以減低維護復雜度。
(3)復雜軟件結構與快速部署和高可伸縮性之間的矛盾
客票系統(tǒng)資源的需求具有規(guī)律性,在節(jié)假日售票高峰時,資源需求最為緊迫,而在非節(jié)假日,資源需求并不那么突出,如果按照高峰采購硬件,那么在非節(jié)假日勢必會有閑置資源。利用云平臺,將復雜軟件結構分解成可快速部署的計算節(jié)點,在高峰時,動態(tài)伸展,滿足應用需要;在非高峰時,可以部署其他應用,提高資源利用率。
因此打造新一代客票售票、監(jiān)控、培訓和測試云平臺,盤活全路客票系統(tǒng)硬件資源,靈活調配計算資源分配,提高系統(tǒng)資源利用率和系統(tǒng)可用率,對進一步提升客票系統(tǒng)的服務層次具有重要意義。
搭建新一代客票系統(tǒng)的云計算平臺要達到以下幾個目的:
(1)搭建的私有云平臺可以實現(xiàn)客票系統(tǒng)的快速擴展和業(yè)務伸縮。由于客票系統(tǒng)已經(jīng)建設了近20年,其系統(tǒng)結構和組成模塊都比較復雜,因此不可能完全移植到現(xiàn)有的云開發(fā)平臺上,云平臺搭建基于IaaS比較符合實際情況,然后將客票系統(tǒng)部署在其之上,利用它的虛擬化管理,提高系統(tǒng)性能、伸縮性和可靠性。
(2)搭建的私有云平臺可以實現(xiàn)全路資源動態(tài)調配。目前全路客票資源分布在各鐵路局,在維護水平和故障排查能力上各鐵路局參差不齊,各鐵路局重復購買和閑置硬件資源較多。為了更好地利用資源,搭建客票私有云平臺,當各鐵路局/各鐵路車站有資源使用需求,可以租借該云平臺資源,無需另外購買維護,實現(xiàn)了全路資源整合。
(3)搭建的私有云平臺還可以實現(xiàn)全路應用服務定制。通過租用私有云平臺的定制服務,可以減少各鐵路局重復開發(fā)成本,提高部署服務效率。
因此,選用基礎設施即服務(IaaS)云平臺的部署、管理和配置方案來搭建新一代客票系統(tǒng)云平臺。目前開源云平臺以其支持的服務器類型廣泛、產(chǎn)品不需要付費使用、由開源社區(qū)負責軟件的更新等特點,成為部署私有云的首選方案。業(yè)界主流的IaaS開源解決方案有CloudStack,Eucalyptus和OpenStack等產(chǎn)品,本文選用的OpenStack發(fā)展速度非??欤谥袊鐓^(qū)生態(tài)環(huán)境良好。
2.1 OpenStack組成部分
(1)OpenStack Compute(Nova) 控制云計算架構(基礎架構服務的核心組件)。它是用 Python 編寫的,創(chuàng)建一個抽象層,讓 CPU、內(nèi)存、網(wǎng)絡適配器和硬盤驅動器等資源實現(xiàn)虛擬化,并具有提高利用率和自動化的功能。
(2)OpenStack Networking (Neutron/Quantum)提供了管理局域網(wǎng)的能力,具有適用于虛擬局域網(wǎng)(VLAN)、動態(tài)主機配置協(xié)議和 IPv6 的一些功能。用戶可以定義網(wǎng)絡、子網(wǎng)和路由器,以配置其內(nèi)部拓撲,然后向這些網(wǎng)絡分配 IP 地址和 VLAN。
(3)OpenStack Identity Management (Keystone)管理用戶目錄以及用戶訪問目錄。其目的是實現(xiàn)一個中央身份驗證機制。它本身沒有提供身份驗證,可以集成其他各種目錄服務,如 Pluggable Authentication Module、Lightweight Directory Access Protocol(LDAP) 或 OAuth。通過這些插件,它能夠實現(xiàn)多種形式的身份驗證,包括簡單的用戶名密碼憑據(jù)以及復雜的多因子系統(tǒng)。
(4)OpenStack Object Storage (Swift) 是一個分布式存儲系統(tǒng),主要用于靜態(tài)數(shù)據(jù),比如 VM 鏡像、備份和存檔。該軟件將文件和其他對象寫入可能分布在一個或多個數(shù)據(jù)中心內(nèi)的多個服務器上的一組磁盤驅動器,在整個集群內(nèi)確保數(shù)據(jù)復制和完整性。
(5)OpenStack Block Storage(Cinder)管理計算實例所使用的塊級存儲。塊存儲非常適用于有嚴格性能約束的場景,比如數(shù)據(jù)庫和文件系統(tǒng)。
(6)OpenStack Image Service(Glance)為 VM鏡像提供了支持。除了發(fā)現(xiàn)、注冊和激活鏡像服務之外,它還有鏡像機快照和備份功能。
2.2 新一代客票系統(tǒng)云計算平臺實現(xiàn)目標
(1)具有資源統(tǒng)一管理監(jiān)控界面,包括CPU、內(nèi)存、網(wǎng)絡、存儲、交換機、路由器、IP資源管理等。
(2)可以分配用戶資源,用戶可以根據(jù)需要裁減使用資源;
(3)可以根據(jù)需求動態(tài)增加/刪除資源;
(4)可以根據(jù)鏡像快速復制,創(chuàng)建資源;
(5)可以調整資源分配策略;
(6)可以靈活調整安全策略;
(7)可以根據(jù)資源使用時長/租用資源數(shù)量,進行實時計費;
(8)對于已有的使用其它虛擬化技術管理的資源可以做到平緩過渡,統(tǒng)一管理。
2.3 新一代客票系統(tǒng)云計算平臺系統(tǒng)結構
基于開源技術的云計算平臺的新一代客票系統(tǒng)架構如圖1所示,由以下4層組成。
(1)物理層。由各種物理設備組成,包含服務器、交換機、路由器、存儲等硬件設備。
(2)資源池層。通過現(xiàn)有的虛擬化管理軟件,如VMware、KVM等,將由物理設備抽象出來的各種資源組成資源池層,主要包括:計算資源、網(wǎng)絡資源和存儲資源。
(3)虛擬化層。通過OpenStack各組件將各種資源進行管理,實現(xiàn)計算虛擬化、網(wǎng)絡虛擬化和存儲虛擬化。
(4)統(tǒng)一門戶。平臺的管理模塊功能包括用戶管理、系統(tǒng)配置、日志管理、監(jiān)控管理、虛機管理、技術支持等。為管理員和用戶分別提供各自的門戶平臺,方便其使用。
圖1 OpenStack與新一代客票系統(tǒng)云計算平臺
OpenStack是一個開源的云計算管理平臺項目,由幾個主要的組件組合起來完成具體工作,支持幾乎所有類型的云環(huán)境,目標是提供實施簡單、可大規(guī)模擴展、豐富、標準統(tǒng)一的云計算管理平臺,通過各種互補的服務提供了IaaS的解決方案,每個服務提供API以進行集成。目前新一代客票系統(tǒng)基于開源技術的云計算平臺對該開源產(chǎn)品還處在探索和學習階段,在后續(xù)的研究過程中,將不斷加強學習和理解。
[1]懷進鵬,李 沁,胡春明. 基于虛擬機的虛擬計算環(huán)境研究與設計[J]. 軟件學報,2007,18(8).
[2]盛憲鋒,及俊川,周小軍,等. 基于虛擬化技術的私有云APCS平臺設計[J]. 計算機工程,2012(8).
責任編輯 方 圓
OpenStack in new generation Ticketing and Reservation System
DAI Linlin, YAN Zhiyuan, MIAO Fan, ZHU Jianjun
( Institute of Computing Technologies, China Academy of Railway Sciences, Beijing 100081, China )
This article introduced the application of OpenStack in new generation Ticketing and Reservation System to implement unif i ed deployment, management and maintenance of system resources.
OpenStack; infrastructure and services(IaaS); cloud platform
U293.22∶TP393.22
A
1005-8451(2015)11-0021-03
2015-04-10
中國鐵路總公司科技研究開發(fā)計劃課題(J2014X002)。
戴琳琳,助理研究員;閻志遠,副研究員。