一種Linux環境下的云中GIS服務部署系統的制作方法
【技術領域】
[0001]本發明涉及一種云中GIS服務的部署系統,屬于GIS服務領域,具體涉及一種Linux環境下的云中GIS服務部署系統。
【背景技術】
[0002]隨著計算機技術的發展,GIS應用水平的不斷提高,GIS的軟件技術產生了新的變革。其中與GIS密切相關的是SaaS,也就是軟件即服務。利用SaaS的特性之后,GIS軟件與服務可以通過互聯網或者私有網絡直接提供軟件的服務。GIS軟件提供商將應用軟件部署在自己的服務器上,GIS的客戶可以根據自己實際需求,通過門戶網站或者運維中心向云端定購所需的Web應用軟件服務。SaaS使得GIS用戶在某一限定的服務范疇內不需要重復購買GIS軟件,而改用向私有云或者公有云的云GIS提供的各種軟件和服務,來從事自己所需要管理經營活動,與此同時也無需對GIS軟件進行維護,服務提供商會全權管理和維護軟件,GIS軟件廠商在向客戶提供云端GIS應用的同時,也提供軟件的離線操作和本地數據存儲,讓用戶隨時隨地都可以使用其需要的軟件和服務。
[0003]而GIS軟件不僅部署復雜,設計多個流程的多個階段,例如數據存儲GIS要求有自己的存儲模式和格式,涉及多個不同的數據庫與初始化參數;在服務發布和管理上需要外圍很多基礎軟件的配合,若增加集群、HA等模式,相應的修改參數的模式將更加復雜多樣;在用戶端還區分了 C/S模式與B/S模式的客戶端。因此如何在云環境下實現GIS體系的自動化部署成為云GIS最有難度的要點之一。
[0004]隨著云平臺的發展,也一定程度的解決了諸如虛擬機投遞管理、虛擬機計算方案(本質是虛擬機的占用資源的方案)、基礎設施級別的HA等等基礎IT的解決方案,但是并未能依據GIS的實際情況,綜合性的解決一攬子的問題。更重要的是,未能在網絡協議第7層應用層上解決基礎的問題。
[0005]綜合來看,現有技術中的云中GIS服務部署系統存在以一問題:
[0006](1)部署與配置自動化程度低,難以實用復雜均衡與伸縮能力。通常情況下,在技術設施云平臺搭建好之后,都是從操作系統開始,建立基礎的軟件環境之后再配套的GIS軟件,這一切都需要手工部署并予以處理,人工確保其正確性和有效性。由于云平臺不但實體機、虛擬化主機、實體網路、虛擬化網絡眾多,因此各個點上的配置壓力和管理非常復雜。現有的方式不僅僅管理配置起來存在很大的風險,更重要的是無法實現動態的復雜均衡與伸縮的能力,因為傳統的基礎設施云架構,是無法協作用戶進行配置級別的修訂的,因此多數只能采用HA的模式進行。因此在實際工作中存在隱患。
[0007](2)更新管理困難,容易帶來大量的停機關聯損失。一般情況下,如何更新GIS軟件就是一件較為困難的事情,而在云環境下該情況又變得更加復雜,軟件的更新不僅僅要依據不同的虛擬機環境,不同的GIS軟件版本以及配套的部分基礎軟件,進行不同的操作,還需要記錄在云環境下這些軟件的可用性以及關聯依賴,更需要對所有的過程進行逐一的記錄和處理。目前已知的解決方案手工逐一更新不僅僅存在難以維護處理的難題,更重要的是,一旦GIS軟件在云中已經正式提供服務,難以避免不可預知的停機時間,帶來大量的停機關聯損失。而從技術層面來看,GIS軟件在云中不更新也是不合情理的,任何軟件在其完整的生命周期都有其重要的維護價值,無論是性能、功能抑或缺陷修復,都無可避免的需要在云環境下進行GIS軟件的配套更新工作,而這些工作,用人工去維護,現在超出其能力范圍之外。
[0008](3)未關聯虛擬化模板與軟件包,容易造成選擇錯誤模板導致軟件包不可用。虛擬化模板在基礎設施云平臺中,是用于生成虛擬化主機的重要部分,對于Linux環境中,虛擬化模板一般有0S、基礎設施依賴環境等多個軟件模塊組成,虛擬化模板配合基礎設施云平臺的計算方案和存儲方案之后,就可以投遞出一臺虛擬化主機。而為確保虛擬化主機能夠很好的平穩運行,也為了降低存儲開銷,一般而言,以0S的版本為限定作為基礎的虛擬化模板,而額外運行的軟件(例如本專利關注的GIS軟件/服務)由于配置復雜、可選項多的原因是后期再行配置的。因此在傳統的基礎設施云平臺中,虛擬化模板與模板對應的軟件包并無任何聯系,因此很容易造成選擇錯誤模板導致軟件包不可用的問題,并且差錯復雜容易出錯,造成了大量的部署實施時的工時浪費甚至返工。
【發明內容】
[0009]本發明主要是解決現有技術所存在的部署與配置自動化程度低,難以實用復雜均衡與伸縮能力的技術問題,提供了一種Linux環境下的云中GIS服務部署系統。該系統能夠自動化部署GIS服務本身以及配置修改自動化部署對應所需要的基礎環境,為云中GIS軟件的自動分配新資源提供必須的幫助。
[0010]本發明還有一目的是解決現有技術所存在的更新管理困難,容易帶來大量的停機關聯損失等技術問題,提供了一種Linux環境下的云中GIS服務部署系統。該方法及系統通過唯一的軟件源,統一組織操作系統基礎軟件環境以外的所有軟件環境,使得整個部署發布的流程自動化、智能化、可追朔化。
[0011]本發明再有一目的是解決現有技術所存在的未關聯虛擬化模板與軟件包,容易造成選擇錯誤模板導致軟件包不可用的技術問題,提供了一種Linux環境下的云中GIS服務部署系統。該系統將模板與軟件源(以及其依賴)進行了集成和關聯,使得正確的GIS軟件不可能再投遞在不合適的虛擬化模板中,從而大大降低了實施的復雜程度。
[0012]本發明的上述技術問題主要是通過下述技術方案得以解決的:
[0013]一種Linux環境下的云中GIS服務部署系統,包括:
[0014]一個實體GIS服務與應用工具,用于提供需要部署于云中的GIS軟件;
[0015]一個虛擬化容器裝置,置于基礎設施云平臺中,用于在云中環境下部署實體GIS月艮務與應用工具提供的GIS軟件,并修改服務相關參數,具體包括:
[0016]自動部署腳本解析器,用于解析外部接口裝置傳遞過來的腳本信息,所述腳本信息中定義了各自的軟件配置以及模板與軟件源工具提供的軟件與模板關系檢查內容;
[00?7]系統配置修改插件,用于修改Linux操作系統中必須的系統參數;
[0018]中間件管理插件,用于修中間件的配置動態需求;
[0019]GIS服務修改插件,用于修改、配置對應的GIS服務;
[0020]系統插件管理器,以配置文件形式存在,用于在排錯和調試時臨時禁用不需要的插件系統;
[0021]云與SDN網終配置獲取模塊,用于依據具體的云中投遞的網絡結構進行針對性的SDN網絡的調整以及云中GIS服務端的調整以確保云中的GIS服務能夠正常和外部通訊;
[0022]—個模板與軟件源配置工具裝置,用于初始化Linux平臺軟件源并上傳對應的軟件包予以注冊、配置,具體包括:
[0023]云中軟件源管理工具,用于提供確保在云中的虛擬化或者非虛擬化主機能夠正常的初始化軟件源,并且提供軟件包正常的上傳、下載、更新等功能,同時也確保軟件源的歷史記錄與元數據信息的記錄;
[0024]源-模板關聯工具,用于提供對應模板-源的管理能力;
[0025]虛擬化模板管理工具,用于上傳、下載、更新、注冊云中的GIS服務模板,從而為軟件源和模板的關聯建立基礎;
[0026]軟件更新工具,用于自動化核對存在于軟件源中的對應GIS服務版本和查詢該GIS服務對應的歷史版本,并且用于與負載均衡器溝通,在更新更新中的節點時自動屏蔽對應的請求,從而保證不間斷的運行;
[0027]—個用于調用的外部接口裝置,用于提供自動化部署以及消息發送所需要的接口函數,具體包括:
[0028]自動化部署API,用于有針對性的檢查所接收到的模板-源的配置信息,在同一個云租戶環境下實現一套邏輯;
[0029]消息發送系統API,用于將包含有GIS服務包以及關聯依賴的實際需求轉換為統一的消息中間件并傳遞出去。
[0030]優化的,上述的一種Linux環境下的云中GIS服務部署系統,所述虛擬化模板管理工具進一步包括:
[0031 ]模板掛載方式選擇模塊,用于接收上傳的虛擬模板并判斷云平臺類型,當判斷到云平臺不具備額外掛接能力時,調用云平臺API將模板上傳到云平臺使對應云平臺獲取到模板信息,并能在云平臺中調用;當判斷到云平臺具備額外掛接能力時,則調用云平臺API生成訪問鏈接,并將模板掛入云平臺;
[0032]操作執行模塊,用于配置模板包與軟件包的關聯性,并將結果告知運維系統保存,當模板中的自動