容器化和编排之间的区别:外行的 Outlook

容器化和编排。

您可能在 DevOps 世界中遇到过这两个术语,尤其是如果您是系统管理员。

已经有很多文章试图解释容器化和编排之间的区别,但大多数都将比较集中在 Docker 和 Kubernetes 上。

在区分软件之前,首先要了解它们的用途之间的区别,以及最初开发它们的原因。

因此,在这篇快速阅读中,我试图探索容器化和编排这两个术语作为初学者和新手的核心概念的真正含义。

如何区分容器化和编排? 让我们打个比方。

一个外行的 Outlook 关于容器化和编排

容器这个词代表了一个独立的环境中的一个大的、孤立的长方体。 这些集装箱储存货物并装载在船上。

一艘装载了几个集装箱的船

您可以将其想象为停靠在造船厂的船上的集装箱。

“停靠”、“造船厂”和“码头工人”! 这些条款是否敲响了警钟?

管弦乐队这个词代表一群音乐家以完美的同步方式演奏一个音符,在指挥的帮助下或以其他方式称为音乐会首席。

管弦乐队的指挥,将音乐和谐与协调的手势同步。

这种完美同步的音乐和声就是你所说的管弦乐。

现在,当您从 DevOps 的角度来看待它并尝试了解如何采用这种想法来管理在计算机系统中运行的应用程序时,您必须用容器“船”代替音乐家。

我在这里提到的应用程序与船舶集装箱内的货物非常相似。

因此,您可以将 Docker 软件可视化为一艘船,停靠在运行不同应用程序的不同容器上。 这艘船的驾驶方式取决于“军需官”。 Docker 将应用程序容器化,使其作为一个独立的单元运行。

只是如何 军需 负责保持一个 close 着眼于船舶的导航、转向和信号,Docker 负责有效地管理计算机系统上运行的容器。

请注意,这些容器作为虚拟机或物理服务器在它们自己的隔离、基于操作系统的环境中运行各个应用程序。

多个容器可以在单个虚拟机或服务器上运行。 您可以将这些虚拟机或服务器视为船舶。

您现在如何在同一行上可视化 Kubernetes? 现在想想多艘船。

一个港口的多艘船,每艘船都装载着集装箱一个港口的多艘船,每艘船都装载着集装箱

这些船中的每艘都携带多个集装箱。 Kubernetes 编排多个虚拟机或节点以彼此完全同步运行。

尽管 Kubernetes 一词的意思是舵手或船的驾驶员,但如果我们将该词与“港务长”联系起来,我们的类比会更好地理解。

只是如何 港主 Kubernetes 设法“协调”大量到达或离开港口的船只,Kubernetes 做同样的事情,但有多个运行各种容器的虚拟机。 如果只有一艘船(系统),您仍然可以对多个容器使用相同的类比。

你仍然可以继续使用“性能”这个词。 但是,您现在可以在服务器上获得系统性能,而不是在管弦乐队中进行音乐表演或在港口进行舰队表演。

我希望您现在可以清楚地看到物理服务器上容器化和编排之间的根本区别。

基于这种理解,现在让我们对两者进行一些简单的定义。

容器化

容器化是隔离应用程序以部署在虚拟机或物理服务器(通常也称为节点)内的基于单个操作系统的环境中。 一个 example 这样的容器化工具就是 Docker。

编排

编排是同步在多个节点上运行的多个容器以及节点本身的方法。 这些节点可以是虚拟机或物理服务器。 一个 example 这种编排工具中的一个就是 Kubernetes。

请注意,Kubernetes 也能够执行容器化,就像 Docker Swarm 可以执行编排一样。

希望这篇文章对您有用,现在您可以通过所描述的类比来区分这两个概念。 如果您想分享一些反馈、建议或评论,请使用以下部分。