溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

基于Kubernetes和OpenStack的應(yīng)用案例分析

發(fā)布時間:2021-12-17 10:33:57 來源:億速云 閱讀:138 作者:iii 欄目:云計算

本篇內(nèi)容主要講解“基于Kubernetes和OpenStack的應(yīng)用案例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“基于Kubernetes和OpenStack的應(yīng)用案例分析”吧!

開源軟件
整個平臺基于已存在的開源解決方案,我們想要使用的平臺包括:OpenStack,Kubernetes,Docker,OpenContrail等。

HW和獨立供應(yīng)商
沒有一家供應(yīng)商的定位是既包括軟件又包括硬件的。物聯(lián)網(wǎng)網(wǎng)關(guān)CPU不是x86/64架構(gòu)就是ARM架構(gòu)。我們不想被鎖定到用昂貴專用設(shè)備的供應(yīng)商。

可互相操作
物聯(lián)網(wǎng)平臺對多種使用情況來說都是普遍可用的。比如,物聯(lián)網(wǎng)網(wǎng)關(guān)也可用在計算對象的路燈,就如同用在智能工廠或者工業(yè)4.0應(yīng)用程序。因此,我們設(shè)計了以下高層次的架構(gòu),這個架構(gòu)使用的是開源項目,OpenStack,Kubernetes,OpenContrail和Docker。

基于Kubernetes和OpenStack的應(yīng)用案例分析

傳感器
任意用來閱讀環(huán)境數(shù)據(jù)(溫度,濕度,二氧化碳水平),對象,計數(shù)等等的傳感器。

IQRF網(wǎng)絡(luò)
IQRF是一個操作sub-gigahertz ISM bands的強(qiáng)大無線網(wǎng)格技術(shù)。能夠很容易地跟傳感器整合。

網(wǎng)關(guān)
在物聯(lián)網(wǎng)網(wǎng)關(guān),由IQRF協(xié)調(diào)員來處理從傳感器傳來的數(shù)據(jù)。這些可以是任意的x86/64或者ARM架構(gòu),這些基于Docker,Kubernetes,OpenContrail vRouter和Debian,從預(yù)構(gòu)建鏡像方面來運行系統(tǒng)。

網(wǎng)絡(luò)
網(wǎng)關(guān)可通過任意網(wǎng)絡(luò)連接(GSM/LTE/WiFi),因為SDN在Docker service和數(shù)據(jù)中心之間創(chuàng)建了動態(tài)L3VPN。

數(shù)據(jù)中心
數(shù)據(jù)中心包括了OpenStack和Kubernetes控制面板。這兩個編排解決方法都使用OpenContrail作為單個SDN(軟件定義網(wǎng)絡(luò))。這就可以從中心點管理整個平臺。我們可以在本地遠(yuǎn)程開啟任意Docker容器,然后創(chuàng)建動態(tài)連接到OpenStack上的service。OpenStack云容器數(shù)據(jù)存儲和大數(shù)據(jù)進(jìn)程services。

虛擬化/API 訪問
所有數(shù)據(jù)在網(wǎng)絡(luò)端口已經(jīng)被虛擬化,而且可以通過REST API service訪問。

下面,讓我們來看兩個案例。

案例1: 智能城市Smart City

第一個案例是捷克共和國Pisek城市的SmartCity項目。SmartCity概念和架構(gòu)將會部署超過3000個端點,大約300個物聯(lián)網(wǎng)網(wǎng)關(guān),這些網(wǎng)關(guān)以高可用模式運行在由Kubernetes驅(qū)動的容器中。解決方案的一部分是開放數(shù)據(jù)門戶,數(shù)據(jù)API對提供信息的第三方公司來說可用:

  • 交通,路徑,停車

  • 監(jiān)測,管理,節(jié)能

  • 電子商務(wù),市場,旅游信息

  • 環(huán)境分析

  • 生活方式,社會服務(wù),社交網(wǎng)絡(luò)

基于Kubernetes和OpenStack的應(yīng)用案例分析

目標(biāo)解決方案使用基于樹莓派2的物聯(lián)網(wǎng)網(wǎng)關(guān)作為物聯(lián)網(wǎng)網(wǎng)關(guān)服務(wù)。網(wǎng)關(guān)的數(shù)據(jù)被存儲在Graphite,由自定義的數(shù)據(jù)挖掘應(yīng)用程序進(jìn)行處理,結(jié)果已經(jīng)被展示到基于LeonardoCMS的城市公民門戶,這是一種允許混合復(fù)雜的可視化與任意內(nèi)容的網(wǎng)頁服務(wù)。這個開放數(shù)據(jù)門戶使得數(shù)據(jù)能夠通過可視化儀表或者API訪問。

以下屏幕用特定時期內(nèi)的車輛和行人展示了簡單的從十字路口Kollarova X Zizkova輸出。

基于Kubernetes和OpenStack的應(yīng)用案例分析

案例2: 在Austin OpenStack峰會上的智能會議

為了證明我們的物聯(lián)網(wǎng)平臺在應(yīng)用程序環(huán)境獨立,我們從智能城市項目采取了一個物聯(lián)網(wǎng)網(wǎng)關(guān),然后和基于IQRF網(wǎng)狀網(wǎng)絡(luò)連接傳感器(測量濕度,溫度和二氧化碳水平)一起在OpenStack峰會上放入Austin會展中心。這說明了物聯(lián)網(wǎng)網(wǎng)關(guān)管理和收集信息的能力,它可以從任意像IQRF,Bluetooth,GPIO之類的基于Linux平臺通信技術(shù)獲得信息。

我們用單個、主動的物聯(lián)網(wǎng)網(wǎng)關(guān)在3樓會議部署了20個傳感器和20個路由器,從整個IQRF網(wǎng)狀網(wǎng)絡(luò)接收數(shù)據(jù)并傳送到專門的時間序列數(shù)據(jù)庫,在這個例子里是Graphite。收集器是運行在由Kubernetes管理的Docker容器MQQT-Java橋。最有趣的就是運行在樹莓派上的Docker容器,和運行在Europe數(shù)據(jù)中心的虛擬機(jī)。OpenContrail SDN提供動態(tài)網(wǎng)絡(luò)覆蓋tunnels。

基于Kubernetes和OpenStack的應(yīng)用案例分析

以下圖片展示了單個無線IQRF網(wǎng)狀網(wǎng)絡(luò)傳感器和路由器發(fā)現(xiàn)。

基于Kubernetes和OpenStack的應(yīng)用案例分析

IQRF是一個在sub-gigahertz頻帶上操作的無線網(wǎng)狀網(wǎng)絡(luò)技術(shù)。它提供非常簡單的整合,產(chǎn)品互操作性,最大值240 hops的健壯網(wǎng)狀網(wǎng)絡(luò),范圍多達(dá)數(shù)百米,以及超低功率操作。

以下截屏從2樓不同的房間展示了各個時間下的CO2值。歷史圖表展示的是周一的情況。

基于Kubernetes和OpenStack的應(yīng)用案例分析

從收集的Austin數(shù)據(jù)來看,以下圖覆蓋了services。

基于Kubernetes和OpenStack的應(yīng)用案例分析

技術(shù)總覽

所謂“物聯(lián)網(wǎng)平臺”,是用一般視角創(chuàng)建的,這個視角基于收集,管理和安全、動態(tài)處理成千上萬的端點來集中管理。因此,架構(gòu)會分成兩個主要的部分:

數(shù)據(jù)中心

數(shù)據(jù)中心是整個物聯(lián)網(wǎng)平臺管理的重點。OpenStack IaaS云和虛擬機(jī)一起運行在SDN控制面板上。這些機(jī)器包括時間序列存儲,處理數(shù)據(jù)集群,數(shù)據(jù)API代理服務(wù),虛擬化網(wǎng)頁服務(wù)等。

網(wǎng)關(guān)

物聯(lián)網(wǎng)網(wǎng)關(guān)位于像路燈,工業(yè)設(shè)備,家用電器之類的目標(biāo)地方。SDN提供傳輸層用云服務(wù)來連接遠(yuǎn)程物聯(lián)網(wǎng)網(wǎng)關(guān)。網(wǎng)關(guān)可以是多平臺的,有可能的話,可以將x86/64和ARM設(shè)備混合到一起。在單個網(wǎng)關(guān)為多個客戶處理多個傳感器平臺,由于微服務(wù)分割(Docker容器)和Kubernetes 多租戶支持。這個平臺可以提供可伸縮的多租戶空間。
以下圖表展示了在網(wǎng)關(guān)方面的數(shù)據(jù)中心層和組件。這個章節(jié)的細(xì)節(jié)展示了更多信息。

基于Kubernetes和OpenStack的應(yīng)用案例分析

細(xì)節(jié)圖表

細(xì)節(jié)圖表提供了整個物聯(lián)網(wǎng)平臺在本地的架構(gòu)視圖。左邊展示的是數(shù)據(jù)中心,右邊展示的是之前提到的網(wǎng)關(guān)。

就如同你在下面看到的那樣,OpenStack被用作云來處理所有的control service,以及大數(shù)據(jù)處理,和之前提到的虛擬單元。在網(wǎng)關(guān)的Kubernetes被用于services的微分段,這對多租戶和不同傳感器間的安全來說十分有必要。

OpenContrail被用來連接這兩邊,并且提供Kubernetes PODs和OpenStack 項目虛擬機(jī)間的網(wǎng)絡(luò)分段。

基于Kubernetes和OpenStack的應(yīng)用案例分析

像上文提到的,SDN覆蓋已經(jīng)完成了分割。重要的是只有數(shù)據(jù)中心邊界路由器和物聯(lián)網(wǎng)網(wǎng)關(guān)之間的IP連接。最底層是網(wǎng)關(guān)OS和數(shù)據(jù)中心邊界路由器之間的VPN,在這里OpenContrail可以直接在虛擬機(jī)(OpenStack云)和容器(網(wǎng)關(guān))間交流。這個方法允許從不同的傳感器和執(zhí)行器選擇,給予他們特權(quán),并且安全地連接處理應(yīng)用程序內(nèi)部的云。

數(shù)據(jù)中心包括以下services:

管理services
HW集群用所有的control service來運行虛擬機(jī):OpenStack controller,OpenContrail controller(SDN),Kubernetes master,SaltMaster。

OpenStack云
OpenStack項目為不同的虛擬機(jī)提供分段,虛擬機(jī)包括數(shù)據(jù)庫(graphite,influxdb,openTSDB),大數(shù)據(jù)處理(Hadoop),數(shù)據(jù)虛擬化(Grafana,LeonardoCMS)。它運行在KVM超管理器上,并且為網(wǎng)絡(luò)使用OpenContrail neutron插件。

邊界路由器
OpenContrail創(chuàng)建iBGP,iBGP與數(shù)據(jù)中心邊界路由器對等,在邊界路由器上,從OpenStack虛擬機(jī)和物聯(lián)網(wǎng)網(wǎng)關(guān)上的Kubernetes pods可以傳播動態(tài)網(wǎng)絡(luò)路由。它創(chuàng)建了標(biāo)準(zhǔn)的L3VPN,MPLSoverGRE或者M(jìn)PLSoverUDP。

遠(yuǎn)程網(wǎng)關(guān)包括的組件:

Kubernetes Minion
Kubernetes minion與Kubernetes master在數(shù)據(jù)中心進(jìn)行交流,并且通過kubelet管理PODs。Kubelet使用opencontrail插件,這個插件可以用vRouter代理連接Docker容器。

Kubernetes PODs
Kubernetes PODs連接到vRouter的單個或者多個容器組。PODs由標(biāo)簽進(jìn)行分類。這就可以開啟不同的應(yīng)用程序,就可以從像IQRF,Bluetooth或者GPIO這樣的消息總線讀取。

Docker容器
Kubernetes PODs中的Docker容器帶來無須任何特殊裝置就可以輕松操作系統(tǒng)的巨大好處。比如IQRF用特定版本來使用簡單的Java應(yīng)用程序,這個版本用容器可以在幾分鐘內(nèi)進(jìn)行交付,而且不會導(dǎo)致跟操作系統(tǒng)網(wǎng)關(guān)不匹配的狀況。

應(yīng)用視圖

下圖提供了應(yīng)用視圖的模式。展示了虛擬機(jī)內(nèi)部OpenStack云能夠在任意地理位置L2或者L3上聯(lián)系到Docker容器的狀況,這得益于OpenContrail的覆蓋。因此,應(yīng)用程序開發(fā)者能夠使用相同的工具,就如同他們在標(biāo)準(zhǔn)云中使用的那樣。

基于Kubernetes和OpenStack的應(yīng)用案例分析

比如,我們從環(huán)境傳感器收集數(shù)據(jù)。傳感器直接連接到容器,數(shù)據(jù)在容器中處理,之后發(fā)送到Graphite時間序列數(shù)據(jù)庫。因為我們想要生動地實時顯示數(shù)據(jù),我們用讀取GraphiyeAPI接口的Leonardo CMS來使用另一個虛擬機(jī),并在網(wǎng)頁上展現(xiàn)數(shù)據(jù)。根據(jù)這個,我們就可以在同一個由多個輸入和輸出的云中,依據(jù)相同的準(zhǔn)則來創(chuàng)建不同的項目。

到此,相信大家對“基于Kubernetes和OpenStack的應(yīng)用案例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI