• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于OpenStack的物聯(lián)網(wǎng)云平臺(tái)創(chuàng)新搭建

      2023-10-25 10:46:50陳鯉文
      無線互聯(lián)科技 2023年16期
      關(guān)鍵詞:開發(fā)板云端實(shí)例

      張 松,陳鯉文

      (福建工程學(xué)院,福建 福州 350000)

      0 引言

      云計(jì)算是指配置了相關(guān)的計(jì)算服務(wù)模塊,用戶根據(jù)自身項(xiàng)目需求選擇服務(wù)器、系統(tǒng)等計(jì)算資源進(jìn)行項(xiàng)目開發(fā)的技術(shù)。其技術(shù)特點(diǎn)可以擴(kuò)展到物聯(lián)網(wǎng)傳感資源的管理,實(shí)現(xiàn)物聯(lián)網(wǎng)和云計(jì)算的方法和技術(shù)的融合[1],這將會(huì)成為項(xiàng)目開發(fā)人員的另一種選擇。大規(guī)模物聯(lián)網(wǎng)項(xiàng)目中的傳感器通常會(huì)有幾個(gè)數(shù)量級(jí)的數(shù)量分散部署,物聯(lián)網(wǎng)包含了物聯(lián)對(duì)象的所有信息,不可避免地帶來了信息安全問題。為了有效地管理邊緣傳感設(shè)備和物聯(lián)網(wǎng)信息安全[2],迫切需要一種管理機(jī)制,即需要?jiǎng)?chuàng)建管理傳感資源的動(dòng)態(tài)基礎(chǔ)設(shè)施的解決方案。因此,本文基于開源云架構(gòu)OpenStack和開源物聯(lián)網(wǎng)解決方案Stack4Tings構(gòu)建了物聯(lián)網(wǎng)云平臺(tái),能夠管理邊緣傳感資源和保障物聯(lián)網(wǎng)信息安全,為開發(fā)大型物聯(lián)網(wǎng)項(xiàng)目提供了方案參考。

      1 OpenStack 和Stack4Tings

      1.1 OpenStack簡介及其組件

      OpenStack是一個(gè)旨在為公共及私有云的建設(shè)與管理提供軟件支持的開源項(xiàng)目[3],各個(gè)組件之間相互關(guān)聯(lián),協(xié)同管理各類計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源,其特點(diǎn)為模塊松耦合、組件配置靈活和二次開發(fā)簡單等。

      物聯(lián)網(wǎng)云平臺(tái)搭建選用的核心組件及其功能介紹如下。(1)Keystone:身份認(rèn)證服務(wù)[4],是OpenStack 框架中負(fù)責(zé)驗(yàn)證用戶身份、設(shè)定訪問服務(wù)規(guī)則和簽發(fā)服務(wù)令牌的組件。具體表現(xiàn)為訪問資源和執(zhí)行操作需要驗(yàn)證用戶的身份與權(quán)限。Keystone可以說是整個(gè)Openstack框架的注冊(cè)表,OpenStack中各項(xiàng)服務(wù)都是通過Keystone來注冊(cè)其網(wǎng)絡(luò)端口(服務(wù)訪問的URL),在本平臺(tái)中會(huì)注冊(cè)物聯(lián)網(wǎng)服務(wù)的網(wǎng)絡(luò)端口進(jìn)行功能調(diào)用,實(shí)現(xiàn)對(duì)邊緣開發(fā)板實(shí)例的創(chuàng)建、查詢和刪除等。(2)Horizon:儀表盤服務(wù),為OpenStack提供了一個(gè)Web前端的管理界面,管理員可以通過前端界面直觀地看到各種操作結(jié)果與運(yùn)行狀態(tài)。

      1.2 Stack4Ting簡介及其組件

      Stack4Things是一個(gè)開源的物聯(lián)網(wǎng)框架,由意大利墨西拿大學(xué)的移動(dòng)和分布式系統(tǒng)實(shí)驗(yàn)室開發(fā)[5]。Stack4Things可以不用獲取嵌入式設(shè)備的物理位置、網(wǎng)絡(luò)配置和底層技術(shù)就能夠管理物聯(lián)網(wǎng)設(shè)備,是一個(gè)面向云的水平解決方案,提供物聯(lián)網(wǎng)對(duì)象虛擬化、定制和編排服務(wù)。

      Stack4Things物聯(lián)網(wǎng)框架主要包含3部分。(1)IoTronic:物聯(lián)網(wǎng)平臺(tái)核心服務(wù),部署在云基礎(chǔ)設(shè)施側(cè),同OpenStack其他服務(wù)類似,需要通過Keystone注冊(cè)獲得其網(wǎng)絡(luò)端口。該組件主要接收用戶命令,傳遞命令到開發(fā)板,接收開發(fā)板的數(shù)據(jù)反饋到云端,完成將OpenStack云計(jì)算架構(gòu)擴(kuò)展到傳感資源管理的任務(wù)。(2)Lighting-Rod:邊緣開發(fā)板側(cè)服務(wù)程序,完成來自云端用戶命令的接收和與開發(fā)板上的外接傳感資源交互的任務(wù),同時(shí)將傳感器獲得的數(shù)據(jù)上傳云端。(3)IoTronicClient:命令行工具,通過Keystone服務(wù)認(rèn)證的用戶可以使用IoTronicClient命令行工具輸入相關(guān)命令實(shí)現(xiàn)對(duì)開發(fā)板的創(chuàng)建、查詢和刪除等操作。

      2 物聯(lián)網(wǎng)云平臺(tái)的設(shè)計(jì)

      本文設(shè)計(jì)了物聯(lián)網(wǎng)平臺(tái)的總體架構(gòu),如圖1所示。總體架構(gòu)主要分為兩部分:云基礎(chǔ)設(shè)施側(cè)和邊緣開發(fā)板側(cè),重點(diǎn)注重于OpenStack組件和Stack4Tings組件的分布情況。在云基礎(chǔ)設(shè)施側(cè),Keystone服務(wù)完成對(duì)用戶的認(rèn)證,IoTronic組件代表了物聯(lián)網(wǎng)云平臺(tái)的核心,管理數(shù)據(jù)庫,存儲(chǔ)所有必要的信息。在邊緣開發(fā)板側(cè),Lighting-Rod作為板側(cè)軟件架構(gòu)的核心,代表了云基礎(chǔ)設(shè)施的接觸點(diǎn),通過WebSocket全雙工通道連接到一個(gè)特定的WAMP路由器與IoTronic進(jìn)行通信,完成與云端收發(fā)命令和數(shù)據(jù)的任務(wù)。

      圖1 物聯(lián)網(wǎng)平臺(tái)總體架構(gòu)

      同時(shí),本文給出了云基礎(chǔ)設(shè)施側(cè)和邊緣開發(fā)板側(cè)之間具體的信息交互,如圖2所示。假定用戶已經(jīng)通過身份認(rèn)證,操作物聯(lián)網(wǎng)云平臺(tái)的具體信息流程如下:(1)用戶通過命令行工具或者Web前端界面連接到IoTronic服務(wù)。(2)用戶命令轉(zhuǎn)化為對(duì)IoTronic API接口的調(diào)用,同時(shí)將調(diào)用消息放進(jìn)RabbitMQ消息隊(duì)列。(3)IoTronic conductor從消息隊(duì)列中提取消息并查詢數(shù)據(jù)庫檢查用戶要操作的開發(fā)板是否已經(jīng)注冊(cè),如果已注冊(cè)則獲取該開發(fā)板的WAMP通信協(xié)議代理。(4)IoTronic conductor向消息隊(duì)列推送新的消息,WAMP通信協(xié)議代理從消息隊(duì)列中提取消息,并在相應(yīng)的WAMP路由的主題上發(fā)布信息。(5)在邊緣開發(fā)板側(cè),通過WAMP庫,Lighting-Rod從路由上獲得信息,同時(shí)打開反向套接字隧道連接到由云端IoTronic conductor指定的網(wǎng)絡(luò)套接字隧道代理,并且生成一個(gè)TCP端口。(6)隧道代理通過指定的端口發(fā)布一條用戶命令被執(zhí)行的消息到消息隊(duì)列中。(7)IoTronic API接口從消息隊(duì)列中提取消息顯示在Web前端界面。

      圖2 物聯(lián)網(wǎng)平臺(tái)內(nèi)部信息流

      3 物聯(lián)網(wǎng)云平臺(tái)的搭建

      3.1 OpenStack基礎(chǔ)云架構(gòu)搭建

      對(duì)于OpenStack基礎(chǔ)云架構(gòu)的搭建主要包含以下幾個(gè)步驟:(1)基礎(chǔ)環(huán)境搭建。本次搭建采用一臺(tái)4核4 G內(nèi)存、Centos7系統(tǒng)的虛擬機(jī)作為基礎(chǔ)云架構(gòu)的controller節(jié)點(diǎn)?;A(chǔ)設(shè)置包括設(shè)置虛擬機(jī)雙網(wǎng)卡模式(NAT和主機(jī)模式),關(guān)閉防火墻并設(shè)置開機(jī)不啟動(dòng),安裝MySQL數(shù)據(jù)庫、RabbitMQ消息隊(duì)列服務(wù)、Memcached緩存服務(wù)等。(2)安裝OpenStack相關(guān)服務(wù)。Keystone身份驗(yàn)證服務(wù)和Horizon儀表盤服務(wù),本文采用的是先電云平臺(tái)一鍵式搭建。(3)搭建成功驗(yàn)證。在瀏覽器上輸入controller節(jié)點(diǎn)的IP地址進(jìn)入云平臺(tái)登錄界面可以驗(yàn)證是否安裝成功。云平臺(tái)登錄界面如圖3所示。

      圖3 云平臺(tái)登錄界面

      3.2 Stack4Things物聯(lián)網(wǎng)架構(gòu)搭建

      對(duì)于Stack4Things物聯(lián)網(wǎng)架構(gòu)搭建主要包含以下幾個(gè)步驟:(1)搭建前準(zhǔn)備。在controller節(jié)點(diǎn)準(zhǔn)備完成后,需要在MySQL數(shù)據(jù)庫創(chuàng)建名為“iotronic”的數(shù)據(jù)庫,使用Keystone服務(wù)創(chuàng)建名為“iotronic”用戶并將用戶加入項(xiàng)目域,再創(chuàng)建名為“iot”的服務(wù)并為該服務(wù)注冊(cè)網(wǎng)絡(luò)端口以供用戶訪問。(2)Stack4Things相關(guān)組件安裝。此次搭建采用一臺(tái)4核4 G內(nèi)存、Ubuntu18.04系統(tǒng)的虛擬機(jī)作為IoTroinc節(jié)點(diǎn)。安裝Crossbar服務(wù),Crossbar實(shí)現(xiàn)了開放式Web應(yīng)用程序消息傳遞協(xié)議(WAMP),上文提到的WAMP路由由此服務(wù)提供。安裝IoTroinc服務(wù),是物聯(lián)網(wǎng)云平臺(tái)的核心。安裝apache2服務(wù),作用為開放該節(jié)點(diǎn)特定的網(wǎng)路端口。(3)IoTroinc服務(wù)相關(guān)進(jìn)程開啟。通過systemctl命令開啟conductor、WAMP agent等進(jìn)程,并設(shè)置為開機(jī)自啟動(dòng)。

      3.3 邊緣開發(fā)板側(cè)架構(gòu)搭建

      對(duì)于邊緣開發(fā)板側(cè)架構(gòu)的搭建主要包含以下幾個(gè)步驟:(1)搭建前準(zhǔn)備。本次搭建采用一塊MPU為RK3568的開發(fā)板,運(yùn)行Debian10系統(tǒng)。安裝JavaScript 運(yùn)行環(huán)境NodeJS、反向代理服務(wù)器NGINX和自動(dòng)化安全證書管理工具Certbot。(2)Lighting-Rod安裝。安裝完成后通過systemctl命令運(yùn)行Lighting-Rod。安裝完成后登錄界面如圖4所示。

      圖4 Lighting-Rod登錄界面

      4 物聯(lián)網(wǎng)平臺(tái)測(cè)試

      本次測(cè)試在云基礎(chǔ)設(shè)施側(cè)和邊緣開發(fā)板側(cè)分別測(cè)試。在云基礎(chǔ)設(shè)施側(cè)的測(cè)試為在controller節(jié)點(diǎn)創(chuàng)建用戶,用戶通過IoTronicClient命令行工具進(jìn)行創(chuàng)建、查看和刪除開發(fā)板設(shè)備實(shí)例。邊緣開發(fā)板側(cè)的測(cè)試為通過命令行配置數(shù)據(jù)并在Web端登錄開發(fā)板,與數(shù)據(jù)庫中創(chuàng)建的開發(fā)板實(shí)例相匹配。

      云基礎(chǔ)設(shè)施側(cè)測(cè)試:通過IotronicClient命令行工具輸入命令“iotronic board-create ”,代表要?jiǎng)?chuàng)建開發(fā)板的名字,代表開發(fā)板唯一標(biāo)識(shí)符,在邊緣開發(fā)板側(cè)實(shí)際注冊(cè)時(shí)需要提供此標(biāo)識(shí)符,當(dāng)惡意攻擊者要將設(shè)備接入云端會(huì)因數(shù)據(jù)庫沒有該實(shí)例或者無法提供開發(fā)板標(biāo)識(shí)符而失敗,從而保證了物聯(lián)網(wǎng)信息安全。分別代表緯度、經(jīng)度和海拔,用于記錄開發(fā)板設(shè)備安裝的位置。輸入命令“iotronic board-list”查看已創(chuàng)建的開發(fā)板實(shí)例,輸出為開發(fā)板的UUID、名字、類型、板側(cè)Lighting-Rod版本、引腳數(shù)量、在線狀態(tài)等。可見當(dāng)物聯(lián)網(wǎng)項(xiàng)目部署在邊緣的采集設(shè)備數(shù)量巨大時(shí),可以在云端實(shí)時(shí)管理和查看設(shè)備是否還在正常運(yùn)行。輸入命令“iotronic board-delete ”刪除指定開發(fā)板實(shí)例。當(dāng)不需要某處的數(shù)據(jù)采集時(shí),可進(jìn)行刪除操作回收采集設(shè)備。本次測(cè)試是創(chuàng)建開發(fā)板實(shí)例、查看實(shí)例列表和刪除開發(fā)板實(shí)例,測(cè)試結(jié)果皆成功,如圖5所示。測(cè)試結(jié)果證明了,通過keystone授權(quán)的用戶可以對(duì)邊緣傳感資源進(jìn)行管理,證明了物聯(lián)網(wǎng)云平臺(tái)的可用性。

      圖5 創(chuàng)建、查看和刪除開發(fā)板實(shí)例

      邊緣開發(fā)板側(cè)測(cè)試:本次測(cè)試分為模擬未獲取開發(fā)板實(shí)例標(biāo)識(shí)符的攻擊者惡意接入云端和云端用戶正常接入云端。在云端創(chuàng)建名為“rk3568”開發(fā)板實(shí)例的標(biāo)識(shí)符為000001。在開發(fā)板安裝Lighting-Rod后,命令行輸入lr_configure 注冊(cè)開發(fā)板,其中為創(chuàng)建實(shí)例的標(biāo)識(shí)符,為WAMP路由的URL。假定攻擊者輸入的命令為lr_configure 000002 ws://192.168.100.40∶8181,通過登錄開發(fā)板Web界面查看開發(fā)板狀態(tài)如圖6所示,結(jié)果顯示該開發(fā)板沒有接入云端。假定云端用戶正常接入云端輸入的命令為lr_configure 000001 ws://192.168.100.40∶8181,通過登錄開發(fā)板Web界面查看開發(fā)板狀態(tài)如圖7所示,結(jié)果顯示該開發(fā)板成功接入云端。兩者相較物聯(lián)網(wǎng)云平臺(tái)保證了物聯(lián)網(wǎng)項(xiàng)目的安全。

      圖6 開發(fā)板未接入云端

      圖7 開發(fā)板成功接入云端

      5 結(jié)語

      本文基于云計(jì)算開源項(xiàng)目OpenStack和物聯(lián)網(wǎng)開源項(xiàng)目Stack4Tings構(gòu)建了物聯(lián)網(wǎng)云平臺(tái),將按需分配和管理計(jì)算資源的云計(jì)算技術(shù)特點(diǎn)擴(kuò)展到對(duì)物聯(lián)網(wǎng)傳感資源的管理,實(shí)現(xiàn)了物聯(lián)網(wǎng)和云計(jì)算的方法和技術(shù)的融合。該物聯(lián)網(wǎng)平臺(tái)能夠?qū)崿F(xiàn)對(duì)邊緣傳感資源的管理,使得大型物聯(lián)網(wǎng)項(xiàng)目部署傳感資源更快捷,同時(shí)也能保障物聯(lián)網(wǎng)信息的安全。下一步工作是將外接傳感器的開發(fā)板應(yīng)用到某個(gè)場(chǎng)景中,配合OpenStack存儲(chǔ)服務(wù)將采集的數(shù)據(jù)同步上傳云端,同時(shí)進(jìn)行網(wǎng)絡(luò)前端的開發(fā),實(shí)現(xiàn)一鍵式數(shù)據(jù)采集、上傳、存儲(chǔ)和計(jì)算功能。

      [1]舒俊.云計(jì)算在物聯(lián)網(wǎng)領(lǐng)域的應(yīng)用研究[J].中國高新科技,2023(2):109-111.

      [2]李鵬.云計(jì)算技術(shù)在基于信任的物聯(lián)網(wǎng)中的應(yīng)用[J].無線互聯(lián)科技,2023(6):103-105.

      [3]曹海平.基于OpenStack的云計(jì)算平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].信息記錄材料,2023(4):237-239.

      [4]尹譽(yù)衡.OpenStack Keystone認(rèn)證機(jī)制研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2021(2):122-126.

      [5]BRUNEO D,DISTEFANO S.Stack4Things as a fog computing platform for smart city applications:2016 IEEE conference on computer communications workshops [C].New York:IEEE, 2016.

      猜你喜歡
      開發(fā)板云端實(shí)例
      云端之城
      美人如畫隔云端
      Microchip最新推出兩款PIC32 Curiosity開發(fā)板
      行走在云端
      初中生(2017年3期)2017-02-21 09:17:43
      云端創(chuàng)意
      淺析單片機(jī)開發(fā)板的設(shè)計(jì)與制作
      電子制作(2017年22期)2017-02-02 07:10:14
      完形填空Ⅱ
      完形填空Ⅰ
      Mouser為您呈上開發(fā)關(guān)鍵之STMicroelectronics Nucleo開發(fā)板
      Arduino和Atmel發(fā)布Arduino Zero開發(fā)板
      五台县| 天柱县| 镇坪县| 南宁市| 湘潭县| 南投市| 锡林浩特市| 庆城县| 横峰县| 周宁县| 防城港市| 凤山市| 达孜县| 卓资县| 盖州市| 林甸县| 维西| 汾阳市| 台南县| 清新县| 潢川县| 弋阳县| 印江| 大兴区| 白水县| 莫力| 体育| 万山特区| 阿坝县| 沙坪坝区| 崇左市| 政和县| 读书| 项城市| 榆中县| 罗甸县| 长治市| 合川市| 壤塘县| 波密县| 京山县|