利用开源平台即服务更快地部署作战人员应用

崭露头角的网络初创公司正在使用互联网托管的平台即服务(paas)技术相互跨越式推向市场。paas 允许这些初创公司通过将更多时间集中在他们的使命上,减少管理硬件和软件的时间来快速创新。战士也可以从 paas 中受益吗?是的,如果作战人员控制 paas 堆栈 - 并且开源提供了这种控制。
从历史上看,作战人员应用程序通常是从电源插头到正在运行的应用程序的单体 - 它们通常是为单一目的而设计的,没有考虑重用和互操作性。这些单体的设计差异也阻碍了技术和认证与认可(c&a)重用方面的规模经济。缺乏重用可能会阻止应用程序及时到达作战人员手中,还可能导致成本和进度超支。通过确定可以标准化的通用领域,对这些组件进行一次可重用性认证,并更多地关注剩余的差异,机构可以提高效率并节省定期重新认证应用程序所需的时间。平台即服务 (paas) 是一种解决方案,可以通过缩短时间表和消除供应商锁定来缓解这些挑战。paas 利用跨多个应用程序一致的 it 堆栈,包括从电源插头到硬件、虚拟化、操作系统和应用程序服务器的所有内容。it 堆栈可以认证一次,然后多次重复使用,重新认证工作量要少得多。因此,开发人员可以更专注于他们的应用程序,并更快地将其投入生产,因为它运行在其他人已经严格认证的硬件和软件堆栈上。
图 1 说明了开发人员维护的堆栈与 paas 堆栈之间的区别。请注意开发人员的工作如何在没有 paas 的情况下沿堆栈向下扩散。与其关注应用程序本身,不如花费精力来指定、获取、集成、部署、认证和维护堆栈的所有组件。此外,每个应用程序的开发人员可以为每个组件指定不同的供应商,要求最终客户精通所有组件。这削弱了培训、运营和维护成本以及批量采购方面的规模经济。借助 paas,开发人员可以将更多时间投入到应用程序本身上,同时让 paas 提供商利用规模经济,同时代表开发人员维护和保护基础结构和平台硬件和软件。
图1:开发人员维护的堆栈与 paas 堆栈的比较
专有的paas对作战人员来说是不可能的
然而,paas的一个问题是,大多数互联网托管的paas提供商都是专有的。其中许多 paas 提供商仅支持其专有语言和/或库,这些语言和/或库仅在 internet 上的后端服务器上运行。如果开发人员想要将应用程序移动到另一个 paas 提供商或将应用程序移动到本地服务器,则应用程序移植是必要的。对于可能没有互联网连接的嵌入式和/或分类系统,专有的互联网托管paas不是一种选择。这就是开源paas可以提供解决方案的地方。从上到下开源的 paas 堆栈可以在公共云、分类飞地或战术车辆上运行,并提供相同的体验。为一个部署模型编写的应用程序也可以在所有部署模型上移植。开源 paas 提供传统 paas 的部署效率,平台部署目标选择开源。
图 2 说明了托管 paas 提供程序和本地 paas 解决方案之间的这种差异。这两种产品都允许开发人员专注于他们的应用程序,但只有本地 paas 解决方案才能在最终用户的数据中心、分类飞地、战术车辆、机载或海底平台等中运行。选择 paas 解决方案时,应确保在托管 paas 环境中编写的应用程序可以在本地 paas 环境中运行,几乎无需修改。实现此目的的最佳方法是通过确保 paas 解决方案和应用程序基于开源软件构建来确保最大的可移植性。
图2:托管 paas 与本地 paas 的比较
开源 paas 提供敏捷性和控制力
openshift 是面向应用程序的自动扩展开源 paas,包括托管、本地和社区产品(图 3)。它于 2011 年 5 月首次在开发人员预览版中发布,旨在使用开源原则满足与供应商无关的 paas 需求,并作为上述 paas 概念的一个很好的例子。它运行在红帽企业 linux 之上,每个用户开发的应用程序都作为 linux 容器内的 paas“齿轮”运行。通过使用 linux 容器,而不是为每个应用程序提供自己的虚拟机,可以精简快速地配置应用程序,这是大规模以及小型嵌入式战术部署的理想选择。即使应用程序是多租户的并且运行在相同的 linux 操作系统上,linux 容器也使用称为 cgroups 的 linux 资源控制组以及通用标准认证和 nsa 开发的 selinux 进行限制。
图3:openshift 组件
配置应用程序设备后,开发人员可以选择应用程序框架、语言以及 sql 和 nosql 数据库的预制 paas“盒式”。通过选择这些盒式磁带,开发人员将该代码的维护和安全性留给集中式 paas 管理员。这提供了规模经济,因为 paas 管理员可以将错误或安全修复程序应用于磁带盒一次,并且使用该磁带盒的所有开发人员的应用程序都会立即受益。
一旦盒式磁带就位,开发人员就可以使用 git 或带有兼容 paas 插件的 eclipse ide 将特定于任务的应用程序代码添加到 paas。一旦代码被推入齿轮,它就会启动并运行。部署后,还可以添加 maven 和 jenkins 等 devops 工具,以实现自动化构建和持续集成。当应用程序投入生产时,如果它变得“病毒式”(以一种好的方式),paas 甚至有一个 ha 代理盒,可以根据服务器负载自动启动和降低其他齿轮。通过构建在开源之上,任何为 paas 编写的应用程序都可以在没有它的情况下运行,因此消除了供应商锁定。此外,可以在paas上开发应用程序,然后在没有它的情况下部署,例如在轻量级战术或嵌入式环境中。
paas 是未来
各机构被迫用更少的资源做更多的事情。他们需要确定冗余领域,并在不损害其任务的情况下巩固努力。正如私营部门所证明的那样,paas 提供了快速部署应用程序的能力,它更多地专注于任务,并让 paas 提供商经济地提供一个安全稳定的平台来构建。对于作战人员来说,互联网托管的paas通常是不可能的。应用程序需要在战术和/或分类环境中断开连接运行。同样,开源paas,例如red hat的


推荐系统中候选生成和冷启动挑战的研究
Call for Code已成为全球备受瞩目的最典型‘科技向善’平台
直线电机在数控机床中的应用!
腾讯进军自研芯片市场,研发CPU/AI处理器
ISM RF产品的无线链路预算表
利用开源平台即服务更快地部署作战人员应用
对三种最典型的电调滤波电路进行分析和研究
百度处于搜索引擎这一迄今为止人工智能规模最大的应用场景
11月力帆集团传统乘用车车产量为0辆,或将为吉利代工生产
基于Linux的XADC控制器模块的两种形式配置
鞍山钢铁公司的无线通讯的应用及解决方案
把生活拍成艺术 用华为P10讲故事
魅族Pro7预计5月上市? 全新Air Book笔记本引人注目
涡轮流量计安装时容易出现的问题
西门子全交流变频驱动系统在电厂卸船机上应用及其速度同步与电流
盘点2019年五大未来技术趋势
一文详解外凸与内凸法规
荣耀V9好在哪里?有什么亮点?值不值得买?
西门子plc的crc校验程序
几种常用Reader输入流的使用方式