当前位置: 首页 > 科技观察

Docker:IBMPowerSystems的“弯道超车”利器

时间:2023-03-13 11:37:58 科技观察

始于2013年8月,由IBM、Google、TYAN、NVIDIA、Mellanox等五家公司发起的OpenPOWER联盟揭开了IBMPowerSystems的开放性。路。随着IBM的大力投入和日益强大成熟的OSS生态系统,将进一步推动和发展PowerSystems系统级的优势,从而为用户提供x86之外的另一种,甚至可能更好的选择。总的来说,开源软件(OSS,OpenSourceSoftware)近年来发展迅速,所涉及的领域远不局限于传统的方向(如操作系统、Web平台等),因此,它具有迅速获得了业界的广泛认可,而IBM也正是在这种趋势下,与OSS进行了更紧密的结合。相比之下,虽然x86一直宣示着开放和标准化,但在OSS方面,尤其是2013年及之后出现的那些新的开源项目,x86和IBMPowerSystems平台几乎是同步的,双方都在争夺新的平台主导地位。应用程序工作负载。从这个角度来看,如果OSS在未来的IT环境中发挥越来越重要的作用,也意味着IBMPowerSystems将获得比以往更多的性能机会,而最近火爆的Docker甚至可能成为PowerSystems“反超”的利器。一条曲线”在这场与x86的比赛中。随着Docker的出现,可以说x86平台和PowerSystems都面临着新的挑战和机遇。一方面,其理念在现有基础上进行了巧妙创新。另一方面,这种创新给软件开发、运维管理(DevOps)带来了重要变革。最重要的是,它对整体的应用形态和应用的快速部署带来了深远的影响,这也将足以推动相关IT技术和基础设施的重大变革。这种变化是挑战,当然也包含机遇!什么是码头工人?Docker是一家PaaS提供商dotCloud,于2013年推出了基于Linux容器(LXC,LinuxContainer)的高级容器开源引擎,源代码托管在Github上。它基于go语言,遵守Apache2.0协议。后来可能是Docker太火了,dotCloud更名为DockerInc。目前,Docker可以在容器内部快速自动部署应用,并且可以通过内核虚拟化技术提供容器资源隔离和安全性。由于Docker通过操作系统层的虚拟化实现了隔离,因此Docker容器在运行时不需要像传统虚拟机(VM,如VMware的vSphere、微软的Hyper-V、Linux的KVM)那样额外的操作系统开销。提高资源利用率,提高IO等性能。相对于传统VM和Linux容器技术(LXC),Docker在传统虚拟化中分为两种。Type-1是指先在服务器的硬件平台上部署虚拟机管理层(Hypervisor),再在Hypervisor上部署虚拟机管理层(Hypervisor)。在计算机上生成一个虚拟机,每个虚拟机都安装有操作系统、运行时库和相关的应用程序。对于Type-2,首先在裸机上安装操作系统(如Linux或Windows),然后再安装Hypervisor。Type-1虚拟化比较常见的类型有VMware的vSphere、微软的Hyper-V、Linux的KVM、Xen,Type-2的典型代表有VMware的Workstation和Oracle的VirtualBOX。由于Type-1Hypervisor更靠近硬件底层,可以减少更多的系统开销,但就Hypervisor本身而言,仍然存在OS“底层”的基础层,这也是它仍然存在的原因有系统开销。至于容器技术,由于是从操作系统的内核(LinuxKernel)衍生出来的,所以基本上没有Hypervisor带来的开销。与传统的服务器虚拟化相比,Docker的一个重要特点是在实现应用程序之间隔离的同时,没有传统虚拟化所必须的Hypervisor虚拟化管理层,因为本质上Docker内核和Linux是集成在一起的。Docker的基础——LXC是一种封闭Linux运行时、库和其他软件运行时支持环境和相关应用程序的技术。从Linux内核的角度来看,LXC相当于系统的一个本地进程,本质上与裸机(非虚拟化)应用没有区别,因此不需要额外的虚拟化指令和相应的系统虚拟化开销.因为在传统的虚拟化平台中,不管hypervisor有多瘦,虚拟机都要先经过本地OS,再通过hypervisor调用服务器的物理硬件资源。与直接作为系统进程出现的LXC相比,肯定会造成额外的性能影响。但是传统LXC在当前应用中的劣势也很突出,所以LXC缺乏一个更加全球统一规范的描述定义,在最初的开发中也没有过多的考虑可移植性(共享),所以在管理方面也比较多复杂,尤其是在互联网+云计算时代,经常会出现应用大规模扩展部署的情况。在这种情况下,传统的LXC显然缺乏有效的解决方案。可以说,Docker就是为此而生。它采用“云”+“端”的概念和PaaS(应用平台即服务)云管理模式,赋予容器技术新的生命。从Docker的应用打包架构可以看出,其最基本的运行内核和底层镜像均源自于Linux内核。用户可以将使用Dockerfile生成的应用镜像上传到远程的DockerRegistry(比如Docker自己的别人运营的Cloudservice,或者自己搭建的DockerRegistry),也可以从DockerRegistry中拉取别人创建的镜像并直接放入容器中进行操作。相比之下,Docker显然给LXC带来了更灵活的部署在Docker系统中,最关键的两个是DockerRegistry(通过DockerHub索引)和DockerEngine。前者负责在远端(或云端)收集和分发Docker应用镜像(Images)。),后者负责在客户端构建Docker应用容器,显然是一种aaS概念的云服务。当然,用户也可以在自己的数据中心建立私有的DockerRegistry,方便在私有云中快速生成自己的。Docker集群,满足灵活、大规模的应用扩展需求。这时候相当于在企业数据中心内部形成了云+端的Docker架构。Docker在英文中的意思是“码头工人”,它的标志就像一艘鲸鱼般的大船,将一堆集装箱运送到各个码头。从理论上讲,Docker就像一个容器,利用LXC技术将不同大小、类型、层次的应用镜像整合起来,然后通过集中聚合的方式有序分发——每个dock就是一个服务器(或VM)),大船是Registry,码头工人是核心Engine,组装容器。当然,还需要一系列的外围支持(比如最重要的管理)。但从整体场景来看,Docker的名字还是很贴切的。Docker的优势和生态环境经过上面的介绍,我们可以看出Docker最明显的优势就是极大的改变了传统应用DevOps的模型和流程,让开发者更加专注于应用本身,让应用成为可能更容易更新、共享和迁移,这也是云时代非常重要的一个特点。尤其是在单一类型应用的大规模部署中,Docker有着得天独厚的优势。通过镜像的便捷组合,Docker可以实现一代后的随机极速部署。例如,在云计算、互联网IT越来越普及的趋势下,应用集群动态扩展的需求非常普遍。这对于客户流量波动较大的公司尤其常见。比如大型电商在做促销的时候,访问量的峰值可能是平时的十倍、几十倍、几百倍。如何顺利、快速地扩展相关应用集群,是决定业务收入的关键。据测试,在POWER8双路PowerLinux服务器上部署100个ApacheWeb服务器实例仅需40秒,这在以往的虚拟化环境中是不可想象的。另外,由于Docker集成了宿主机的Linux内核,其应用性能优于传统的虚拟化方案,基本接近裸机部署应用的性能。凭借众多新颖的特性、优异的性能以及项目本身的开放性,Docker迅速成为PaaS领域不可或缺的名字。目前官方DockerRegistry中注册保存的Docker镜像已经超过6万个,在不到两年的时间里迅速赢得了众多厂商的青睐,其中包括谷歌、微软、VMware、IBM等行业龙头企业。.谷歌在2014年推出了Kubernetes,为Docker容器提供调度服务。今年8月,微软宣布Azure支持Kubernetes,随后传统虚拟化巨头VMware宣布与Docker强强合作。2014年9月中旬,Docker甚至获得了4000万美元的C轮融资,推动分布式应用的发展。2014年12月,IBM宣布其PaaS平台BlueMIX正式支持Docker,并提供傻瓜级操作便利,最大限度降低Docker对特定操作技能的要求。与此同时,IBM自家的硬件平台——PowerSystems服务器和Systemz大型机也开始全面支持Docker,并随着相应OSS环境的搭建,开始“赶超”x86平台。Docker帮助IBM和PowerSystems实现了IBM和Docker在弯道超车的结合,简单来说就是在硬件和软件层面。首先,让我们谈谈硬件。它的主要优势是基于POWER8的新一代PowerLinux服务器。在这一代服务器上,支持的Linux平台更加丰富。除了RedHat和SUSE,还增加了Ubuntu。当然,就硬件系统而言,POWER8平台给Docker带来的直接好处与其他应用类似,就是更高的性能和高RAS特性带来的可用性保证。更高的性能一方面可以让Docker应用受益,另一方面也意味着同样的性能体验下,Docker在单机上的部署密度可以更高。IBM计划将Docker在POWER8平台上的部署密度提高到x86的2倍甚至更高。当然,这里必须强调一点,所谓的POWER8平台不仅仅局限于服务器本身,而是包括整体相关的系统平台。例如,通过POWER8独有的CAPI接口连接的存储(如FlashSystem全闪存阵列)和网络平台,将在外围I/O层面极大地扩展POWER8平台的整体性能和负载能力。配合POWER8服务器本身完善的RAS特性,为Docker提供了一个比x86更可靠、综合性能更好的平台。其次,在基础设施软件层面,PowerSystems的优势将得到进一步体现,这主要得益于IBM自己的专属虚拟化平台——PowerVM。可能有人会说,上面不是说Docker比传统VM好吗?为什么要谈论PowerVM?这里首先要解答一个误区,用Docker做虚拟化是不是就没必要了?显然不是,Docker和虚拟化平台在很多场合是相辅相成的。这是因为Docker本身就是一个基于Linux内核的特殊进程。虽然它有一些虚拟化特性,但是一些关键的虚拟化特性目前还不可用,比如动态迁移(虚拟机不停地从一台服务器迁移到另一台服务器,以更好地分配资源和维护硬件),再比如混合部署应用环境(一台服务器上的两个或多个操作系统环境),以及更强的应用隔离和安全性。因此,需要借助传统虚拟化平台的能力,帮助Docker应对更多的场景需求。Docker可以部署在传统的虚拟化环境中。基本上只要虚拟机支持64位Linux,就可以部署Docker,享受虚拟机本身的一些优势。所以传统的虚拟化如微软、VMware等巨头都表示支持在自己的平台上部署Docker,那么IBM的PowerVM和它有什么区别呢?简单来说,PowerVM虽然也是Type-1级别的Hypervisor,但更接近于“裸机”虚拟化解决方案,它与POWER平台有着天然的结合能力(源于系统级的固件设计和对操作系统,并且只针对POWER平台),所以在性能体验上和Docker类似,所以在PowerVM上部署Docker相当于在裸机上部署,会提供更好的性能保障。其次,通过PowerVM,可以将POWER服务器划分为多个逻辑分区(LPAR,相当于VM),同时在其上部署UNIX(AIX)和Linux运行环境,从而实现异构平台的混合加载能力,这是x86厂商做不到的。最后,基于PowerVM环境,Docker将得到更好的安全保护。PowerVM是目前公认的最安全的Hypervisor。对于关注安全性的用户来说,无疑是一个比较理想的虚拟化平台。因此,我们现在可以看到,PowerVM+PowerSystems将为Docker提供比x86更强大、更灵活的虚拟化平台,为Docker提供更多的应用场景,尤其是将其带入UNIX/Linux混合应用环境。良好的基础。另外,随着IBM主导的PowerKVM的正式发布,也为熟悉KVM的用户顺利迁移到PowerLinux提供了很好的保障,并且在能量管理方面比x86平台上的KVM更加强大,RAS功能和CPU调用。(如EnergyScale、ExtendedErrorHandling、微内核模式等),这也为Docker提供了更好的KVM虚拟化平台。在软件层面,IBM目前是Docker基金会的理事会成员,正在与相关合作伙伴一起构建面向POWER架构的Docker环境,也包括“云”和“端”两个层面。在云方面,据说IBM的PaaS平台BlueMIX已经支持Docker的部署,而在IaaS层面,Docker已经可以部署在裸机上的SoftLayer平台上(当然也可以是SoftLayer的虚拟化平台)).在企业应用领域,IBM正围绕DockerHubEnterprise(DHE)与Docker密切合作。IBM将通过集成解决方案和单独产品生产和销售DHE。为用户提供基于云端或自有数据中心内的Docker分发服务。现在,全球排名前5位的Docker镜像已经或正在支持POWER平台,已经支持POWER的镜像包括Ubuntu、MySQL、Rails、Postgres、Wordpress、Redis、Mongo、Python、Base(废弃的Ubuntu)、Debian、Java、等,BusyBox和Centos正在支持中。在Docker管理方面,借助OpenStack中的HEAT组件,IBM自家的云管理平台ICM(IBMCloudManagerwithOpenStack,即OpenStack的IBM版本)也在加速完善对Docker的支持。这里的支持和传统的HEAT不一样,因为ICM本身是跨异构平台的,包括POWER、Systemz和x86,ICM为用户提供统一的管理环境,当然也包括Docker(Systemz也已经支持Docker),它将为Docker用户提供一个全面而广泛的应用环境。综上所述,作为当前OSS领域的热门新兴项目,决定坚定拥抱开源的IBM,可以说在Docker的世界里,在技术架构上几乎不落后于x86平台,这不同于那些历史悠久的开源项目。相比之下,有着明显的区别。可以说,两方在Docker上的出发点几乎是平行的,大家各自的生态都可能因为Docker而转向。虽然x86可能凭借传统的开源和开源优势拥有更多可用资源,但就具体厂商而言,IBM的实力不容小觑。紧密协作,在Docker时代,IBM乃至PowerSystems实现弯道超车恐怕不是梦。与其埋头在电脑前纸上谈兵,不如现场观看实战演练!6月16日武汉,LinuxonPower体验营等你来!《云领创新 Linux on Power体验营》报名《开放数据源动力Linux on Power体验营》报名