最具影响力的数字化技术在线社区

168主编 发表于 2021-6-26 16:42:10

容器、Kubernetes和云原生技术 : 企业最需要的是什么?

每隔十年,就会有一种新的IT基础架构模型出现并改变人们组织使用技术的方式。1990年代客户端/服务器(C/S)体系结构将计算资源放在了后台,客户端响应速度变快;2000年代虚拟机(VM)的出现,提供了在一台计算机上模拟另一台计算机资源的能力,从而大大释放了计算力;在2010年代,云技术风靡一时,帮助公司变得更加敏捷和关注成本,企业上云成为一种趋势。现在,我们进入了一个新的十年,哪种基础架构将成为主导呢?根据当前趋势和预测,很明显,2020年代将由以容器和微服务为基础的云原生技术定义。https://pic3.zhimg.com/80/v2-021966cf019a89cc1a5238748e922a2e_720w.jpg容器当然,容器并不是全新的,有人将这项技术描述为VM的另一个名称,该名称可以追溯到1960年代;Google于2003年推出了容器集群管理系统,Docker在2013年推出了业务流程的平台,从而使这一概念得以普及,将容器技术推向顶峰。据Gartner预测,到2020年,将有一半的公司使用某种容器技术。https://pic2.zhimg.com/80/v2-8b3f8b50c13b7eb12b3a490c8df5f509_720w.jpg容器具有多种好处。但其中最主要的是速度,一致性和可移植性。速度速度在当今的IT世界中至关重要。在整个开发的各个阶段可迁移的软件可以提高效率,提高生产率,并为测试和质量控制留出更多时间。快速的流程使公司能够更快进入市场并更频繁地更新。使用容器,可以通过两种方式加快交付速度。首先,容器更加轻量,不需要像VM一样花费很长的时间来启动。其次,与传统瀑布式流程相比,使用容器的团队可以按较小的细分发布软件。容器消除了介于应用程序执行和执行手头任务的实际硬件之间的那些软件。剥离不必要的软件可使您每台计算机的容器密度更高,并且对该系统的利用率更高,从而提高了可以针对特定用例进行处理的速度。一致性容器让开发者可以创建与其他应用相隔离的可预测的环境。容器还可以包含应用所需的软件依赖项,比如具体的编程语言运行时版本和其他软件库。从开发者的角度看,无论应用最终部署在什么地方,都可以保证这些条件一致。这一切将转化为生产力的提升:开发者和 IT 运营团队可以减少调试和诊断环境差异所需的时间,将更多的时间用于为用户提供新的功能。而且这也意味着错误更少,因为开发者现可在开发和测试环境中做出在生产环境中也适用的假设。可移植性容器几乎能在任何地方运行,极大减轻了开发和部署工作量:在 Linux、Windows 和 Mac 操作系统中;在虚拟机或裸机上;在开发者的机器或本地数据中心的机器上;当然还有在公有云上。广受欢迎的Docker 容器映像格式则可进一步提供可移植性方面的帮助。无论您希望在什么地方运行软件,都可以使用容器。Kubernetes实际上,容器本身其实并不会给我们直接带来价值,但这并不是说容器不重要,而是在单机上运行容器,无法发挥它的最大效能,只有形成集群,才能最大程度发挥出容器的良好隔离、资源分配以及编排管理的优势。
各种规模的企业都在数字化转换,重新设计应用程序和业务流程,以提高效率,清晰度和速度。在很大程度上,这种转变是基于容器和微服务的架构推动的,该架构引发了云计算革命,有望实现按需弹性,增加正常运行时间并降低成本。云原生技术已变得无处不在,因为开源框架可以很容易地适应企业所梦想的任何用例,而Kubernetes正是这场云原生技术革命的中流砥柱和先锋。https://pic1.zhimg.com/80/v2-d02fa2b02b69d9194161486886ee2878_720w.jpg图片来源:百度原生云定义了应用程序和服务的一组特征以及可扩展,可靠和高性能的附带开发方法。云原生架构由运行在轻量级容器中的微服务组成,而不是大规模的整体应用程序。在应用程序下方是复杂的网络和硬件基础结构,它们本身就是软件结构,解决底层的复杂基础设施是云原生技术能够立足的基础,而它就是——Kubernetes。是的,一切的中心都是Kubernetes,它是容器编排器,开发人员越来越多地使用它们来驱动基于软件的基础架构,服务和应用程序。Kubernetes(K8s)是一个开源系统,用于自动化容器化应用程序的部署,扩展和管理。由于这一关键作用,利用Kubernetes的企业必须依靠云原生的开源来最大程度地减少不兼容代码,升级失败和最终淘汰的风险。Kubernetes成为企业架构的核心。企业越来越依赖开源解决方案生态系统来构建,部署和运行可扩展的关键业务应用程序。微服务和容器是该生态系统的核心。开发人员使用开放源代码框架,云原生API,编排器,网格和底层基础架构以及各种抽象级别来构建它们,从而使高可用性,弹性可伸缩和健壮的系统成为可能。Kubernetes是驱动云原生软件的开源生态系统的支柱。容器编排器可以根据需要扩大或缩小规模,包括自动重启崩溃或降级的容器,以及自动更新应用程序而无需停机。应用、微服务和软件定义的基础架构的敏捷开发和交付通过Kubernetes来完成已成为不争的事实。在过去的五年中,基于容器的架构和Kubernetes已从最先进的技术发展为主流。云原生云原生是什么?
是Kubernetes?不可变基础设施?还是声明式API?没有谁能够准备地给出云原生的完整定义,即使是云原生技术的提出者对于云原生的理解在不同的时间也有着不同的理解。https://pic1.zhimg.com/80/v2-7215bd988e821930a4eaf34686dadb3c_720w.jpg其实,云原生并不是一个产品或系统,而是一套技术体系和方法论,由企业的数字化转型思想先行,从内到外的整体变革。更确切地说,它更像是一种文化,一种趋势,一种云计算的一个必然导向。https://pic4.zhimg.com/80/v2-dbf91025f41a275ac96387d9f8c80e5f_720w.jpg图片来源:https://pivotal.io/cn/cloud-native云原生充分利用了公共云的分布式、可扩展、灵活的特性,可以最大程度地专注于编写代码,消除快速创新的限制,创造业务价值并保持客户满意。https://pic3.zhimg.com/80/v2-57c7daf8431ea09b9598c56f00c629c2_720w.jpg图片来源:https://www.contino.io/insights/what-is-cloud-native-architecture-and-why-is-it-so-important云原生是一种体验,而不是目的地回到企业或者商业的本质,商业是以增收和赚钱为目的,一切能够使得成本降低,效率提升的技术或管理模式都会成为强有力的推手。在这趟旅程中,企业追求的到底是什么呢?这几年,企业上云 可能是我们经常听到的一句话,企业正在寻求使应用程序更加现代化,并期望云原生技术为最终用户和开发人员提供类似云的体验,要求对其应用进行敏捷开发和现代化。但是,虽然在容器中部署新的云原生应用程序相对简单,但是它们仅占企业应用程序的一小部分。绝大多数企业应用程序仍不是云原生的,它们将受益于容器和开源软件(如Kubernetes)可以带来的敏捷性,灵活性和效率。企业追求的不是技术本身,而是技术背后的效率和收益。Kubernetes和云原生技术无疑是当前最热门的技术,目光敏锐的企业和厂商已经或正在瓜分这波“蛋糕”或享受它们带来的收益。不夸张地说,在这波潮流中走在最前面的“弄潮儿”在引领最优质的创新和效能体验。这不仅仅是一种构建和运行应用程序的新方法,更是一种更有生命力的文化!云原生不是终点!参考资料:
[*]http://dockone.io/article/8941
[*]https://www.infoq.cn/article/fA42rfjV*dYGAvRANFqE
https://www.contino.io/insights/what-is-cloud-native-architecture-and-why-is-it-so-important
[*]https://www.hpe.com/us/en/insights/articles/the-cloud-is-an-experience-not-a-destination-2002.html?jumpid=in_510397410_NXTthecloudisanexperience_021420
[*]https://www.hpe.com/us/en/insights/articles/why-cloud-native-open-source-kubernetes-matters-2002.html
[*]https://www.hpe.com/us/en/insights/articles/why-containers-will-drive-transformations-in-the-2020s-2002.html

页: [1]
查看完整版本: 容器、Kubernetes和云原生技术 : 企业最需要的是什么?