Kubernetes – 容器编排简介

news/2025/3/19 11:33:24/文章来源:https://www.cnblogs.com/wonchaofan/p/18232071

在本文中,我们将研究 Kubernetes 中的容器编排。但首先,让我们探索容器兴起的趋势、容器编排的需求,以及它如何为 Kubernetes 占据主导地位和发展创造空间。

技术渗透到我们日常生活的方方面面,对软件、销售和交付基于软件的产品或仅在业务中使用软件的公司和组织产生了巨大的需求。这种压力刺激了创新和标准化。需求和风险如此之高,从根本上改变了软件的开发和部署方式。但这种演变并非没有先例。你能想象世界经济依靠船舶等方式进行商品贸易吗?!你不可能及时拿到你的新 iPhone。现在我们理所当然地认为集装箱可以在不同的运输方式、不同的船东和航运公司之间高效移动,并且标准化无处不在,几乎在世界任何地方都可以使用,无论它装在什么地方。现代软件变得非常相似。随着软件系统变得越来越复杂,这种复杂性促使软件被分成更小的部分,例如微服务。无论它们是否被称为微服务,这些较小的软件都需要被打包、构建、部署和由周围的其他软件访问,才能作为一个完整的系统运行。 

 

这些小软件片段可以部署到容器中,这样它们就可以在同一台虚拟机或真实机器上运行,但对软件来说,它似乎是唯一正在运行的进程。在这里,我们稍微偏离了集装箱的比喻。虽然容器的唯一工作通常是将东西包含在自身内,但有用的软件通常依赖于周围的其他软件来完成其工作。这就是容器编排需求的诞生。将逻辑上不同的软件彼此分开确实有好处,当它们不在同一模块中时,您可以开发、部署、扩展和维护每个小片段,而不必在系统的其他部分之间进行过多的麻烦。但是,在某些时候,应用程序的不同部分可能会相互通信以执行任务。例如,API 可能需要与业务逻辑进行通信,而业务逻辑又需要访问信息或数据库。 

容器本身将逻辑上不同的软件部分分开,以便它们可以自行构建、部署、维护、管理和扩展,而不会过度影响系统的其他部分。

另一方面,容器编排定义了这些容器如何作为一个系统进行交互,彼此之间的需求以及如何将它们组合成高性能、可管理、可靠且可扩展的系统。目前可以肯定地说,docker 是容器技术和应用领域的主导者,而其他公司也在这个领域占据主导地位,当你提到容器时,它们几乎就是 docker 的代名词。其他参与者存在于小众应用程序中,一些围绕标准化的动向正在发生,尽管 docker 文件标准还处于萌芽阶段,但它本质上是当今的标准,docker 存储库定义了在开发人员之间以及在需要使用它们的系统之间托管容器版本的主要方式,例如 kubernetes 等编排系统。 

 

 

由于容器编排是一个较新的领域,自采用容器以来才开始发展,因此这些技术较新并且仍在不断发展。然而,Kubernetes 相当先进,随着亚马逊网络服务最终加入其竞争对手并拥抱 Kubernetes,它得到了几乎所有主要参与者和云计算的支持,这些参与者和云计算都是通过云原生计算基金会(也称为 CNCF)进行的。这是现在管理 Kubernetes 的组织。它基本上已经成为事实上的标准,特别是现在它正在与替代竞争技术 docker swarm 竞争,Dockers 的容器编排解决方案现已宣布支持 Kubernetes 风格的配置和处理,很明显,Kubernetes 现在是事实上的标准,即使不是业界和容器编排中公认的标准。

容器化改变了软件的开发和打包方式,容器编排正在改变容器部署到更大有用的系统中的方式。 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/720107.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux学习笔记(2)——ls指令

指令:ls -a: 列出所有文件 -l:以长格式显示指定目标信息 -F:在每个文件末尾加上字符说明该文件类型:@符号链接、|表示FIFOS、/表示目录、=表示套接字 -s:在每个文件前面打印出大小 -t:按时间进行文件排序 -A:列出除了“.”和“..”的文件 -R:将目录下所有子目录的文件列…

KeepassXC Keepass2android WebDav 同步数据库

1:方案介绍 KeepassXC 和 Keepass2android 都是用来存储用户密码数据的应用。KeepassXC 在 Win、Mac、Linux 都可以安装;Keepass2android 在 andorid 安这两个软件都支持 .kdbx 数据库,也就是说 KeepassXC 创建的数据库在 Keepass2android 中也能使用,但问题是数据库如何同…

golang在vscode执行测试用例如何显示测试代码覆盖率?只需要添加几个配置

背景 我们在开发完需求后,需要编写测试用例用于保证代码的正确以及后期变更中预防出现问题,那么如何保证我们的覆盖范围在我们预期,以及如何知道我们的测试用例覆盖了哪些代码呢? 如何实现 我们只需要在测试用例执行后,让ide在代码上渲染出哪些被覆盖哪些没有被覆盖即可,…

六月五日 关于计算机网络RIP和OSPF

今天主要是关于计算机网络的,今天的实验课要完成的是RIP和OSPF配置。 RIP协议(Routing Information Protocol,路由信息协议)是最早的动态路由协议,其原理简单,配置容易。它基于距离矢量算法来计算到达目的网络的最佳路径,通过跳数(hop count)作为度量路由之间的距离,…

小程序体验版加载不出内容如何解决

开发中我们在本地真机测试可以正常加载, 但是上传到体验版,扫码体验就无法正常加载,如何解决? 我们可以扫码后进入小程序页面,点击右上角的三个点, 打开调试模式

分块——优雅的暴力

下面介绍一种暴力,当然呢这种暴力比一般快很多。 先说一下这个暴力的思路。对于一个长度为\(n\)的数组\(a\),可以把数组\(a\)分成\(k\)块,其中每一块的长度为\(len\),当然最后一行除外因为\(n\)可能不是\(k\)的倍数,最后一块的长度可以不是\(len\)。 那么就可以用这些块来…

[转]第48章:SEH - Rev

SEH 是 Windows 操作系统提供的异常处理机制,在程序源代码中使用 __try __catch __finally 等关键字来具体实现。 进程在运行过程中发生异常,OS 会委托进程处理,但如果进程内没有具体实现 SEH ,那么 OS 会启动默认的异常处理机制,终止进程运行。如果有调试器,则先交由…

Kubernetes - 安装方法

Minikube: 对于想要在系统上安装 Kubernetes 但系统资源有限的用户来说,它是理想的选择。因此,minikube 的关键点在于它没有单独的 Kubernetes 主节点和 Kubernetes 工作节点架构。在这里,我们将所有 Kubernetes 组件打包在一起作为一体化设置。单个系统同时充当主节点和工…

UE4 AI

UE4中的AI UE4中AI一般通过行为树来实现行为树控制了AI的动作,而该执行哪些动作则是由AIController(本质上是一个类)进行判断,然后传入BlackBoard的Key中,之后在行为树里利用Selector或者Sequence进行执行对应的动作 每个Actor类都可以选择一个AIController类 行为树中的两个…

一文了解JVM(中)

HotSpot 虚拟机对象探秘 对象的创建Header 解释使用 new 关键字 调用了构造函数使用 Class 的 newInstance 方法 调用了构造函数使用 Constructor 类的newInstance 方法 调用了构造函数使用 clone 方法 没有调用构造函数使用反序列化 没有调用构造函数说到对象的创建,首先让我…