DevOps 容器编排——你需要知道什么?
DevOps 容器编排——你需要知道什么?
介绍
下面的符号是 Kubernetes (K8s) 的标志。很多人认为 Kubernetes 只是行业的炒作,但它正在改变行业。几乎去年写的每一段代码都与 Kubernetes 兼容。在过去几个月中生成的每个应用程序或在过去几个月中提供的每个“产品”都可以托管在 Kubernetes 集群之上。您将在行业中看到这一趋势,未来几年可能还会更多。我们将摆脱传统的基础设施或单体应用程序,我们将转向使用 Kubernetes 等容器编排器的微服务架构。
当然,将来可能会有比这更好的东西。至于 K8s,它是一个由云原生计算基金会(CNCF)管理的开源项目,因此它很有可能成为未来的技术。它已经存在,但它每天都在变得越来越好。
需要容器编排
与传统的虚拟机 (VM) 相比,容器化具有很多优势。因为每个硬币都有两个面,容器化也有它的缺点。容器化克服了 VM 或 VMware 的缺点。但是容器化的惩罚是在容器编排器的帮助下解决的。
容器是可变资源。他们随时可能死去。它就像一个在处理器上运行的进程。这可能是因为可能存在 CPU 峰值或某些其他场景容器可能会死机。
而且,您需要了解如何在不同节点上放置/运行不同的容器(节点是一台计算机)。您不能将所有容器保留在单个节点上,因为这会增加失败的机会。将存在单点故障,因此您现在将分配负载以分配负载。谁来确定哪个容器在哪里运行?如何定义网络拓扑?分配给容器的 IP 地址有何不同? DNS 是如何工作的?谁将负责所有这些管理?那将是您的容器编排引擎,您的容器编排器,它将帮助您创建节点集群并管理这些节点,并以微服务的形式托管应用程序。在那个集群之上。并在容器编排器的帮助下管理这些应用程序。
Kubernetes (K8s)
如果你看到 Kubernetes(K8s)的标志,有六个不同的方向和一个中心。该中心象征着您将要管理所有这些事情的主节点。
- 它将帮助您更快地部署。
- 它将帮助您管理较低的负载并自动扩展您的基础架构
- 如果您的特定服务的负载量很高,并且您需要增加容器编排器将处理的节点数量
- 它将负责网络拓扑、调度以及节点内资源的放置。
- 它管理容器之间的通信和网络。
- 它公开了对容器进行日志记录、分析和健康监控的功能。它支持许多监控工具的插件
- 运行容器所需的大量操作工作由容器编排工具处理
- 一个容器的多个实例分布在不同的节点上,形成一个集群。有必要确保最佳数量的容器实例能够满足用户的请求负载。 Kubernetes (K8S) 等容器编排工具可促进多个容器之间的应用程序部署、自动缩放、网络和负载平衡。
Kubernetes(K8s)与 Docker Swarm?
当然,当您使用 VMware 时,我们可以安装我们想要的任何东西,并且我们可以使用它。例如,如果我们想做监控,我们可以在 VM 中安装监控客户端,将日志发送到服务器等等,但对于 Docker,这是不可能的。
为了解决这个问题,我们使用容器编排器。它将帮助您使用监控工具的插件。 Kubernetes 和 Docker swarm 是其中的一些例子,但 Kubernetes 是全行业采用的解决方案。与 Docker swarm 不同,它也非常可靠,尽管 Docker swarm 自带 Docker 引擎。所以当你安装 Docker 引擎时,你不必单独安装 Docker Swarm,但在某种程度上,它不是生产规模的解决方案。这是一个很好的分期解决方案。对于生产规模来说,这不是一个好的解决方案。这不是我个人的意见。您可以从数字中看到它,也可以从人们使用的不同行业标准中看到它。
容器编排
以下是容器编排器的三个依赖或三大职责:
治理
如果我们已经定义了要运行特定服务的三个实例,则容器编排器会检查其中三个实例是否正在运行。如果其中一个因任何问题而停机,它将继续并开始一个新的。
假设您有 8 个节点,并且您希望运行 16 个不同的应用程序实例。现在,其中两个节点由于某些问题而关闭。容器编排器将确保这四个实例保持正常运行或重新启动,您已经丢失,因为两个节点出现故障。它将把这四个分布在其他六个不同的节点上。
安全
安全性将帮助您定义网络协调器网络拓扑,这将帮助您为您定义隔离以及不同的 DNS 和 IP 地址。它还将帮助您使用防火墙。
自动化
您手动执行的每个流程都将在容器编排器的帮助下实现自动化。它是开放且可扩展的。
您可以使用多种 API。然后,您可以根据您的要求更改容器编排器。从概念上讲,容器编排器就像 Linux。你可以安装任何你想要的东西,你可以删除任何你不想要的东西。您可以根据您的要求或根据您对技术的理解对其进行定制。
笔记
你可以继续做一些研究。
- 您可以查看云原生计算基金会 (CNCF) 网站。
- 你可以看看 Kubernetes 是如何发明的,
- Google 是如何开始研究 Kubernetes 的,其背后的灵感是什么?
- 您可以查看一些有关 Docker 或 Kubernetes 的官方文档,并尝试更好地理解它。
10
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)