摘要:文章以 OpenStack 云計算技術為基礎,以物理服務器上部署的農業(yè)信息化服務平臺為依托,根據(jù)農產品的生產季節(jié)性、周期性,將部署在物理服務器上的農業(yè)信息化服務平臺遷移到基于 OpenStack 云計算的平臺上,實現(xiàn)彈性計算。把數(shù)據(jù)采集設備采集到的數(shù)據(jù)保存到OpenStack云計算平臺上,通過數(shù)據(jù)分析引擎對采集到的數(shù)據(jù)進行分析,為實現(xiàn)智慧農業(yè)提供決策和支持。
關鍵詞:OpenStack;云計算技術;農業(yè)信息化;服務平臺;彈性計算
中圖分類號:TP311
文獻標志碼:A
0 引言
我國是一個農業(yè)大國,但與美國、加拿大等發(fā)達國家相比,還不是一個農業(yè)強國。從農業(yè)大國向農業(yè)強國跨步邁進的過程中,農業(yè)信息化建設將會給農業(yè)經濟發(fā)展帶來巨大的推動力,對其他產業(yè)的發(fā)展也具有十分重要的促進意義,因此,農業(yè)信息化建設必將成為我國農業(yè)經濟發(fā)展的重中之重,也將是我國農業(yè)經濟發(fā)展的重要組成部分[1]。農業(yè)信息化是指以現(xiàn)代信息技術為基礎和手段,對農業(yè)生產服務各個環(huán)節(jié)產生的信息進行加工和處理,繼而提高生產效率、降低生產成本,在現(xiàn)代社會發(fā)揮著越來越重要的作用 [2]。
1 傳統(tǒng)農業(yè)信息化服務平臺存在的問題
傳統(tǒng)的農業(yè)信息化服務平臺一般安裝于Windows操作系統(tǒng)或Linux操作系統(tǒng)上,采用 Browser/Server 或者 Client/server架構。訪問農業(yè)信息化服務平臺時,用戶使用瀏覽器或客戶端軟件進行訪問,這種方式存在以下問題。
1.1 靈活性差
農業(yè)生產受自然環(huán)境和地理環(huán)境影響,具有季節(jié)性和周期性的特點,使得農業(yè)生產過程中對IT 資源的需求也呈現(xiàn)較大的彈性波動。而物理服務器在資源調配和擴展時靈活性較低,難以快速適應業(yè)務彈性需求的變化。
1.2 可靠性不高
物理服務器可能存在單點故障的問題,如果沒有適當?shù)娜哂嗯渲?,一旦物理服務器發(fā)生故障,可能導致農業(yè)信息化服務平臺長時間不能被使用。
1.3 故障恢復時間長
物理服務器在面臨系統(tǒng)故障時,恢復起來需要很長時間,導致業(yè)務系統(tǒng)長時間不能被使用。
1.4 安全性挑戰(zhàn)
物理服務器需要企業(yè)自行維護安全措施,包括防火墻、入侵檢測系統(tǒng)、審計等,這需要專業(yè)的知識和持續(xù)性的監(jiān)控。
1.5 資源利用率低
物理服務器硬件配置過高,超出了實際工作負載的需求,無法充分利用其所有硬件資源,從而導致資源浪費。
2 云計算和OpenStack
隨著互聯(lián)網技術的迅猛發(fā)展,云計算、大數(shù)據(jù)、人工智能技術已進入人們日常生活的各個環(huán)節(jié)。在農業(yè)信息化領域,提高農業(yè)生產效率、優(yōu)化農業(yè)資源、提高農產品市場競爭力、改善農民生活、加強農業(yè)管理和服務成為農業(yè)信息化研究的重點,云計算、大數(shù)據(jù)和人工智能技術與現(xiàn)代農業(yè)深度融合已成為一個熱門研究重點。
云計算是由虛擬化、網格計算、分布式計算等技術結合應用發(fā)展而來的。根據(jù)美國國家標準及其技術研究院給出的定義,云計算是一種用戶能夠通過網絡訪問,以按需付費的、便捷的、自助的方式獲取計算資源(如網絡、服務器、存儲、應用軟件和服務等),這些資源來自一個共享的、可自定義配置的虛擬資源池,用戶能夠通過最小的管理代價或者與服務提供方快速交互地獲取和釋放。[3-4]。
OpenStack是一個開源的云計算平臺,主要用于構建和管理公有云或私有云環(huán)境。它由多個模塊組成,提供計算、存儲、網絡等基礎設施服務,可以幫助企業(yè)和組織實現(xiàn)資源的虛擬化和自動化管理。OpenStack目標是提供實施簡單、可大規(guī)模擴展、豐富、標準統(tǒng)一的云計算管理平臺[5]。
3 基于OpenStack云計算技術的農業(yè)信息化服務平臺
鑒于OpenStack 具備開源、免費及易于部署等多個優(yōu)勢,根據(jù)農業(yè)生產的周期性、季節(jié)性以及對計算資源需求的不同特點,結合農業(yè)信息化的需求,本文研究并設計了一種基于OpenStack云計算技術的農業(yè)信息化服務平臺。該平臺由物理層、OpenStack 云計算基礎層、OpenStack云計算管理層、OpenStack云計算用戶層4個部分組成。
3.1 物理層
物理層數(shù)據(jù)采集設備由傳感器、圖像視頻采集設備和檢測儀器等設備組成。土壤濕度傳感器均勻地部署于土壤中,用于測量土壤水分含量,根據(jù)設置的閾值結合決策系統(tǒng)智能地判斷灌溉澆水程度,以保證農作物健康成長所需的水分供應。溫度傳感器和濕度傳感器用于監(jiān)測農作物生長環(huán)境的溫度和濕度,根據(jù)檢測結果決定是否要對農產品、農作物進行溫度和濕度調控。水質傳感器用于監(jiān)測水源質量,檢測水中各種物理、化學和生物特性,用于評估河流、湖泊、水井、泉水水質,確保灌溉和家畜飲用水的安全,同時幫助決策者和管理者采取適當?shù)拇胧﹣肀Wo水資源。光譜傳感器負責監(jiān)測作物健康狀況、土壤營養(yǎng)成分、植物水分含量等,從而更好地確定作物的健康狀況、生長階段、土壤和環(huán)境條件。根據(jù)作物的營養(yǎng)需求和生長狀況,光譜傳感器可以幫助農民精確地控制施肥和灌溉,避免資源浪費并提高農作物產量。智能攝像頭等圖像視頻采集設備采集田間地頭的實時圖像,通過高分辨率圖像監(jiān)測農田的整體狀況并記錄農作物生長軌跡,同時通過圖像分析檢測到的農作物的病蟲害情況。檢測儀器對農產品的農藥殘留、重金屬、水分含量、食品質量、微生物、農產品色澤等進行檢測,確保農產品符合安全標準,避免最終對消費者造成健康危害。
數(shù)據(jù)采集設備通過傳感器、監(jiān)控設備和檢測儀器收集原始數(shù)據(jù),這些數(shù)據(jù)可以用于農業(yè)精準化實施、農作物健康檢測、農作物生長自動化控制、食品安全控制等,對農業(yè)生產起著至關重要的作用。采集到的數(shù)據(jù)會被傳輸并保存到OpenStack云計算基礎層,通過數(shù)據(jù)分析引擎對數(shù)據(jù)進行分析,挖掘其有用的信息,為實現(xiàn)智慧農業(yè)提供決策和管理。
3.2 OpenStack云計算基礎層
OpenStack云計算基礎層硬件由一系列服務器組成,服務器擔任控制節(jié)點、計算節(jié)點、存儲節(jié)點和網絡節(jié)點。在資源不足的情況下,控制節(jié)點安裝Nova計算服務后也可轉變?yōu)橛嬎愎?jié)點,從而進一步擴大資源的使用范圍??刂乒?jié)點是OpenStack云計算基礎層的核心,主要負責管理OpenStack系統(tǒng)并控制整個云計算平臺的運行。計算節(jié)點是OpenStack中計算資源提供者,主要功能是用于創(chuàng)建云主機并把云主機連接到網絡。這些云主機用于保存和處理數(shù)據(jù)采集設備提供的數(shù)據(jù)。
農業(yè)生產與自然環(huán)境、氣候和地理條件息息相關,設施農業(yè)的生產周期與農作物的生長周期基本一致,農業(yè)生產過程中對不同類型的 IT 資源的需求呈現(xiàn)出較大的彈性波動。在農作物生長期間,是采集土壤、水文、氣象、農作物等數(shù)據(jù)的關鍵時期,需要較多計算資源;而在農作物收獲期間,對數(shù)據(jù)的采集則沒有生產期間那么頻繁。OpenStack云計算技術能夠根據(jù)農作物生產的季節(jié)性和周期性來實現(xiàn)彈性計算,從而實現(xiàn)自動擴展或縮小資源來滿足業(yè)務平峰時計算資源不被浪費,業(yè)務高峰時計算資源能夠自動擴展。
OpenStack 是一個開源的云計算管理平臺項目,它由多個模塊組成,每個模塊負責不同的功能。其中,Nova提供計算服務,負責管理云主機生命周期。Neutron提供網絡連接服務,包括虛擬網絡、子網、路由器、浮動IP等。Swift用于存儲和檢索大量靜態(tài)數(shù)據(jù),它是一個開源的對象存儲系統(tǒng),用于存儲和檢索大量非結構化數(shù)據(jù),能提供高可用、可擴展且可靠的對象存儲解決方案,適用于歸檔、大數(shù)據(jù)分析和多媒體內容交付。數(shù)據(jù)采集設備采集到的數(shù)據(jù)既可以存放在云主機中,也可以存放在Swift對象存儲中。Cinder提供塊存儲服務和持久化塊存儲資源,可以附加到云主機上。Glance提供鏡像服務,用于存儲和檢索云主機鏡像。Keystone提供身份服務,包括身份驗證、授權和服務的目錄。Horizon提供儀表板服務和基于Web的用戶界面,用于管理OpenStack資源。Heat提供編排服務,允許用戶通過模板定義和協(xié)調云資源的集合。Ceilometer提供監(jiān)控和計量服務,用于收集OpenStack中資源的使用數(shù)據(jù)。
OpenStack云計算基礎層采用OpenStack Train版本。在搭建之前,須進行一定的規(guī)劃和準備,以保障OpenStack云計算基礎層能支持用戶、虛擬機、存儲和網絡資源數(shù)量。硬件的規(guī)劃須確定合適的服務器、存儲和網絡設備。在所有的服務器上安裝操作系統(tǒng)后,配置靜態(tài)IP地址、主機名和域名;在控制節(jié)點上安裝并配置Keystone 認證模塊、Glance鏡像模塊、Nova 計算模塊、Neutron網絡模塊、Dashboard界面模塊、Cinder塊存儲模塊、Swift對象存儲模塊、Ceilometer監(jiān)控模塊和Heat編排模塊;在計算節(jié)點上安裝并配置Nova計算模塊、Neutron網絡模塊、Dashboard界面模塊、Cinder塊存儲模塊、Swift對象存儲模塊、Ceilometer 監(jiān)控模塊和Heat編排模塊。OpenStack云計算基礎層常用模塊安裝好后,須構建內外部網絡并安裝、配置路由器,使得內外部網絡通過路由器建立連接。最后,在OpenStack云計算平臺上創(chuàng)建云主機,把數(shù)據(jù)采集設備采集到的數(shù)據(jù)通過網絡保存在云主機或者Swift對象存儲中。為應對農業(yè)生產過程中IT 資源需求出現(xiàn)較大的彈性波動,使用 Heat 編排服務定義應用程序和基礎設施的模板。配置Ceilometer監(jiān)控工具來收集指標并根據(jù)這些指標設置觸發(fā)自動伸縮條件,使用heat和Ceilometer監(jiān)控數(shù)據(jù)來實現(xiàn)計算資源和存儲資源的自動擴展與縮小。
OpenStack云計算基礎層可以存儲和處理各種農業(yè)數(shù)據(jù),這些數(shù)據(jù)來源于數(shù)據(jù)采集設備,包括傳感器數(shù)據(jù)、氣象信息、圖像數(shù)據(jù)、視頻文件以及檢測結果等,以結構化或非結構化形式存儲在OpenStack云計算基礎層上。OpenStack云計算基礎層通過冗余和負載均衡技術來應對硬件故障和高流量訪問,以確保平臺數(shù)據(jù)始終能夠被實時讀寫。OpenStack云計算基礎層具有極高的可擴展性,通過添加更多的計算節(jié)點,線性地增加資源,來處理更多的用戶和工作負載,以實現(xiàn)水平擴展。通過增強單個節(jié)點的硬件能力(如增加CPU、內存、存儲)來提升性能,以實現(xiàn)垂直擴展。通過橫向和縱向擴展,可以實現(xiàn)自動彈性擴展,以應對日益增長的數(shù)據(jù)需求。OpenStack云計算基礎層具備極高的可靠性,通過定期的數(shù)據(jù)備份,能夠有效防止數(shù)據(jù)的丟失或損壞,從而確保數(shù)據(jù)的完整性和可用性。通過身份驗證、數(shù)據(jù)加密、門禁、入侵檢測、審核,防止未經授權的人員訪問敏感農業(yè)數(shù)據(jù)。
OpenStack 云計算基礎層是農業(yè)信息化服務平臺的基礎平臺,能為農業(yè)生產者、農業(yè)經營管理者、政府部門和農業(yè)科研人員提供農業(yè)生產數(shù)據(jù)的計算和存儲,從而為農業(yè)實踐和決策提供數(shù)據(jù)支持。
3.3 OpenStack云計算管理層
OpenStack云計算管理層具有數(shù)據(jù)分析引擎功能,是農業(yè)信息服務平臺分析和處理農業(yè)生產數(shù)據(jù)的核心平臺,它通過刪除無效數(shù)據(jù)、填補缺失值、糾正錯誤數(shù)據(jù)、歸一化和標準化數(shù)據(jù)、刪除重復數(shù)據(jù)等方法預處理采集到的原始數(shù)據(jù),以確保數(shù)據(jù)的質量。同時,對預處理后的數(shù)據(jù)進行整合,從而提供更加全面的農業(yè)生產信息。OpenStack云計算管理層利用統(tǒng)計分析、數(shù)據(jù)挖掘、機器學習、神經網絡、深度學習等多種大數(shù)據(jù)分析技術,挖掘農業(yè)生產數(shù)據(jù)中的有用信息,為實現(xiàn)精準農業(yè)、智能農機、農產品檢測、病蟲害預測、水資源管理、市場分析預測等功能提供數(shù)據(jù)支撐。而且,能夠處理實時數(shù)據(jù)流,為農業(yè)勞動者、研究人員和決策者提供更有效的農業(yè)實踐、資源管理和政策決策等方面的建議及信息[6]。由此可見,OpenStack云計算管理層的應用對于提高農業(yè)生產效率、優(yōu)化資源分配、增強市場競爭力以及促進農業(yè)可持續(xù)發(fā)展具有重要意義。
3.4 OpenStack云計算用戶層
OpenStack云計算用戶層具有用戶界面的功能,是農業(yè)信息化服務平臺的前端部分,能夠實現(xiàn)用戶與平臺的互動交流,具有農業(yè)決策支持、農業(yè)信息化管理和數(shù)據(jù)可視化的功能。OpenStack云計算用戶層通過圖標、圖形、地圖、表格、儀表盤、時間序列等方式可視化地呈現(xiàn)數(shù)據(jù),使用戶能夠更容易地理解和解釋數(shù)據(jù),更加直觀和準確地監(jiān)控農田和農作物的生長狀態(tài)。用戶界面具有決策系統(tǒng),能夠根據(jù)數(shù)據(jù)分析結果制定智能決策,幫助用戶提高決策的質量和效率。同時,能夠創(chuàng)建和管理計劃,從而提高農場運營效率。OpenStack云計算用戶層可以設置閾值,一旦平臺中的數(shù)據(jù)超過設定的閾值,可以通過短信或者App向用戶發(fā)送通知和警告,提醒用戶注意突發(fā)事件。
4 結語
基于OpenStack云計算技術的農業(yè)信息化服務平臺能夠解決傳統(tǒng)農業(yè)信息化服務平臺中存在的靈活性差、可靠性不高、故障恢復時間長、資源利用率低等問題,該平臺能有效促進傳統(tǒng)農業(yè)的數(shù)字化轉型,實現(xiàn)現(xiàn)代信息技術與傳統(tǒng)農業(yè)的深度融合,提高農業(yè)生產數(shù)字化水平,為農業(yè)工作者提供高效的農業(yè)實踐和決策。OpenStack云計算基礎層能夠彈性存儲和處理農業(yè)數(shù)據(jù);數(shù)據(jù)分析引擎利用各種大數(shù)據(jù)技術從大量的數(shù)據(jù)中提取有價值的信息,為農業(yè)生產提供決策和幫助;用戶界面能夠實現(xiàn)用戶與平臺的互動交流,對農業(yè)決策支持、農業(yè)信息化管理和數(shù)據(jù)可視化起到積極的支撐作用。
參考文獻
[1]張耀.OpenStack云計算平臺在農業(yè)信息化中的應用[D].武漢:華中師范大學,2015.
[2]韓兵,李東明.基于混合云技術的農業(yè)信息化平臺架構的研究[J].吉林農業(yè)大學學報,2020(6):693-698.
[3]武志學.云計算虛擬化技術的發(fā)展與趨勢[J].計算機應用,2017(4):915-917,923.
[4]姜棟瀚,林海濤.云計算環(huán)境下的資源分配關鍵技術研究綜述[J].中國電子科學研究所學報,2018(3):308-314.
[5]李小寧,李磊,金連文,等.基于OpenStack構建私有云計算平臺[J].電信科學,2012(9):1-8.
[6]劉澤,徐瀟潔,邵波.基于多策略混合問答系統(tǒng)模型的圖書館咨詢機器人的設計與應用[J].新世紀圖書館,2022(5):43-49.
(編輯 沈 強)
Design and implementation of agricultural information service platform based on OpenStack cloud computing technology
YANG Jianbing1,2, WANG Dong1,2, CHEN Lili1,2
(1.Nantong College of Science and Technology, Nantong 226007, China;
2.Jiangsu Province Engineering Research Center of Agricultural and Rural Pollution Prevention Technology and Equipment, Nantong 226007, China)
Abstract:The article is based on OpenStack cloud computing technology, using an agricultural information service platform deployed on physical servers. Considering the seasonality and cyclical nature of agricultural product production, the platform is migrated to an OpenStack-based cloud computing platform for elastic computing. Data from collection devices is stored on this platform, analyzed by an analysis engine, and used to support smart agriculture.
Key words:OpenStack; cloud computing technology; agricultural informatization; service platform; elastic calculation