问问大家现在都在用什么软件做虚拟化呀? PVE ,oVirt ,OpenNebula ,Harvest 在企业里用靠谱吗?
]]>[23101:01H[=3h[2][81:01HBdsDxe: lading Boot0001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x4,0x0BdsDxe: starting Boot8001 "UEFI Misc Device" from PciRoot(0x0)/Pci(0x4,0x0)(2I[01;01H-320L;B1HBdsxe: ding Bt03 ndows Bot anager"from 2,GPT,8B0E56B-28(-489C-83F-6AF437393(,0xFA0,0x3180)/EFIVKCr0S0Ft BotibotmgfwiefiBdsxe: starting Bot8003 "Windows Bot Manage" from MD2,PT,6B0E5B-62B(-4BC-883F-4F4B337393C,0xF400,0x31800)/EFIVMicro0ft Bootibootmgfw.fi
]]>说到 StarlingX,要先说两个公司,( Intel )英特尔和 WindRiver (风河)。英特尔我们都知道是美国一家主要以研制 CPU 处理器的公司,是全球最大的个人计算机零件和 CPU 制造商,它成立于 1968 年,具有 50 年产品创新和市场领导的历史。那么风河是家什么样的公司呢?
风河 风河是智能互联系统软件的全球领导者,提供全面的边缘到云软件产品套件,旨在帮助各关键基础设施公司应对系统发展和现代化过程中面临的挑战和机遇,最大限度地实现物联网的价值。和苹果、谷歌一样,风河也是在车库起家。
1981 年劳伦斯伯克利国家实验室前研究员 JerryFiddler 在加利福尼亚州伯克利市的一个车库里创建了风河公司。1987 年风河推出了 VxWorks,是首个具有跨计算机网络通信能力的实时操作系统( RTOS ),VxWorks 也是目前应用最广泛的 RTOS (实时操作系统),VxWorks 平台用途广泛,支持美国国家航空航天局( NASA )的好奇号漫游车、网络设备、工厂机器人及其他许多类型的工业设备。VxWorks 还用在与消费者接触的硬件(比如医疗设备)中。2009 年,风河被英特尔收购,2018 年 4 月英特尔又把风河卖给了 TPGCapitalLP。
Titanium Cloud 2014 年 6 月,风河公司针对 WindRiver Carrier Grade Communications Server 成立了 TitaniumCloud 生态系统项目。设计目标就是要成为电信网络应用软件理想的云操作系统平台,以最高的可靠性地运行网络虚拟化功能。通过本项目,风河将与其合作伙伴针对 NFV (Network Functions Virtualization,网络功能虚拟化)基础设施部署提供经过优化且可互操作的硬件和软件解决方案,以加快服务提供商以及 TEM (Telecom Equipment Manufacturers,电信设备制造商) 产品上市步伐。
正如项目名称 Titanium 所示,风河合作伙伴生态系统将围绕电信级通信服务器(Carrier Grade Communications Server)平台建立功能强大的解决方案阵容。通过与风河公司的电信行业专家密切合作,Titanium Cloud 项目合作伙伴将对其现有标准产品进行优化,以便更加充分利用 Wind River 平台的全部功能。
电信级通信服务器是一组集成化、支持 NFV 基础设施达到电信网络所要求的运营商级高可靠性软件。传统电信网络的可靠性都已达到 6 个 9 的级别(99.9999%)或换算为一年 30 秒停机时间,而基于 IT 应用的企业级软件平台的可靠性则通常仅为 3 个 9(99.9%),也就是每年约有 9 个小时的停机时间,这会造成严重的成本和收入损失。电信级通信服务器是唯一能够让服务提供商向虚拟化基础设施过渡后仍能达到保持 6 个 9 级别的高可靠性商用级网络功能虚拟化服务器解决方案,并保持能够满足“永不停机”的要求。
除此之外,通过加速虚拟网络功能(VNF,Virtual Network Functions)的性能,提供简化的虚拟网络功能安装、管理和维护步骤的功能,电信级通信服务器支持客户在网络中逐步部署虚拟网络功能时,最大程度地降低资本支出 (CAPEX)和运营支出 (OPEX) 。
风河 Titanium Cloud 最初构建在 OpenStack 等开源组件上, 然后对其进行扩展和加固, 以满足关键的基础设施需求, 包括: 高可用性、故障管理和性能管理,可用于 NFV 电信云、边缘云、工业物联网等场景。
StarlingX 今天说的 StarlingX 项目就是基于 WindRiver 的产品 Titanimu Cloud R5 版本基础上修改而来。2018 年 5 月, Intel 和风河宣布将其电信云 /边缘云的商业产品 TitaniumCloud 中的部分组件开源, 命名为 StarlingX, 并提交给 OpenStack Foundation 管理。
2018 年 10 月,OpenStack 社区发布了 StarlingX 首个版本,最初的 starlingX 主要是通过 6 大组件,来完成对 Openstack 的安装部署,监控管理等。
服务管理( Service Management )—— stx-ha
从名字可以看出,就是用来做系统可靠性性的简称( SM )。
1.SM 对 kenrel 中的进程调度进行扩展,增加了信号量,从而可以第一时间获取到监控的进程死亡的信号,从而触发进程重新拉起的工作。
2.SM 复用了 pacemaker 中 ocf 脚本,可以用它来做服务的拉起。这里主要是对 floating IP,nfs 等资源的监控
3.SM 也使用了 init.d 的脚本,来对 openstack 以及其他组件的服务进行拉起动作。
因此,在 StarlingX 平台上启动 /停止相关服务,要使用 sm-restart/sm-unmanager 等命令来进行。
故障管理( Fault Managerment )—— stx-fault
该模块就是用来做事件告警收集的模块,简称( FM )
其他模块通过 fm-api 来直接发送告警或者事件信息给 fm-manager
软件管理( Software Managerment )—— stx-update
该模块主要提供了在 StarlingX,如何制作 patch 的工具,同时也有 patch 的服务,用来管理升级 /降级等功能。
基础管理( Bare Metal Managerment )—— stx-metal
该模块是 StarlingX 中比较重要的一部分。整个平台的有机结合都是靠它。
该工程是从 WindRiver 自己的 MTCE 平台开源而来。
提供了 rmon 对资源进行监控,比如 cpu/memory 等。
提供了 pmon 对进程进性监控。这个模块的监控和 sm 是有区别的。SM 主要管理 Openstack 整个服务及相关资源。pmon 只管理基础进程,比如 ssh 等等。
值得一提的是,在 StarlingX 中的计算节点是不安装 SM 服务的,所以 nova-compute 等服务,也是由 pmon 来监控。
hbs 服务,对整个平台提供了心跳检测服务。
hwmond 服务,提供了对服务器 BMC 的服务。
Mtc 服务,总管 MTCE 平台其他服务模块,对外提供接口。
平台调度( Platform Orchestration )—— stx-nfv
从名字来看就可以看到,这个模块是在 NFV 场景下来丰富 openstack 功能的组件。
提供了 nova-api-proxy 的模块,直接监听了 nova 的 8774 端口来拦截 nova 的请求,然后将一些需要处理的请求发送给 VIM 模块。其他透传给 nova。
Nfv-vim 模块,用来做一些 NFV 场景下逻辑处理功能,例如 VM 的 HA 功能。
Guest-server 模块。这个模块用来提供了一套 api 及机制,通过在虚拟机中安装 agent,达到从平台侧获取虚拟机心跳等功能。
配置管理( Configuration Managerment )—— stx-config
该模块用来对 StarlingX 中的组件以及 openstack 服务进行安装配置的。
2.Controllerconfig/computeconfig 等提供了根据角色来进行配置的设置。
每一次启动时候这类服务都会重新执行。来保证系统在重启后能恢复到正常配置。
StarlingX 安装方法 以 Ubuntu 16.04 LTS 64-bit 为例:
( 1 ) 更新操作系统 1. #sudo apt-get update
( 2 )安装 stx-tools 工具项目 1. #cd $home2. #git clone git://git.openstack.org/openstack/stx-tools
( 3 )安装依赖包 1. #cd $HOME/stx-tools/deployment/libvirt/2. #bash install_packages.sh
( 4 )制作 StarlingX 的 ISO 镜像可参考 https://wiki.openstack.org/wiki/StarlingX/Developer_Guide 进行镜像制作。注意:· 下载依赖包时, 由于众所周知的原因, 国内访问有问题, 所以最好设置 http 代理下载, 或者使用国外虚拟机上进行镜像制作。· 通过源码编译、打包成 RPM 包, 这个过程很长, 笔者的虚拟机上跑了约 12 个小时, 请耐心等待· 编译各 RPM 源代码时使用了 linux 的 mock 隔离环境, 其 log 位置在 /localdisk/loadbuild/user/starlingx/std/results/user-starlingx-tis-r5-pike-std/XXX 包名 /build.log· 如果碰到报错:ERROR:Command failed: 09:08:15 # mount -n -t tmpfs -o mode=0755 -onr_inodes=0 -o size=5g mock_chroot_tmpfs/localdisk/loadbuild/user/starlingx/std/mock/b1/root 可以尝试修改:/usr/lib/python2.7/site-packages/mockbuild/plugins/tmpfs.pyself.optArgs +=['-o', 'nr_inodes=500000]
( 5 )复制镜像到 bootimage.iso1. #cp
( 6 )关闭防火墙 1. #sudo ufw disable2. Firewall stopped and disabled on system startup3. #sudo ufw status4. Status: inactive
( 7 )通过 ISO 镜像启动, 并按照提示进行安装 StarlingX, 详情请参考:https://wiki.openstack.org/wiki/StarlingX/Installation_Guide_Virtual_Environment/Simplex
StarlingX 平台是一个完整、高可靠、可扩展的边缘云软件堆栈,它将新服务与许多其他开源项目结合到一个整体边缘云软件堆栈中,为边缘计算、工业物联网和电信应用构建一个有弹性的边缘云基础设施。StarlingX 不是 OpenStack 子项目。它本身就是一个完整的项目。同时,它使用了许多 OpenStack 服务来提供核心的计算、存储和网络功能。StarlingX 的开源也是响应了 Akraino 项目。
Akraino Edge Stack 是 Linux 基金会旗下的一个项目,它开发了一套开源软件堆栈,支持针对边缘计算系统和应用软件优化的高可用性云服务,18 年 8 月宣布从成立阶段进入到执行阶段。Akraino Edge Stack 旨在为企业边缘、OTT ( Over the Top )边缘和运营商边缘网络改善边缘云基础设施的状况。它将为用户提供新的灵活性,以便快速扩展边缘云服务,最大限度地利用边缘处支持的应用程序和功能,并有助于为必须始终运行的系统确保可靠性。
StarlingX 未来将会朝着容器化方向发展, 将会把 openstack 等组件做在容器中, 并可使用 K8S 来管理。从功能上来看, StarlingX 在系统 HA、性能调优、软件管理、故障监控方面有很好的参考价值, 很适合 OpenStack 开发人员研究。
小彩蛋: StarlingX 的第二个版本将在今年第三季度推出!
参考文献
1.OpenStack StarlingX 组件详解,
作者:开源云中文社区
2.浅谈高性能边缘云软件堆栈 StarlingX,
作者:steve
3.电信云 /边缘云虚拟层软件 StarlingX 介绍,
作者:赵怡
4.开源边缘计算项目:让你真正明白什么是 StarlingX,
作者:肖丁
]]>我想实现业务网络和复制网络的隔离,求配置思路?看了好多文章有点懵了。
]]>官方说在 rocky 版本是作为实验功能引入,
参考后的配置(/etc/glance/glance-api.conf)
[DEFAULT] ... enabled_backends = reliable:file, fast:rbd ... [glance_store] default_backend = reliable [reliable] filesystem_store_datadir = /opt/stack/data/glance/images/ store_description = "Reliable filesystem backend" [fast] store_description = "Fast rbd backend" rbd_store_pool = images rbd_store_user = glance rbd_store_ceph_cOnf= /etc/ceph/ceph.conf rbd_store_chunk_size = 8 rados_connect_timeout = 0 [os_staging] filesystem_store_datadir = /opt/stack/data/glance/os_staging/ store_description = "Filesystem store for staging purpose"
源码内判断后端存储位置的代码(glance/glance/api/v2/image_data.py class ImageDataController)
... ... @utils.mutating def upload(self, req, image_id, data, size): backend = None if CONF.enabled_backends: backend = req.headers.get('x-image-meta-store', CONF.glance_store.default_backend) try: LOG.debug(" = = = = = = backend: %s = = = = = = " % backend) glance_store.get_store_from_store_identifier(backend) LOG.debug("glance_store.backend %s" % glance_store.backend) except glance_store.UnknownScheme as exc: raise webob.exc.HTTPBadRequest(explanation=exc.msg, request=req, content_type='text/plain') image_repo = self.gateway.get_repo(req.context) image = None refresher = None cxt = req.context try: self.policy.enforce(cxt, 'upload_image', {}) image = image_repo.get(image_id) image.status = 'saving' try: if CONF.data_api == 'glance.db.registry.api': # create a trust if backend is registry try: # request user plugin for current token user_plugin = req.environ.get('keystone.token_auth') roles = [] # use roles from request environment because they # are not transformed to lower-case unlike cxt.roles for role_info in req.environ.get( 'keystone.token_info')['token']['roles']: roles.append(role_info['name']) refresher = trust_auth.TokenRefresher(user_plugin, cxt.tenant, roles) except Exception as e: LOG.info(_LI("Unable to create trust: %s " "Use the existing user token."), encodeutils.exception_to_unicode(e)) image_repo.save(image, from_state='queued') image.set_data(data, size, backend=backend) try: image_repo.save(image, from_state='saving') except exception.NotAuthenticated: if refresher is not None: # request a new token to update an image in database cxt.auth_token = refresher.refresh_token() image_repo = self.gateway.get_repo(req.context) image_repo.save(image, from_state='saving') else: raise try: # release resources required for re-auth if refresher is not None: refresher.release_resources() except Exception as e: LOG.info(_LI("Unable to delete trust %(trust)s: %(msg)s"), {"trust": refresher.trust_id, "msg": encodeutils.exception_to_unicode(e)}) ... ...
目前请求头并没有 x-image-meta-store 属性,直接按默认的 reliable 后端配置来
相关日志:
12 月 24 15:59:25 controller devstack@g-api.service[6524]: DEBUG glance.api.v2.image_data [None req-081110c4-8d29-4567-a4fb-bbbc7313efbf alt_demo admin] = = = = = = backend: reliable = = = = = = {{(pid=6527) upload /opt/stack/glance/glance/api/v2/image_data.py:127}} 12 月 24 15:59:25 controller devstack@g-api.service[6524]: DEBUG glance.api.v2.image_data [None req-081110c4-8d29-4567-a4fb-bbbc7313efbf alt_demo admin] glance_store.backend <module 'glance_store.backend' from '/usr/lib/python2.7/site-packages/glance_store/backend.pyc'> {{(pid=6527) upload /opt/stack/glance/glance/api/v2/image_data.py:129}} ...... 12 月 24 15:59:26 controller devstack@g-api.service[6524]: DEBUG glance_store._drivers.filesystem [None req-081110c4-8d29-4567-a4fb-bbbc7313efbf alt_demo admin] Wrote 0 bytes to /opt/stack/data/glance/images/9da337be-bb04-43af-ac1d-b9e5a15a0c70 with checksum d41d8cd98f00b204e9800998ecf8427e and multihash cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e {{(pid=6527) add /usr/lib/python2.7/site-packages/glance_store/_drivers/filesystem.py:728}} 12 月 24 15:59:27 controller devstack@g-api.service[6524]: DEBUG glance_store.multi_backend [None req-081110c4-8d29-4567-a4fb-bbbc7313efbf alt_demo admin] Skipping store.set_acls... not implemented {{(pid=6527) set_acls_for_multi_store /usr/lib/python2.7/site-packages/glance_store/multi_backend.py:439}} ......
在 http 上传缓存目录能找到上传成功的文件,但在从缓存目录写入到 image 目录时,但写入数据就变成了 Wrote 0 bytes
可能是最近比较浮躁
一直跑流程也还是找不到为什么
请求能有大大指点一二
]]>yum install ceph-deploy
ceph-deploy install --release jewel --repo-url http://mirrors.aliyun.com/ceph/rpm-jewel/el7/ --gpg-url http://mirrors.aliyun.com/ceph/keys/release.asc ceph01 ceph02 ceph03...
--release 对应版本
--repo-url 对应版本的镜像源
--gpg-url 对应的 keys
会在节点生成对应的版本镜像 yum 源
但中途失败的重装的时候最好把这个源删掉
不知为何在 devstack 环境创建了 mon 后,一下挂了好几个 devstack 服务
想求个一知半解
Welcome to Installer setup utility Parameter CONFIG_MYSQL_HOST failed validation: Given host does not listen on port 22: 192.168.255.210
ERROR : Failed handling answer file: Given host does not listen on port 22: 192.168.255.210
sshd 端口是 14573 ssh 默认 看了下国内网一些介绍。还是无法解决...求...
]]>视频: https://v.qq.com/iframe/player.html?vid=a0300sz5wvb&width=670&height=502.5&auto=0
物联网( IoT )是云计算领域的“下一个大事件”。物联网意味着所有的事情,它甚至比云计算服务更加具体。物联网以增加机器间通信为中心,它建立在数据采集传感器网络和连接到云计算服务执行器的基础上。
我们来看看如何使用开源项目,来扩展云服务方法进而创建通用的物联网平台,可以处理多个用户案例。我们定义了以下要求:
开源软件 整个平台基于已存在的开源解决方案,我们想要使用的平台包括: 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 来做物联网平台的原型部署,目前我们正在为整个 Smart City 处理细节上的设计。 今年,在 Austin 的 OpenStack 峰会,以及 London 的 KubeCon 上,我们得到了很多反馈。对于处理安全问题,大家觉得我们提供的方法思路是可行的,抵抗属性和性能关系到物联网平台,以及很多技术合作伙伴都想要加入我们,跟我们一起努力,然后拓展我们的物联网平台到他们的解决方案。
(如果需要转载,请联系我们,尊重知识产权人人有责:)
]]> python compress.py compress Traceback (most recent call last): File "compress.py", line 5, in <module> from compressor.cache import (cache_get, cache_set, get_offline_hexdigest, File "/usr/local/lib/python2.7/dist-packages/compressor/cache.py", line 8, in <module> from django.core.cache import caches File "/usr/local/lib/python2.7/dist-packages/django/core/cache/__init__.py", line 34, in <module> if DEFAULT_CACHE_ALIAS not in settings.CACHES: File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 48, in __getattr__ self._setup(name) File "/usr/local/lib/python2.7/dist-packages/django/conf/__init__.py", line 42, in _setup % (desc, ENVIRONMENT_VARIABLE)) django.core.exceptions.ImproperlyConfigured: Requested setting CACHES, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
提示很长,这里只 提取了部分认为有用的
到现在我都还不成功是否安装成功, 各组件还不熟悉,也不知道查看, google 到的大都是英文,把我都看蒙蔽了, 希望各位指点下迷津,告诉我怎么才算安装成功 ,谢谢!
]]>我需要学哪些东西哈?技能树?有现成的轮子么?
我只用 flask 写过简单的 web tool , openstack 开发没有做过,想咨询下大家的一些建议。 Google 了一些没有找到适合的轮子或者学习 dev 的 demo 资料。
多谢:-D 。
]]>