張琦
[摘? ? 要] 隨著云計(jì)算與虛擬化技術(shù)的不斷發(fā)展,虛擬化層對(duì)資源的耗用越來越低,而云化資源池對(duì)各種軟硬件資源利用率的提升優(yōu)勢(shì)越來越明顯。在云計(jì)算環(huán)境下進(jìn)行高性能計(jì)算已成為可能。文章重點(diǎn)介紹如何在集群系統(tǒng)快速搭建高性能計(jì)算私有云環(huán)境。
[關(guān)鍵詞] 高性能計(jì)算;云計(jì)算;虛擬化;集群系統(tǒng);地震資料處理
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2019. 03. 058
[中圖分類號(hào)] TP311? ? [文獻(xiàn)標(biāo)識(shí)碼]? A? ? ? [文章編號(hào)]? 1673 - 0194(2019)03- 0144- 03
1? ? ? 引? ? 言
多年來,地震資料處理在高性能計(jì)算領(lǐng)域一直是典型應(yīng)用之一,生產(chǎn)應(yīng)用過程中的不同時(shí)期,對(duì)各種地震處理軟件的使用需求量不同,經(jīng)常需要在高性能計(jì)算集群系統(tǒng)的節(jié)點(diǎn)上對(duì)不同軟件進(jìn)行切換。然而由于幾大軟件寡頭壟斷廠商的豎井式全系列開發(fā)模式,導(dǎo)致不同地震處理高性能計(jì)算軟件對(duì)操作系統(tǒng)版本及軟件運(yùn)行環(huán)境要求各異,難以在一臺(tái)高性能計(jì)算節(jié)點(diǎn)同時(shí)安裝多套不同廠商的地震處理軟件,這就需要通過以重新安裝操作系統(tǒng)和處理軟件的方式進(jìn)行軟件切換。由于高性能計(jì)算系統(tǒng)節(jié)點(diǎn)眾多,這個(gè)過程如果人工操作,必然耗時(shí)巨大。而云計(jì)算技術(shù)恰恰提供了將集群系統(tǒng)資源池化,并根據(jù)應(yīng)用需求進(jìn)行動(dòng)態(tài)調(diào)整部署的方法。隨著近些年云計(jì)算與虛擬化技術(shù)的不斷發(fā)展,虛擬化層對(duì)資源的耗用越來越低,而云化資源池對(duì)各種軟硬件資源利用率的提升優(yōu)勢(shì)越來越明顯,在云計(jì)算環(huán)境下進(jìn)行高性能計(jì)算已成為可能。
2? ? ? 高性能計(jì)算集群云化部署的三層架構(gòu)
高性能計(jì)算集群云化部署的層次有三個(gè),最下面的是虛擬化平臺(tái)層,可以部署CentOS、ESXi等。中間層是云服務(wù)層,可以使用Opennebula、OpenStack等。最上層是虛擬機(jī)層,可以部署KVM、Vmware等。
3? ? ? 高性能計(jì)算集群云化部署方式
整個(gè)高性能計(jì)算集群云化部署以DHCP+TFTP+PXE+Kickstart方式為主,中間配置使用開源易用的Ansible軟件,也可以使用更簡(jiǎn)便的pdsh并發(fā)軟件。虛擬化平臺(tái)層使用CentOS(部署ESXi方法與CentOS相同)。中間層因?yàn)樗接性骗h(huán)境虛擬機(jī)數(shù)量在2 000臺(tái)以下,所以選用輕量級(jí)的開源云服務(wù)軟件Opennebula。虛擬機(jī)層使用的是開源的KVM虛擬機(jī),虛擬機(jī)操作系統(tǒng)使用的是RHEL,安裝的軟件是斯倫貝謝公司的Omega地震處理系統(tǒng)。
3.1? ?虛擬化平臺(tái)層部署
3.1.1? ?管理服務(wù)器配置
管理服務(wù)器選用CentOS或RHEL操作系統(tǒng)均可,管理服務(wù)器需要配置DHCP、TFTP、FTP服務(wù)(FTP服務(wù)可以使用NFS、HTTP服務(wù)替代)。具體配置方法十分簡(jiǎn)單,可參照相關(guān)官方文檔,下面主要介紹注意事項(xiàng)。
3.1.2? ?虛擬化平臺(tái)層自動(dòng)部署
通過使用pdsh并發(fā)軟件對(duì)集群節(jié)點(diǎn)發(fā)送IPMI重新啟動(dòng)命令,重啟各個(gè)節(jié)點(diǎn),節(jié)點(diǎn)就開始按照ks.cfg中的配置開始自動(dòng)安裝操作系統(tǒng)及額外安裝的軟件了。
3.2? ?云服務(wù)層部署
云服務(wù)層管理服務(wù)器及客戶端節(jié)點(diǎn)選用CentOS或RHEL操作系統(tǒng)均可,安裝Opennebula軟件使用yum方式即可,具體安裝方法十分簡(jiǎn)單,可參照相關(guān)官方文檔。常見錯(cuò)誤是管理服務(wù)器和客戶端節(jié)點(diǎn)的ssh、scp需要口令或確認(rèn)信息。客戶端配置可以寫成腳本,放在虛擬化平臺(tái)層自動(dòng)部署中的ks.cfg文件中,這樣當(dāng)節(jié)點(diǎn)操作系統(tǒng)安裝好后客戶端就自動(dòng)配置完畢了。
管理服務(wù)器配置界面有中文Web界面,根據(jù)界面提示操作十分簡(jiǎn)單。首先創(chuàng)建集群、主機(jī),將自動(dòng)部署好的虛擬化平臺(tái)層節(jié)點(diǎn)加入集群即可。然后創(chuàng)建網(wǎng)絡(luò),規(guī)劃虛擬機(jī)層的網(wǎng)址范圍,包括MAC地址和IP地址。之后就可以制作裸機(jī)鏡像,鏡像可以采用qcow2格式(一種較省空間的可壓縮格式)。鏡像注冊(cè)好后,就可以根據(jù)需求的配置制作虛擬機(jī)模板。
3.3? ?虛擬機(jī)層部署
虛擬機(jī)層采用KVM虛擬機(jī),部署方式同虛擬化平臺(tái)層部署方式一樣,可以直接使用虛擬化平臺(tái)層部署使用的管理服務(wù)器,只需修改相應(yīng)配置即可。利用Opennebula管理界面將制作好的虛擬機(jī)模板,根據(jù)所需求的數(shù)量在集群中創(chuàng)建實(shí)例即可,虛擬機(jī)在啟動(dòng)后就可以根據(jù)ks.cfg配置,自動(dòng)安裝操作系統(tǒng)及額外安裝的軟件了。
4? ? ? 總? ? 結(jié)
高性能計(jì)算集群從裸機(jī)到提供虛擬化高性能計(jì)算應(yīng)用的整個(gè)三層云化部署過程,用時(shí)在一小時(shí)左右。通過云化資源池,對(duì)整個(gè)集群系統(tǒng)軟硬件資源利用率具有非常大的提升作用,尤其是對(duì)于CPU核數(shù)的虛擬化,可以節(jié)約某些軟件的許可耗用。在未來隨著技術(shù)發(fā)展,虛擬化層對(duì)資源的耗用必將進(jìn)一步降低,這就使得高性能計(jì)算集群云化部署方法有了更大的推廣應(yīng)用前景。
主要參考文獻(xiàn)
[1]孟相武,程勁,羅克露,等.基于Linux的高可用集群系統(tǒng)的設(shè)計(jì)及實(shí)現(xiàn)[J].電子科技大學(xué)學(xué)報(bào),2005(4).
[2]李林昊.大規(guī)模Linux集群部署系統(tǒng)的研究及實(shí)現(xiàn)[D].焦作:河南理工大學(xué),2009.
[3]許兆新,周長(zhǎng)林.Linux集群節(jié)點(diǎn)自動(dòng)化部署方法與實(shí)現(xiàn)[J].應(yīng)用科技,2009(10).
[4]么羅野.大規(guī)模快速部署Linux的實(shí)現(xiàn)方法[J].計(jì)算機(jī)與現(xiàn)代化,2011(5).
[5]顧夢(mèng)非,徐煒民.一個(gè)基于Linux的集群部署方案[J].計(jì)算機(jī)應(yīng)用與軟件,2008(1).