为什么Kubernetes对企业的业务至关重要

如果服务器应用程序通过容器移动到云平台,就需要一些容器布局,库本内将在这里发挥重要作用。

为什么Kubernetes对企业的业务至关重要

人们可能已经注意到许多企业现在都在采用库本内技术,如AWS、IBM/红帽、微软、VMware等。甚至拥有自己的容器调度程序Docker Swarm的Docker现在也支持库本内斯。那为什么每个人都这么做?

随着越来越多的企业继续将应用程序从服务器和虚拟机迁移到容器中,库本内斯通常被采用。

过去,企业在服务器硬件上运行服务器程序。然后是虚拟机,它可以在一个平台上运行多个操作系统和应用程序。这使企业能够在一台服务器上运行十个或更多服务器实例。这反过来使企业能够在这些虚拟机上按需运行,从而节省成本并带来极大的灵活性。

企业可以在一台服务器上运行更多的服务器程序,这将带来更多的成本节约和灵活性。这正是容器提供的优势。

人们会看到虚拟机管理程序(如Hyper-V、KVM和Xen)通过模拟虚拟硬件工作。这使得它们在系统需求方面供过于求,但是容器使用共享的操作系统。这意味着它们比虚拟机管理程序更高效。

容器不是虚拟化硬件,而是位于单个Linux实例之上。这意味着企业可以在小容器中运行应用程序。事实上,用户在同一硬件上运行的服务器应用程序实例是虚拟化的4到10倍。

容器也适用于连续集成/连续部署/(光盘)。这是一种Devops方法,旨在鼓励开发人员尽早并经常将他们的代码集成到共享存储库中,然后快速有效地部署代码。

最后,容器使开发人员能够轻松地打包、传输和运行任何轻量级、可运输、自给自足且几乎可以在任何地方运行的应用程序。

然后是如何管理所有这些容器的问题。使用容器,单个服务器可能有几十个工作负载要启动、工作和结束。这是库本内斯工作的地方。

Kubernetes的发展历史

Kubernes源自谷歌博格。它是谷歌大规模工作管理的大规模内部集群管理系统。此后不久,谷歌在2014年发布了第一版库本内斯。这个开源容器编排程序可以将容器部署到一组机器中,提供健康管理和复制功能,并使容器易于相互连接和与其他程序连接。

因此,库本涅斯有两个主要优势。由于它的博格血统,它已经通过了全球最大集装箱用户谷歌的测试。此外,通过使其开源,库本内斯已经摆脱了成为谷歌特定程序的负担。特别是在2018年8月,谷歌将库本内斯项目的云计算资源移交给了它的新家——独立的云本地计算平台(CNCF)。

自从CNCF接管库本内斯以来,它已经从一个由谷歌和红帽领导的项目变成了一个有数千名贡献者的项目。在此期间,几乎所有的竞争都被淘汰了。据研究机构红和尚(Red Monk)称,仍有竞争对手,但即使到2017年,《财富》杂志的前100家公司中,超过50%将使用库本内斯作为他们的集装箱布局平台。

Kubernetes可以做些什么

布莱安·葛兰特,谷歌的总工程师和库本内斯的总建筑师说,“库本内斯是一个可移植和可扩展的开源平台,用于管理集装箱化的工作负载和服务,同时促进声明性配置和自动化。”这是什么意思?

Kubernetes运行在Linux上,可以与Pod和一组一个或多个容器一起部署到单个节点、物理服务器或虚拟机。它的命令通常通过Kubernetes的命令行配置工具kubectl发送,该工具定义了工作的元数据和规范。这些描述由用JavaScript对象符号(JSON)或YAML写的声明性语句组成。这些描述了用户需要运行的应用程序、他们需要哪些容器映像,以及通过库本内应用程序接口创建集群所需状态所需的网络和存储资源。

Kubernetes主站将接受该命令,了解如何使用可用资源以出色的方式运行它们,并通过Pod生命周期事件发生器(PLEG)将用户的旅行命令转发给Pod。用户不必担心确切的细节。

Kubernetes会找到最适合该任务的节点。库本内斯分配完成这项工作所需的资源和吊舱。因此,库本内可以自动设置、监控和管理容器。

具体来说,Kubernetes使用户能够完成以下任务:

控制和自动化应用程序部署和更新。使用它,您可以描述部署容器的期望状态。Kubernetes然后以受控的速率将集装箱化应用程序的实际状态更改为所需状态。例如,用户可以创建新容器、删除现有容器或更新容器的软件内容。自动容器配置。用户为Kubernetes提供了一个节点集群,可以用来运行容器化任务。然后,告诉库本内斯每个容器需要多少CPU和内存。

Kubernetes然后自动在节点上安装容器,以充分利用可用资源。简而言之,它可以动态扩展集装箱化应用程序及其资源。存储布局。Kubernetes使用户能够自动装载选定的存储系统,包括本地存储、公共云提供商或存储区域网络。跨节点排列容器。容器通过使用它们的域名服务器标识或IP地址来公开。

如果集装箱流量很高,Kubernetes还可以平衡负载并分配网络流量以保持稳定性。自我康复。Kubernetes会重新启动失败的容器,替换容器,关闭不响应用户定义的运行状况检查的容器,并且在容器准备好之前不会向客户端通告容器。安全管理。Kubernetes允许用户存储和管理身份验证数据,例如密码、OAuth令牌和SSH密钥。

结合所有这些,库本内有三大优势。

首先是稳定性,库本内斯管理用户的容器。如果虚拟机、服务器甚至集群出现故障,库本内将自动启动更多的容器来承载负载。

然后是连续性。Kubernetes使用户能够在不影响其操作的情况下修补或完全更改应用程序。新容器在网上购买,而旧容器将过期,它们提供的服务将继续运行。过去,信息技术的稳定性完全取决于服务器的正常运行时间。现在,有了容器和Kubernetes,一切都与服务正常运行时间有关。

另一个相关的优势是灵活性。Kubernetes自动维护活动容器。这些被称为副本集。当Pod不能带走它所有的集装箱化应用程序时,副本集具有已经启动并运行以接管负载的所需容器。

简而言之,当以前的方法失败或需要长时间停机时,基于库本内斯的信息技术架构将与新软件一起运行。

Kubernetes不能做什么

Kubernes不是一切,也不是一切。

例如,库本内斯不是一个平台即服务(PaaS)系统。Kubernetes为类似PaaS的服务提供构建模块,但与云铸造不同,它不提供构建云本机应用程序所需的编程工具。此外,虽然连续集成(CI)/连续部署/(光盘)系统当然可以在库本内斯上构建和使用,但它不是固有的连续集成(CI)/连续部署/(光盘)。此外,作为一种管理容器的方法,它不附带应用程序级服务,如中间件或数据库。

正因为如此,库本涅斯有大量的分布。其中包括亚马逊弹性集装箱服务(eks)、azure Kubernetes服务(AK)、谷歌Kubernes引擎(GKE)、IBM云Kubernes服务、红帽的OpenShift、Pivotal集装箱服务(PKS)和VMware Kubernetes引擎。除了提供在特定云上部署库本内斯所需的工具之外,它们每个都有自己的特殊附加功能。

为什么Kubernetes是未来的选择

Kubernes是不可避免的,因为应用程序不断从服务器和虚拟机迁移到容器。即使使用像Ansible、Puppet或Salt这样的开发工具,系统管理员也没有实际的方法来管理成百上千个临时容器。它需要一个特殊的工具,这个工具就是库本内斯。过去和现在都有其他容器布局工具。出于某些特殊目的,它们可能更适合某些企业。然而,总的来说,库本内斯将是大多数企业的默认容器管理选项。

Kubernetes正成为混合云的流行选择,因为它可以跨多个平台运行,即使它们是由竞争对手的云计算企业运行的。这并不容易,但是许多库本内发布者致力于提供易于部署的基于库本内的混合云。这将使用户能够执行诸如运行混合云之类的任务,混合云可以将后端数据保存在私有云中,同时使用公共云作为前端接口。

总而言之,如果库伯内斯没有运营,它很快就会被拥有。正如Linux从根本上改变了服务器操作系统的空间,虚拟机导致了云计算的兴起,库本内将引导用户进行基于容器的分布式计算。

 

极牛网精选文章《为什么Kubernetes对企业的业务至关重要》文中所述为作者独立观点,不代表极牛网立场。如若转载请注明出处:https://geeknb.com/4118.html

(0)
打赏 微信公众号 微信公众号 微信小程序 微信小程序
主编的头像主编认证作者
上一篇 2019年11月26日 上午10:31
下一篇 2019年11月26日 上午10:50

相关推荐

发表回复

登录后才能评论
扫码关注
扫码关注
分享本页
返回顶部