肖 健, 李長華, 樊東衛, 于 策, 崔辰州
(1. 天津大學 軟件學院, 天津 300350; 2. 中國科學院國家天文臺, 北京 100012;3. 天津大學 計算機科學與技術學院, 天津 300350)
基于云環境的天文大數據開放實驗平臺
肖 健1, 李長華2, 樊東衛2, 于 策3, 崔辰州2
(1. 天津大學 軟件學院, 天津 300350; 2. 中國科學院國家天文臺, 北京 100012;3. 天津大學 計算機科學與技術學院, 天津 300350)
依托中國虛擬天文臺強大的基礎設施及其共享的海量觀測數據資源,利用虛擬化與云計算技術,構建了一個開放式的天文大數據實驗平臺。該平臺分為物理層、虛擬層和用戶層,其云實驗環境集成了天文數據的獲取、傳輸和加載等3個基礎環節,提供從數據檢索、存儲、計算、分析、可視化等功能的一站式實驗環境,輔助學生全面掌握大數據時代的天文學基礎研究方法。
天文學; 開放式實驗平臺; 大數據; 云環境
隨著新一代天文望遠鏡技術的發展,天文數據海量增長,天文學已經進入了大數據時代。旨在連接天文學和計算機應用技術的天文信息學也以前所未有的速度發展起來[1],天文研究正在從小樣本模式向“數據驅動”模式轉變。但是,在天文學的本科教育甚至是研究生培養階段,相關教材和實驗方法還未能及時跟進,而且由于實驗條件的限制,針對大數據的實驗環境更是難于搭建。目前,天文學相關軟件大都以開源軟件為主,對環境要求比較特殊、配置復雜,學生往往在安裝和配置實驗環境上會浪費很多時間。
針對上述問題,依托中國虛擬天文臺以及天文科技領域云的強大基礎設施及其共享的海量觀測數據資源[2],構建了一個開放式的天文大數據實驗平臺(cloud.china-vo.org)。該平臺利用虛擬化與云計算技術,將國內主要天文臺站的分散的計算資源集中起來,提供海量數據存儲、獲取、計算、分析、可視化等一站式的綜合實驗環境。該平臺借助中國科技網通行證,采用開放式注冊和訪問模式,使得實驗活動可以不受時間和地點限制。整個實驗平臺全部基于開源技術構建,既節約成本,又便于推廣[3-4]。
天文學是基于觀測和發現的科學,即使是幾年以前發布的數據,采用不同的處理方式和分析角度,也可能產生新的發現。因此,大部分天文教學實驗案例均采用真實的觀測數據。而在天文大數據時代,同一個目標天體,對應著來自不同觀測設備和不同波段的信息[1],傳統的實驗環境很難提供一個統一的多波段巡天數據庫,以及能夠處理分析這些海量數據的平臺。
本文利用云計算技術,提出了一種能夠適應天文大數據的實驗模式,如圖1所示。

圖1 云環境下天文大數據的實驗模式和工作流
該模式下的實驗流程包括:
(1) 數據準備:利用中國虛擬天文臺提供的數據檢索服務,從天文數據中心獲取實驗數據;
(2) 數據傳輸:通過快速的異步拷貝機制,將實驗數據保存到用戶個人的云存儲空間;
(3) 數據處理:用戶在云環境中創建所需的虛擬機資源,登錄遠程桌面,處理實驗數據。
為避免實驗過程對原始數據造成破壞,用戶并不能直接訪問天文數據中心,而是通過內部網絡快速拷貝一個實驗用數據副本到用戶的云存儲空間。為保證數據快速傳輸,云實驗環境與中國虛擬天文臺處于同一個內網中。該訪問模式允許學生獲取天文數據中心提供的任何數據,且云環境提供的原位計算能力避免了通過廣域網傳輸大量數據[5],節約了時間和網絡資源。
2.1 實驗平臺的體系結構
天文大數據開放實驗平臺的體系結構如圖2所示。平臺整體結構分為3層,自底向上依次為:作為硬件基礎的物理層、處于系統核心部位的虛擬層、面向應用的用戶層。

圖2 實驗平臺的體系結構
物理層是分布式硬件服務器集群,包括國內主要的天文臺站。在實現上,國家天文臺作為主節點和管理節點,既提供計算和存儲資源,又提供管理服務;而其他臺站則僅提供資源。在保障用戶體驗和系統可用性的同時,為了降低軟硬件成本,整個系統沒有配置專用的磁盤陣列,而是全部采用普通的商用服務器和開源軟件,服務器的CPU、內存、硬盤都是滿配,每個服務器既作為計算節點,也充當存儲節點。
虛擬層提供統一的云存儲服務以及虛擬機的運行環境。云存儲系統基于開源的集群文件系統GlusterFS構建[6];云計算平臺基于功能全面且易于維護的CloudStack[7-8]構建;虛擬機則選擇了在簡單性和易用性上都有良好表現的KVM[9]。此外,虛擬層還負責將虛擬機與個人云存儲空間連接起來,并提供平臺內外的數據轉發服務以及平臺運行監控服務等。
用戶層包括用于訪問、管理虛擬機和云存儲空間的Web應用以及接入平臺的各類終端設備。目前系統對桌面終端的支持比較完整,而對平板電腦、智能手機等移動終端的支持在理論上是可以的,但還未能提供友好的移動端界面。
平臺在物理層上是分布式的,在虛擬層之上又是統一的。用戶在使用之前可以根據實際情況選擇要創建的虛擬機的物理位置;在使用時遵循統一的訪問和操作規則,不必關心虛擬機的實際位置,從而確保了用戶體驗的一致性。
2.2 天文數據與云實驗環境的集成
圖3是天文數據中心與云實驗環境集成的3個主要環節,包括天文數據獲取、數據傳輸和數據加載。

圖3 天文大數據與虛擬機的連接方案
數據的獲取直接利用了虛擬天文臺的數據檢索服務,如圖3的左部顯示了數據檢索結果頁面,數據檢索還提供將檢索結果保存到云存儲空間的功能。用戶第一次訪問實驗平臺時,系統自動為其分配一個默認的云存儲空間,當用戶空間不夠時,可以申請擴容。為方便存儲自動掛載,云存儲系統的賬號與用戶登錄賬號一致。
數據傳輸在網速通暢且穩定的內網進行,利用Linux的遠程同步軟件rsync,將檢索結果從天文數據中心傳輸到云存儲系統。rsync的增量拷貝功能再加上平臺內網充足的帶寬,極大地提高了數據傳輸的性能。數據傳輸是異步的,傳輸完成后,系統會通過郵件通知用戶。
數據加載,即將用戶的云存儲空間掛載(mount)到用戶的虛擬機上。通過定制虛擬機模版的初始化程序,虛擬機在啟動時將自動執行掛載網絡存儲空間的腳本。虛擬機加載和訪問云存儲空間,通過CIFS(common internet file system)協議實現[10]。圖3的右上部顯示了用戶登錄到虛擬機遠程桌面并使用DS9軟件直接處理云存儲數據的界面。
如上所述,云存儲系統通過支持CIFS的SMB(server message block)服務器為虛擬機提供訪問網絡存儲的功能。為了提高性能,平臺配置了多個Samba服務器,并實現了基于動態DNS的負載均衡策略。在權限管理上,Samba服務器采用Linux的系統賬戶權限,每個賬戶僅能訪問其對應根目錄(home)下的內容,從而保障私有數據的安全性。
2.3 虛擬機的訪問與管理
天文數據處理一般采用Linux操作系統,且絕大多數天文數據處理軟件都需要圖形界面的支持。因此,虛擬機除了支持傳統的SSH方式登錄外,也集成了XRDP(X remote desktop protocol)服務,支持Windows、Linux、Mac等多種客戶端下的遠程桌面訪問。遠程桌面應用需要較高的網絡質量,但在平臺建設初期,采用了IPv4網絡,由于網絡帶寬有限,用戶體驗比較差。
鑒于目前中國教育網(CERNET)和科技網(CSTNET)已經全面支持IPv6,為保證用戶體驗,在綜合考慮了整個實驗平臺以及用戶虛擬機安全的前提下,平臺采用了如圖4所示的主干IPv6方案,即在外部互聯網部分采用IPv6接入,云環境內部使用IPv4網絡[11]。實驗表明,用戶通過IPv6網絡接入云實驗平臺,訪問遠程桌面十分流暢,云環境下的用戶體驗得到了保證。

圖4 云實驗平臺的網絡接入方案
內部網絡采用IPv4,主要是考慮到平臺內部網絡帶寬充足,安全性也有保障,但需要解決外部地址與內網地址的轉換問題。IPv4之間可通過Linux的軟件防火墻IPTables來實現轉發,而IPv6與IPv4之間需要開發專門的轉發服務。為了應對大量的并發訪問,平臺配置了多個轉發服務器,并使用DNSmasq構建了內部的DNS服務,通過動態DNS實現轉發服務的負載均衡[12],從而保證了良好的轉發性能。
圖5描述了用戶與虛擬機之間的通信轉發機制。為方便用戶記憶和平臺管理,所有虛擬機對外共享一個訪問域名(cloudvm.china-vo.org),用不同端口來區分具體的虛擬機。虛擬機在創建時,平臺自動為該虛擬機分配所需的外部端口,同時生成新增的外部端口與虛擬機本地端口的映射關系。內外端口的映射信息保存在數據庫中,供轉發服務器查找目標虛擬機及其對應端口,并一直保留到該虛擬機鏡像被刪除。

圖5 云環境內部的端口轉發機制
用戶登錄云平臺后,可以通過WebVNC直接在瀏覽器中訪問虛擬機的遠程桌面,或者使用SSH客戶端工具通過命令行操作虛擬機,還可以通過遠程桌面客戶端來連接。為了節約能耗,虛擬機實例在閑置一段時間后會自動休眠。
為了便于管理云存儲空間和虛擬機,對CloudStack進行了二次開發,提供了功能更加豐富的Web界面。除了從天文數據中心自動同步數據到云存儲空間外,用戶還可以自行上傳實驗數據。實驗平臺支持HTTP和SFTP兩種數據上傳模式。
為簡化實驗環境準備過程,實驗平臺還提供了常用的虛擬機模板,其中包括清華大學天體物理中心的AIRE-Linux,多波段數據專用模板,以及基礎的Linux、Windows模板等。用戶也可以創建并共享自己的虛擬機模板。模板的使用在保證實驗環境一致性的同時,也避免了學生從零開始準備軟件環境的麻煩。
通過選擇合適的模板,用戶可以快速創建實驗所需的虛擬機實例。一般情況下,虛擬機從創建到完全可用的時間不超過5分鐘。虛擬機創建完成后,平臺通過郵件通知用戶訪問該虛擬機所需的信息,包括虛擬機的主機名、SSH、遠程桌面的登錄端口以及賬號、密碼等。
為了與中國虛擬天文臺無縫集成,提供開放式訪問,云平臺基于中國科技網通行證,實現了支持OAuth2.0協議[13]的單點登錄功能。凡是注冊成為中國虛擬天文臺的用戶,就能使用云實驗平臺提供的所有功能。
3.1 天文學基礎實驗
天文大數據開放實驗平臺是一個較為通用的天文學基礎實驗教學環境,平臺提供了海量的天文數據資源以及完備的軟件環境,用戶在使用前只需根據課程規劃設計好具體的實驗內容即可。目前,該平臺連續2年承接了中國科學院大學天文學基礎課程“多波段天文數據獲取與處理”“實測天體物理”等,使用該平臺的學生超過150名。該類課程涉及行星數據獲取與處理、太陽數據獲取與處理、光學紅外數據獲取與處理、高能數據獲取與處理、射電數據處理等多個專題。
教師授課和學生練習均需要HEASOFT、IRAF、DS9、JHelioview、Python、IDL等多種軟件環境以及配套的數據。該平臺為課程教學準備了標準的軟件環境模板,學生利用標準模板在數分鐘之內便可創建一個完備的課程軟件環境,而主干IPv6的接入模式(見圖4)也滿足了遠程桌面訪問的實時性要求。
3.2 天文信息學綜合類實驗
除了類似傳統的單機版實驗外,云平臺可以在短時間內準備好大量配置相同的虛擬機,非常適合進行分布式實驗。由國家天文臺和天津大學天文信息技術聯合研究中心開設的“并行計算”“虛擬化與云計算”“高性能計算與應用”等課程也借助該云平臺完成實驗教學。此類課程面向天津大學計算機、軟件工程專業的高年級本科生和研究生,年均上課人數超過200人。實驗課題的設計均結合天文計算的前沿問題,除了鍛煉學生綜合運用所學知識解決實際問題的能力外,在學生思路各異的實現程序中還可能產生出新穎、高效的算法,從而促進實際問題的有效解決。
自上述實驗課程開設以來,已經在宇宙大尺度結構的三點相關函數求解、海量星表數據的交叉證認等方面取得了實用性成果。
依托中國虛擬天文臺構建的云環境下的天文大數據實驗教學平臺,充分挖掘了CloudStack、GlusterFS、KVM等開源技術的潛力,集成了國內主要天文臺站的資源,采用IPv6實現了廣域網內遠程桌面的實時交互,并利用中國科技網通行證提供了開放訪問的功能。該平臺極大地方便了天文學基礎實驗教學,并為探索海量天文數據的高效處理方法提供了實驗環境。目前,該平臺還在持續完善和改進之中,新的數據和計算資源將不斷被集成進來。平臺建設所使用的技術方案可供其他專業的開放性云實驗平臺的建設參考。
References)
[1] 崔辰州,于策,肖健,等.大數據時代的天文學研究[J].科學通報,2015(增刊1):445-449.
[2] 崔辰州,薛艷杰,李建,等.虛擬天文臺:天文學研究的科研信息化環境[J].中國科學院院刊,2013(4):511-518.
[3] 林利,石文昌.構建云計算平臺的開源軟件綜述[J].計算機科學,2012(11):1-7.
[4] 王峰,黃剛.基于云平臺的計算機實驗教學中心建設[J].實驗技術與管理,2014,31(12):121-123.
[5] 孟小峰,慈祥.大數據管理:概念、技術與挑戰[J].計算機研究與發展,2013(1):146-169.
[6] 張曉景,鄭曉文,李先毅.基于GlusterFS的OpenStack平臺設計[J].微型機與應用,2014(1):74-76.
[7] Kumar R, Jain K, Maharwal H,et al. Apache cloudstack: Open source infrastructure as a service cloud computing platform[J].International Journal of advancement in Engineering technology,Management and Applied Science,2014(2):111-116.
[8] 張笑燕,王敏訥,杜曉峰.云計算虛擬機部署方案的研究[J].通信學報,2015(3):245-252.
[9] Kivity A, Kamay Y, Laor D, et al. KVM: the Linux virtual machine monitor[C]//Proceedings of the Linux symposium. Ottawa, 2007:225-230.
[10] 郝斐,王雷,荊繼武,等.基于CIFS協議的云存儲安全網關的設計與實現[J].計算機應用與軟件,2013(4):11-14.
[11] 李長華,崔辰州,何勃亮,等.IPv6技術在天文學研究云計算環境中的應用[J].計算機應用,2016,36(增刊1):25-28.
[12] Powers S. The open-source classroom: a domain by any other name[J].Linux Journal,2012(221):7.
[13] 時子慶,劉金蘭,譚曉華.基于OAuth2.0的認證授權技術[J].計算機系統應用,2012(3):260-264.
An open experimental platform of astronomy big data based on cloud computing
Xiao Jian1, Li Changhua2, Fan Dongwei2, Yu Ce3, Cui Chenzhou2
(1. School of Computer Software, Tianjin University, Tianjin 300350, China; 2. National Astronomical Observatories, Chinese Academy of Science, Beijing 100012, China; 3. School of Computer Science and Technology, Tianjin University, Tianjin 300350, China)
Employing virtualization and cloud computing technologies, an open experimental platform of astronomical large data is built based on the powerful infrastructure and massive observation data resources of Chinese Virtual Observatory. The platform consists of physical, virtual and user three layers, and integrates data query, transfer and loading three basic functionalities. It provides an end-to-end experimental environment from data retrieval, storage, to computing, analysis, and visualization. It can also facilitate students to completely master the basic research methods of astronomy in big data era.
astronomy; open experimental platform; big data; cloud computing
10.16791/j.cnki.sjg.2016.12.039
2016-06-22
國家自然科學基金-天文聯合
(U1231108);中國科學院信息化專項項目(XXH12503-05-05)
肖健(1978—),男,河北玉田,博士,工程師,主要研究方向為天文信息技術、高性能計算.
E-mail:xiaojian@tju.edu.cn
TP391
: A
: 1002-4956(2016)12-0158-05