IBM杰出工程师:基于开源技术打造云计算技术堆栈

2023-11-23 09:58

本文主要是介绍IBM杰出工程师:基于开源技术打造云计算技术堆栈,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开源技术在当前云计算领域的潜力令人欣喜,同时开源云系统的选择、搭建、部署、配置和应用也吞噬着技术人员的精力。日前,IBM杰出工程师、IBM中国开发中心开放软件与开放标准新技术工程院副院长田忠博士接受CSDN记者专访,基于IBM的实践介绍了云计算领域值得关注的开源技术,以及IBM对开放云计算技术的利用和规划。

田忠认为,基于开放治理、公平贡献的开源技术构建IT体系最符合云计算时代应用开发和迭代的需求。他目前的兴趣主要在OpenStack、CloudFoundry、Mesos、Kubernetes、Node.js,以及IBM最近开源的事件驱动编程模式OpenWhisk。但IBM会不断观察新的技术,及时将符合技术和业务需求的新兴开源项目引入自己的开放技术体系,打造开放的生态系统和成熟的云计算服务,通过其PaaS平台Bluemix以公共云、专属云、本地云和混合云等多种方式灵活地提供给企业开发人员。

开源与开放标准

开放标准是田忠目前的主要工作。开放标准有几个不同的回路, 随着技术的发展,标准也有新的变化。从最初面向纸张的标准,到现在迎合技术的快速发展到面向代码信息的标准,成为了新的潮流。以开源社区为代表的标准,在过去历史上有很多成功的例子,OpenStack就是一个典型的例子。IBM希望通过开源技术体系,帮助中国的机构建立一套的SOA标准体系,也帮助中国在国际大社区中发出自己的强音。

标准需要得到验证,只有落实到代码才有实际意义,只有满足实际应用需求才能成为持久的标准。对于今天云计算、互联网的世界,如果还是以委员会制度来制定标准——这往往需要经过旷日持久的折中,每一个标准到开始讨论到形成稳定的版本,一般要花两到三年的时间——这显然不符合代码迭代周期的需求。相反,建立基于开源的标准,因为开放、平等,它需要经过整个社区共同的决定,更加容易快速形成稳定的结果,经过验证成为事实标准。

开源的另外一个好处,就是为政企机构解决供应商锁定的问题,以及大量技术资源缺失的问题。因为开源在互联互通操作方面更加便利,例如,相对其他IaaS技术,OpenStack的一些实践在互联互通操作方面已经有了相对更好的开端。

所以,IBM希望融入开源生态系统,将更多的开源技术进入到IBM整个的开放标准体系中来。事实上,国内外的大中型企业以及初创公司也已经越来越多地加入到壮大开源社区、完善开源生态的工作中来。而中国政府开始大规模将基于开源技术的解决方案引入到整个平台重架构之中,也让田忠感到兴奋。

IBM关注的开源技术

作为一家云计算技术服务商,IBM在IaaS、PaaS和SaaS层都投入研发力量。IBM从IaaS、PaaS、SaaS不同层面都围绕着开源和开放标准建立的基础平台体系,不仅仅是生态系统。

在IaaS层,IBM在OpenStack社区的大力投入并不是秘密,例如,供职于IBM的滕启明博士在M版周期现在commit数量是全球第三。田忠认为,像OpenStack、OpenDaylight等不同的开源和开放的平台,实际上建立了一种以开源技术为先导、以实际的可运行代码为基础的开发模式,并且这个模式进入一个非常蓬勃的时代。

PaaS层,CloudFoundry是IBM的重头戏,其PaaS层提供的Bluemix开放云平台就是基于CloudFoundry构建的。与此同时,对于Mesos、Kubernetes和Node.js等开源平台技术,IBM也都在做大量的投入。

田忠强调,IBM在开源社区的这些投入需要保证“开源和开源是不一样的”。根据他的解释,IBM建立了一种开放的治理模式,需要坚持一些公平的原则,包括公平的贡献,基于贡献的开放平台,无论是谁都可以有资格有权利参加开源的社区,都有平等的权利获得大家共同建设的结果。也就是说,通过一个社区共同做决定使得整个技术和业务的方向符合绝大多数人的需求。基于这种模式,可以保护大家对开源的投资、投入,也保证了大家可以平等地享受好处。但不是每个开源项目都是这样子,那些采用其他模式的项目,很容易会出现这样或那样的问题。

而对于SaaS层面,IBM也会有一个开放API的计划,保证能够有一个统一开放的方式描述大家所使用的API,使API能够以很好的方式进行管理,能够保证API很容易被使用。

围绕IaaS、PaaS和SaaS整个的架构体系都有投入,大家建立自己开源的生态,这样就能够形成所谓的生态系统。田忠认为,OpenStack、CloudFoundry这些成功项目的发展,印证了IBM在很多年谈到开放的构思。

从Bluemix看开源技术的实践

基于开源技术,IBM在PaaS层构建了开放的Bluemix云平台,以及该平台上的服务。田忠认为,Bluemix有两个层面。

  1. Bluemix一个是开发和运维的平台,在这个平台上,IBM支持各种各样的语言、编程模型,通过不同的机制,将编程、部署、实施、DevOps各方面的能力提供给研发团队和运维团队。大部分的能力都是IBM通过CloudFoundry社区直接做出来,在第一时间把它集成到Bluemix的市场环境当中去。
  2. Bluemix也是API经济的承载者,通过在上面越来越多的部署和接入更多的服务。如IBM自身的认知计算、IoT、智慧城市等能力,都通过API服务的形式体现在Bluemix平台上,无论是IBM还是IBM合作伙伴都可以通过上面的服务接入到客户环境下去工作。

尽管DevOps谈得多,API经济载体谈得少,但二者是Bluemix的一体两面。不同的服务在Bluemix平台上也分为三种不同的模式;

  1. 公共云。通过IBM分布在全球的数据中心资源,公共可以使用Bluemix。
  2. 专属云。通过专属服务很大程度上可以解决客户对于安全、隐私等方面的顾虑。虽然专属服务运行在公共数据中心资源上,但是数据中心中的这一片区域是专属的,在物理上、逻辑上和其他的客户使用的资源都是分离的。
  3. 本地云。一些对安全等级要求更高的客户,需要超级私密的空间,他们可以在自己公司的防火墙内建立一个Bluemix实例。

由于IBM的Hypervisor技术,用户可以有一个混合云的方式,在三种层面之间建立自己的云计算技术堆栈。这取决于客户的经济实力、安全需求以及对业务的种种考虑。

CloudFoundry与Docker

容器是PaaS构建的一项核心技术,目前最热门的Docker,在IBM看来,只是容器技术中的一种。Bluemix支持Docker和CloudFoundry两种容器技术共同发展。

  1. Bluemix提供Docker服务,用户可以在Bluemix上获得Docker的支持,包括上传、下载,Docker Registry种种的API都在里面,用户可以有完整的Docker体验,能够以Docker的形式去发布应用。
  2. CloudFoundry也有自己的容器技术,可以使得用户在不同的条件下,无缝地满足对应用的扩展性、灵活性等方面的需要。甚至在OpenStack也有相关的容器技术。这些不同层面都可以在IBM Bluemix上体现出来。

Bluemix在支持Docker部分没有问题,但Docker有Docker的好处,也有它的挑战。选择哪种容器技术,最终取决于客户自己的需求。如果需要很精细的容器,可以选择Docker服务;如果只是需要把应用放在一个平台上运行,CloudFoundry容器是很好的选择。

CloudFoundry的容器技术如何向前发展,这是IBM团队目前的一项重要工作。因为CloudFoundry要提供的是无缝体验,当应用做好时,把所有的都写在里面,希望得到的效果,如同哈利·波特魔法棒一挥事情就发生了。当然,要更多的自动化就要牺牲某些灵活性问题;如果需要灵活性的时候,就意味着自动化方面要自己多承担一些责任。而CloudFoundry社区也一直在努力。

底层使用CloudFoundry还是Kubernetes、Mesos,同样取决于客户对自己的问题的选择,以及技术贡献的选择,能够解决问题的具体技术路线都是可行的。但不同的企业或者开发者群体需求可能不同:

  • 对于想筹划自己平台技术的企业来讲,可能自成一盘菜是最好的,但底层需要自己配置和优化,相对会比较辛苦;
  • 对于很多的企业,如银行、保险公司,以及创业公司,使劲琢磨如何调整和优化Mesos,可能不如直接使用基于CloudFoundry的PaaS去解决具体业务的优化问题,更好地满足需要。

田忠解释说,Bluemix本身自带了Go、Java、Python、Node.js等一整套的东西,并且提供公共、专属和本地三种模式,应用的技术支持和部署方式都能有更灵活的选择。

开源技术的优化

从功能性的角度来讲,Bluemix就是CloudFoundry,CloudFoundry就是Bluemix,Bluemix并没有长期专属的功能是CloudFoundry所没有的。IBM全心投入在Cloud Foundry社区,会把Bluemix搜集到的客户对体验、能力的要求,包括在开放标准的体现,都是在第一时间反馈到社区,通过社区来满足客户的需要。既有IBM自己的程序员去完成编程的工作,也经常有社区中其他的程序员一起合作解决这些问题。

Bluemix专有的层面,首先是有更好的DevOps的体验和支持,不管是跑在OpenStack上还是Softlayer上,基础设施层能够提供更多的保证。从开发者的角度来讲,所追求的是更多自动化,能够更容易地scale up、scale out和scale back,更容易保护隐私和安全。

同时,IBM通过CloudFoundry社区完成了service key、service management等能力,从编程角度来讲,能够很容易地与第三方的服务集成。更丰富第三方服务的能力,包括一些基于专业行业知识的能力,都是通过Bluemix平台提供出来的。

OpenWhisk

IBM最近开源的一个新技术,是一个事件驱动的编程模式。过去的编程大部分都是过程驱动的,如何处理事件驱动需要新的语言、新的处理机制,IBM把相应的Whisk技术完全开源,称为OpenWhisk,项目托管在GitHub上,基于Apache 2许可。OpenWhisk也已经在Bluemix平台上作为一项服务推出,使用Scala实现核心引擎,用Kafka做执行Action时内部消息处理,使用Docker为执行Action的容器,对Node、Swift、Java都提供了原生的支持。OpenWhisk允许开发者专注于应用程序本身的代码,其内置的扩展与冗余能力,让开发者无需考虑为事件运行多个进程实现冗余。

田忠表示,第一时间能够使用新技术,并且功能没有差别,这就是开源带来的好处。在Bluemix上有不少的人在用OpenWhisk,包括Bluemix本身的开发人员。

Blockchain

去中心化的新型分布式数据库技术区块链(Blockchain)是最近很火的另一项技术。从功能的角度来看,Blockchain和Open Cloud稍微有差距,但IBM的原则和态度是一样的。IBM认为Blockchain技术对世界的改变可以媲美互联网对世界的改变,所以第一时间把Blockchain带到Linux基金会,在Linux基金会管理之下成立了Hyperledger项目,进行Open Blockchain的开发,大型IT企业到大型金融企业都是Sponsor。田忠介绍,IBM把很多区块技术都捐赠给了Hyperledger(截止目前累计已有百万行代码)。

Blockchain的商业化也体现在Bluemix平台上。IBM希望通过Blockchain和Bluemix以及Watson认知计算技术来解决IoT领域的挑战——IoT是IBM公司及Bluemix当前重点投资的一个领域。IBM认为Blockchain可以让IoT设备共享数据、计算力、带宽甚至电力,IoT数据通过Watson接入块链系统。当然,Blockchain技术的更多应用,目前还处在实验阶段。

未来

当然,以上谈到的并不是IBM投入开源项目的全部。田忠表示,世界每天都是新的,包括开源团队在内,公司内部技术团队会及时观察和分享开源技术的变化,并带到技术管理层和业务管理层,基于业务和技术的需要,决定对于新技术的投入状况。事实上,不断的会有新的开源技术被加入到IBM的要求里面,来满足IBM对整个技术架构的丰富性和对架构延伸的需要。与此同时,IBM也会更多参与到这些项目当中去。

对于最可能影响Bluemix平台未来的开源技术,田忠强调,在开发者层面,团队除了正在做CloudFoundry,同时也在开始参与有利于实现DevOps的新项目,如Mesos,IBM要用etcd去替换ZK,使得Mesos更加轻量化。这些都会影响到未来Bluemix开发者平台的走势和能力。

总结

在云计算时代,开源技术对支持企业应用开发的作用已经不可或缺。本文介绍了IBM基于开源搭建云计算技术体系的实践和心得。田忠还对开源技术的运营提出建议:拿来主义当然是无可厚非的,但仅有拿来主义是不够的。开源社区的基本精神是利他主义,在共同利他的情况下达到利我的目的。对于云计算和新技术来说,我们需要有利他主义的精神态度,通过共同利益的驱使,一起创建更大更美好的世界。

这篇关于IBM杰出工程师:基于开源技术打造云计算技术堆栈的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/417124

相关文章

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

pip-tools:打造可重复、可控的 Python 开发环境,解决依赖关系,让代码更稳定

在 Python 开发中,管理依赖关系是一项繁琐且容易出错的任务。手动更新依赖版本、处理冲突、确保一致性等等,都可能让开发者感到头疼。而 pip-tools 为开发者提供了一套稳定可靠的解决方案。 什么是 pip-tools? pip-tools 是一组命令行工具,旨在简化 Python 依赖关系的管理,确保项目环境的稳定性和可重复性。它主要包含两个核心工具:pip-compile 和 pip

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX