您的位置:首页 >房产频道 > 科技 >

为什么Kubernetes对您的业务如此重要

导读 你可能已经注意到现在每个公司和他们的狗都在拥抱Kubernetes。亚马逊网络服务(AWS)、IBM 红帽、微软、VMware等等,不一而足。甚至有自己的

你可能已经注意到现在每个公司和他们的狗都在拥抱Kubernetes。亚马逊网络服务(AWS)、IBM/红帽、微软、VMware等等,不一而足。甚至有自己的容器程序员Docker Swarm的Docker现在也支持Kubernetes。那么,它是什么,为什么每个人都参与其中?

很久很久以前,我们也在服务器硬件上运行服务器程序。然后是虚拟机(vm)。我们可以在一个平台上运行多个操作系统和应用程序。这使公司能够在一台服务器上运行10次或更多的服务器实例。这反过来使我们能够在这些虚拟机上按需运行云,这为我们节省了资金,并为我们提供了极大的灵活性。

但是,如果一台服务器上可以运行更多的服务器程序,而不使用虚拟机的大部分操作系统,会怎么样呢?这将为我们带来更多的成本节约和灵活性。这正是集装箱交付的东西。

您可以看到,Hyper-V、KVM和Xen等虚拟机管理程序通过模拟虚拟硬件工作。这使得它们在系统需求术语中显得“臃肿”。但是,容器使用共享的操作系统。这意味着它们比虚拟机管理程序更高效。

与虚拟化硬件不同,容器驻留在单个Linux实例上。这

你可能已经注意到现在每个公司和他们的狗都在拥抱Kubernetes。亚马逊网络服务(AWS)、IBM/红帽、微软、VMware等等,不一而足。甚至有自己的容器程序员Docker Swarm的Docker现在也支持Kubernetes。那么,它是什么,为什么每个人都参与其中?

很久很久以前,我们也在服务器硬件上运行服务器程序。然后是虚拟机(vm)。我们可以在一个平台上运行多个操作系统和应用程序。这使公司能够在一台服务器上运行10次或更多的服务器实例。这反过来使我们能够在这些虚拟机上按需运行云,这为我们节省了资金,并为我们提供了极大的灵活性。

但是,如果一台服务器上可以运行更多的服务器程序,而不使用虚拟机的大部分操作系统,会怎么样呢?这将为我们带来更多的成本节约和灵活性。这正是集装箱交付的东西。

[以防您错过:云安全:共享责任模式]

您可以看到,Hyper-V、KVM和Xen等虚拟机管理程序通过模拟虚拟硬件工作。这使得它们在系统需求术语中显得“臃肿”。但是,容器使用共享的操作系统。这意味着它们比虚拟机管理程序更高效。

与虚拟化硬件不同,容器驻留在单个Linux实例上。这意味着您可以在一个小而整洁的容器中运行您的应用程序。事实上,在同一硬件上运行的服务器应用程序实例的数量是虚拟机的四到十倍。

容器也可以用于持续集成/持续部署(CI/CD)。这是一种devops方法,旨在鼓励开发人员尽早频繁地将他们的代码集成到共享存储库中,然后快速有效地部署代码。

最后,容器使开发人员能够轻松地打包、交付和运行任何应用程序。作为一个轻量级、便携式和自给自足的包,它几乎可以运行在任何地方。

[顶级项目管理认证信息技术技能指南]

只有一个小问题,——,其实是个大问题。您如何管理所有这些容器?当使用容器时,单个服务器可能有几十个工作负载开始、工作和结束。这就是库本内特斯进来的地方。

Kubernetes作为博格起源于谷歌。这是一个大型的内部集群管理系统,用于谷歌规模的作业管理。2014年,谷歌发布了第一个版本的Kubernetes。最初被评为《星际迷航》系列九部电影中的七部,与博格的《星际迷航》主题一致,但很快就被放弃了。这个开源容器安排器可以将容器部署到一个车队中,提供健康管理和复制功能,并使容器和其他程序之间的连接更加容易。

因此,Kubernetes有两个主要优势。由于它的博格起源,它已经被世界上最大的容器用户谷歌测试过了。此外,通过开放它,Kubernetes摆脱了作为谷歌专用程序的负担。这一点在2018年8月得到强调,当时谷歌将Kubernetes项目的云资源移交给了其新居——独立云本地计算平台(CNCF)。

自从CNCF接手Kubernetes以来,它已经从一个由谷歌和红帽领导的项目变成了一个拥有成千上万贡献者的项目。在这个过程中,它几乎淘汰了所有的竞争对手。市场上还是有竞争对手的,但根据开发者研究公司Red Monk的数据,即使到了2017年,《财富》(财富)百强企业中也有超过50%在使用Kubernetes作为自己的容器分配平台。

根据谷歌首席工程师兼Kubernetes首席架构师布莱安葛兰特的说法(他应该知道),“Kubernetes是一个用于管理容器化工作负载和服务的可移植和可扩展的开源平台,它促进了声明式配置和自动化。”这是什么意思?

Kubernetes在Linux上运行,并使用pods(一组一个或多个容器)部署到单个节点、物理服务器或虚拟机。您的命令通常通过kubectl (Kubernetes的命令行配置工具)发送,该工具定义了您的作业的元数据和规范。这些描述由用JavaScript对象符号(JSON)或YAML写的声明性语句组成。他们通过Kubernetes API描述他们想要运行哪些应用程序、需要哪些容器映像以及需要哪些网络

和存储资源来创建所需的集群状态。

Kubernetes的主人接受你的命令,计算出如何用可用的资源最好地运行它们,并通过Pod生命周期事件生成器(PLEG)将你的前进命令传递给Pod。你不必担心确切的细节。Kubernetes计算出哪些节点最适合这项任务。在幕后,Kubernetes分配资源并分配完成工作所需的吊舱。因此,Kubernetes自动设置、监视和管理容器。

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

把所有这些放在一起,你会得到三个主要的商业优势。

首先是稳定性,Kubernetes管理您的容器。如果VM、服务器甚至集群发生故障,Kubernetes将自动启动更多的容器来承载负载。

相关:Kubernetes——运行容器的平台——正变得越来越有进取心

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

一个相关的好处是弹性。Kubernetes自动维护活动容器。这些被称为复制集。当pod无法卸载所有的容器应用程序时,副本集已经准备好了所需的容器并准备好接管负载。

简而言之,当以前的方法失败或需要大量停机时间时,基于kubernets的IT结构将使用最新的软件继续运行。你不能用棍子打败它。

听起来不错,不是吗?不过,库贝内斯不能包办一切。

例如,Kubernetes不是一个平台即服务(PaaS)系统。Kubernetes为类似于paas的服务提供了构建块,但与say Cloud Foundry不同,它不提供构建云本地应用程序所需的编程工具。而且,虽然您当然可以在Kubernetes上构建和使用CI/CD系统,但它本质上并不是CI/CD。而且,作为一种管理容器的方法,它没有附带应用程序级的服务,比如中间件或数据库。

相关:Kubernetes是起点,而不是终点

正因为如此,才有这么多的Kubernetes分布。这些服务包括Amazon Kubernetes (ek)弹性容器服务、Azure Kubernetes服务(AKS)、谷歌Kubernetes引擎(GKE)、IBM Cloud Kubernetes服务、Red Hat的OpenShift、Pivotal Container Service (PKS)和VMware Kubernetes引擎。除了提供在特定的云上部署Kubernetes所需的工具之外,它们还有各自的附加功能。

随着我们继续将应用程序从服务器和虚拟机转移到容器,Kubernetes是不可避免的。对于系统管理员来说,即使使用诸如Ansible、Puppet或Salt之类的DevOps工具,也无法管理数百或数千个临时容器。它需要一个专门的工具,这个工具就是Kubernetes。

以前有,现在仍然有其他容器编制工具。对于某些特殊用途,它们可能更适合您的公司。不过,一般来说,Kubernetes将是大多数企业默认的容器管理选择。

因为Kubernetes可以跨多个平台运行,即使它们是由竞争对手的云业务运行的,Kubernetes也成为混合云的一个流行选择。这并不容易。还没有。但是,许多Kubernetes分销商正在努力并尽可能快地交付易于部署的基于Kubernetes的混合云。这将使您能够运行混合云,将后端数据保存在私有云中,而将公共云用于前端接口。

综上所述,如果你还没有经营Kubernetes,你很快就会有。正如Linux从根本上改变了服务器操作系统空间,vm导致了云的兴起,Kubernetes将带领我们走向基于容器的分布式计算。

免责声明:本文由用户上传,如有侵权请联系删除!