现在,让我们作为集装箱编排引擎潜入Kubernetes。Kubernetes并不孤单,因为还有其他集装箱编排引擎可用,包括Docker Swarm和Hashicorp Nomad。但是,在编排容器方面,Kubernetes已成为领跑者。
VM编排中的Kubernetes和vSphere比较
如果我们看虚拟化,尤其是 vSphere,我们可以看到一个虚拟中心,可以比作VM编排器。它有助于在所有ESXi虚拟化主机之间平衡我们的VM,因为如果其中一个主机死亡或失败,则驻在其上的VM将被移至另一个主机,而不会导致VM及其运行应用程序的停机时间。
从虚拟机到集装箱:编排的转变
在Kubernetes中,此过程非常相似,只是在这里,我们不是在编排VM,而是在编排容器 以及相关的服务。我们没有在主机之间移动容器,而只是旋转新容器以使应用程序保持其所需状态。
这里要注意的另一件事是,在虚拟化世界中,我们可以选择运行单个ESXi主机并在其中运行VM。现在,最大的问题是,如果主机出现故障,则这些VM缺乏高可用性。在容器方面,我们可以做类似的事情。例如,我们可 印度电话号码列表 以选择运行运行Docker的VM,然后我们的应用程序在容器中运行。如果此VM失败,则应用程序也将失败,这就是为什么我们需要编排引擎以实现高可用性和抗故障能力的原因。
Kubernetes建筑街区
在VM中,我们可能有一个或多个应用程序都安装在同一VM上。现在,在一个应用程序中,可能有几种服务使该应用程序能够为最终用户或客户工作。
集装箱化和服务规模的好处
在集装箱化环境中,我们的应用程序肯定会分为多个不同的容器映像,这些映像可以比作构建我们应用程序的服务。集装箱化的主要好处之一是,我们可以随时随地扩展单个服务(即,例如在繁忙时期处理需求)。
了解库伯内斯的豆荚
当我谈论这些服务时,将它们简单地视为具有多个后端服务(例如身份验证,目录和库存)的前端管理Web界面。然后将这些数据存储到数据服务中,这很可能会在这里找到与以前所见相似的数据库,例如MySQL或Postgres(在数据库方面有很多选择)。使用VM,所有这些服务很可能都位于同一VM上。在Kubernetes环境中,我们应用程序的这些部分将是容器图像,并称为 吊舱。