本篇内容主要讲解“基于Kubernetes和OpenStack的应用案例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“基于Kubernetes和OpenStack的应用案例分析”吧!开源软件
整个平台基于已存在的开源解决方案,我们想要使用的平台包括:OpenStack,Kubernetes,Docker,OpenContrail等。HW和独立供应商
没有一家供应商的定位是既包括软件又包括硬件的。物联网网关CPU不是x86/64架构就是ARM架构。我们不想被锁定到用昂贵专用设备的供应商。可互相操作
物联网平台对多种使用情况来说都是普遍可用的。比如,物联网网关也可用在计算对象的路灯,就如同用在智能工厂或者工业4.0应用程序。因此,我们设计了以下高层次的架构,这个架构使用的是开源项目,OpenStack,Kubernetes,OpenContrail和Docker。传感器
任意用来阅读环境数据(温度,湿度,二氧化碳水平),对象,计数等等的传感器。IQRF网络
IQRF是一个操作sub-gigahertz ISM bands的强大无线网格技术。能够很容易地跟传感器整合。网关
在物联网网关,由IQRF协调员来处理从传感器传来的数据。这些可以是任意的x86/64或者ARM架构,这些基于Docker,Kubernetes,OpenContrail vRouter和Debian,从预构建镜像方面来运行系统。网络
网关可通过任意网络连接(GSM/LTE/WiFi),因为SDN在Docker service和数据中心之间创建了动态L3VPN。数据中心
数据中心包括了OpenStack和Kubernetes控制面板。这两个编排解决方法都使用OpenContrail作为单个SDN(软件定义网络)。这就可以从中心点管理整个平台。我们可以在本地远程开启任意Docker容器,然后创建动态连接到OpenStack上的service。OpenStack云容器数据存储和大数据进程services。虚拟化/API 访问
所有数据在网络端口已经被虚拟化,而且可以通过REST API service访问。下面,让我们来看两个案例。第一个案例是捷克共和国Pisek城市的SmartCity项目。SmartCity概念和架构将会部署超过3000个端点,大约300个物联网网关,这些网关以高可用模式运行在由Kubernetes驱动的容器中。解决方案的一部分是开放数据门户,数据API对提供信息的第三方公司来说可用:交通,路径,停车监测,管理,节能电子商务,市场,旅游信息环境分析生活方式,社会服务,社交网络目标解决方案使用基于树莓派2的物联网网关作为物联网网关服务。网关的数据被存储在Graphite,由自定义的数据挖掘应用程序进行处理,结果已经被展示到基于LeonardoCMS的城市公民门户,这是一种允许混合复杂的可视化与任意内容的网页服务。这个开放数据门户使得数据能够通过可视化仪表或者API访问。以下屏幕用特定时期内的车辆和行人展示了简单的从十字路口Kollarova X Zizkova输出。为了证明我们的物联网平台在应用程序环境独立,我们从智能城市项目采取了一个物联网网关,然后和基于IQRF网状网络连接传感器(测量湿度,温度和二氧化碳水平)一起在OpenStack峰会上放入Austin会展中心。这说明了物联网网关管理和收集信息的能力,它可以从任意像IQRF,Bluetooth,GPIO之类的基于Linux平台通信技术获得信息。我们用单个、主动的物联网网关在3楼会议部署了20个传感器和20个路由器,从整个IQRF网状网络接收数据并传送到专门的时间序列数据库,在这个例子里是Graphite。收集器是运行在由Kubernetes管理的Docker容器MQQT-Java桥。最有趣的就是运行在树莓派上的Docker容器,和运行在Europe数据中心的虚拟机。OpenContrail SDN提供动态网络覆盖tunnels。以下图片展示了单个无线IQRF网状网络传感器和路由器发现。IQRF是一个在sub-gigahertz频带上操作的无线网状网络技术。它提供非常简单的整合,产品互操作性,最大值240 hops的健壮网状网络,范围多达数百米,以及超低功率操作。以下截屏从2楼不同的房间展示了各个时间下的CO2值。历史图表展示的是周一的情况。从收集的Austin数据来看,以下图覆盖了services。所谓“物联网平台”,是用一般视角创建的,这个视角基于收集,管理和安全、动态处理成千上万的端点来集中管理。因此,架构会分成两个主要的部分:1数据中心数据中心是整个物联网平台管理的重点。OpenStack IaaS云和虚拟机一起运行在SDN控制面板上。这些机器包括时间序列存储,处理数据集群,数据API代理服务,虚拟化网页服务等。2网关物联网网关位于像路灯,工业设备,家用电器之类的目标地方。SDN提供传输层用云服务来连接远程物联网网关。网关可以是多平台的,有可能的话,可以将x86/64和ARM设备混合到一起。在单个网关为多个客户处理多个传感器平台,由于微服务分割(Docker容器)和Kubernetes 多租户支持。这个平台可以提供可伸缩的多租户空间。
以下图表展示了在网关方面的数据中心层和组件。这个章节的细节展示了更多信息。细节图表细节图表提供了整个物联网平台在本地的架构视图。左边展示的是数据中心,右边展示的是之前提到的网关。就如同你在下面看到的那样,OpenStack被用作云来处理所有的control service,以及大数据处理,和之前提到的虚拟单元。在网关的Kubernetes被用于services的微分段,这对多租户和不同传感器间的安全来说十分有必要。OpenContrail被用来连接这两边,并且提供Kubernetes PODs和OpenStack 项目虚拟机间的网络分段。像上文提到的,SDN覆盖已经完成了分割。重要的是只有数据中心边界路由器和物联网网关之间的IP连接。最底层是网关OS和数据中心边界路由器之间的VPN,在这里OpenContrail可以直接在虚拟机(OpenStack云)和容器(网关)间交流。这个方法允许从不同的传感器和执行器选择,给予他们特权,并且安全地连接处理应用程序内部的云。数据中心包括以下services:管理services
HW集群用所有的control service来运行虚拟机:OpenStack controller,OpenContrail controller(SDN),Kubernetes master,SaltMaster。OpenStack云
OpenStack项目为不同的虚拟机提供分段,虚拟机包括数据库(graphite,influxdb,openTSDB),大数据处理(Hadoop),数据虚拟化(Grafana,LeonardoCMS)。它运行在KVM超管理器上,并且为网络使用OpenContrail neutron插件。边界路由器
OpenContrail创建iBGP,iBGP与数据中心边界路由器对等,在边界路由器上,从OpenStack虚拟机和物联网网关上的Kubernetes pods可以传播动态网络路由。它创建了标准的L3VPN,MPLSoverGRE或者MPLSoverUDP。远程网关包括的组件:Kubernetes Minion
Kubernetes minion与Kubernetes master在数据中心进行交流,并且通过kubelet管理PODs。Kubelet使用opencontrail插件,这个插件可以用vRouter代理连接Docker容器。Kubernetes PODs
Kubernetes PODs连接到vRouter的单个或者多个容器组。PODs由标签进行分类。这就可以开启不同的应用程序,就可以从像IQRF,Bluetooth或者GPIO这样的消息总线开发云主机域名读取。Docker容器
Kubernetes PODs中的Docker容器带来无须任何特殊装置就可以轻松操作系统的巨大好处。比如IQRF用特定版本来使用简单的Java应用程序,这个版本用容器可以在几分钟内进行交付,而且不会导致跟操作系统网关不匹配的状况。下图提供了应用视图的模式。展示了虚拟机内部OpenStack云能够在任意地理位置L2或者L3上联系到Docker容器的状况,这得益于OpenContrail的覆盖。因此,应用程序开发者能够使用相同的工具,就如同他们在标准云中使用的那样。比如,我们从环境传感器收集数据。传感器直接连接到容器,数据在容器中处理,之后发送到Graphite时间序列数据库。因为我们想要生动地实时显示数据,我们用读取GraphiyeAPI接口的Leonardo CMS来使用另一个虚拟机,并在网页上展现数据。根据这个,我们就可以在同一个由多个输入和输出的云中,依据相同的准则来创建不同的项目。到此,相信大家对“基于Kubernetes和OpenStack的应用案例分析”有了更深的了解,不妨来实际操作一番吧!这里是开发云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
相关推荐: 如何理解Kubernetes架构的Node节点
本篇文章为大家展示了如何理解Kubernetes架构的Node节点,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Node 是 Pod 运行的地方,Kubernetes 支持 Docker、rkt 等容器 Runtime…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。