Kubernetes是什么?

Kubernetes(简称k8s)是一个开源平台,由谷歌开创,谷歌最初是一个简单的容器编排工具,但现在已经发展成为一个云本地平台。自2009年公共云出现以来,这是It领域最重要的进步之一,并拥有无与伦比的优势5年30%的增长率无论是市场收入还是整体使用率。

我们询问了开发人员、DevOps和企业,他们是如何使用Kubernetes的,这是一篇有趣的文章。

取得联系阅读我们的发现

Kubernetes因其吸引人的架构、大型且活跃的社区以及对可扩展性的持续需求而广受欢迎,这使得无数开发团队能够通过自动化容器编排来大规模交付和维苹果手机怎么用万博护软件。

Kubernetes描绘了应用程序应该如何工作以及如何与其他应用程序交互。由于其灵活性,它可以根据需要向上或向下扩展服务,执行滚动更新,在应用程序的不同版本之间切换流量以测试特性或回滚有问题的部署。

Kubernetes已经成为希望构建其多云环境的组织的首选。所有的公有云都采用了Kubernetes,并提供了自己的发行版,如AWS弹性容器服务、谷歌Kubernetes引擎和Azure Kubernetes服务。

容器是什么?

容器是一种允许用户分割机器的技术,它可以在同一内核和硬件上运行多个应用程序(在进程容器的情况下)或操作系统实例(在系统容器的情况下),同时保持工作负载之间的隔离。容器是虚拟化基础设施的一种现代方式,比传统虚拟机更轻量级:单个主机操作系统中的所有容器共享内核和其他资源,需要更少的内存空间,确保更大的资源利用率和更短的启动时间。

在谷歌内部单独,至少每周产生有两亿个容器管理其巨大的操作。

Kubernetes历史和生态系统

Kubernetes(来自希腊语'κάβερχτης''舵手')最初由谷歌开发,Kubernete的设计受到谷歌'Borg'项目的严重影响 - 谷歌使用的类似系统来运行其大部分基础架构。kubernetes已被捐赠给云本机计算基金会,这是Linux基础和谷歌,思科,IBM,Docker,Microsoft,AWS和VMware之间的协作项目。

你知道吗?Kubernetes logo中使用的字体是Ubuntu字体!

kubernetes的主要贡献者

Kubernetes是如何工作的?

Kubernetes通过将一组物理或虚拟主机(称为“节点”)加入到集群中来管理容器。这就创造了一台“超级计算机”,它比任何一台单独的计算机都具有更快的处理速度、更大的存储容量和更强的网络能力。这些节点包括运行“pod”所需的所有服务,而“pod”又运行单个或多个容器。pod对应于Kubernetes中应用程序的单个实例。

群集中的一个(或更多对于较大的群集或高可用性)节点被指定为“控制平面”。然后,控制平面节点对群集作为编排层的负责 - 以最大化群集资源的方式调度和将任务分配给另一个“工作者”节点。与群集的所有操作员交互都通过此主节点,无论是对配置,执行或终止工作负载的更改,还是控制网络上的入口和出口。

控制平面还负责监视群集的所有方面,使其能够执行额外的有用功能,例如在发生故障时自动重新分配工作负载,缩放需要更多资源的任务,否则确保分配的工作负载始终正确运行。

下载Enterpr万博app下载地址多少ise Kubernetes datasheet

说Kubernetes

  • 一组运行Kubernetes管理的容器化应用程序的节点。

  • Kubernetes对象模型中用于承载容器的最小单元。

  • 控制平面节点

    编排层提供接口以定义,部署和管理容器的生命周期。

  • 工作者节点

    每个工作节点都可以将应用程序作为容器托管。Kubernetes集群通常有多个工作节点(至少一个)。

  • API服务器

    初级控制平面组件,其暴露Kubernetes API,在群集组件之间启用通信。

  • 控制器管理器

    监控群集状态的控制平面守护程序,并对群集进行所有必要的更改以达到其所需状态。

  • 集装箱运行时

    通过协调在容器中使用系统资源,该软件负责运行容器。

  • Kubelet

    在群集中的每个工作节点上运行的代理,并确保容器在POD中运行。

  • Kubectl

    用于控制Kubernetes集群的命令行工具。

  • Kubeproxy

    通过维护工作节点上的网络规则,实现工作节点之间的通信。

  • CNI经过

    容器网络接口是一个规范和一组工具,用于定义网络提供者和Kubernetes之间的网络接口。

  • CSI

    容器存储接口是数据存储工具和应用程序,用于与Kubernetes集群集成的数据存储工具和应用程序。

为什么使用Kubernetes ?

Kubernetes是一个运行应用程序和服务的平台。它是云本地的,提供了运营成本节约,更快的上市时间,并由一个大型社区维护。苹果手机怎么用万博开发人员喜欢基于容器的开发,因为它有助于将单个应用程序分解为更易于维护的微服务。Kubernetes允许他们的工作从开发无缝地转移到生产,从而使企业应用程序更快地推向市场。

Kubernetes的工作方式:

  • 在多个主机上策划集装箱
  • 确保集装箱化应用在所有环境中以相同的方式行事,从测试到生产
  • 控制和自动化应用程序部署和更新
  • 更有效地使用硬件以最大限度地减少运行集装箱应用程序所需的资源
  • 安装和添加存储以运行有状态应用程序
  • 动态扩展容器化应用程序及其资源
  • 声明性地管理服务,保证应用程序始终按预期运行
  • 具有自动放置、自动重启、自动复制和自动缩放功能的运行状况检查和自修复应用程序
  • 开源(Kubernetes的所有代码都在GitHub上),并由一个大型、活跃的社区进行维护苹果手机怎么用万博

什么kubernetes不是

Kubernetes是一个支持容器配置、自动化和管理功能的平台。它有一个巨大的工具生态系统,并且可以处理复杂的用例,这就是为什么许多人将它与传统的平台即服务(PaaS)混淆的原因。

重要的是区分两种解决方案。kubernetes,而不是paas没有:

  • 限制受支持的应用程序的类型,或者需要一个依赖处理框架
  • 要求应用程序用特定的编程语言编写,也不规定特定的配置语言/系统。
  • 部署源代码且不构建应用程序,尽管它可用于构建CI / CD管道
  • 提供应用程序级服务,如中间件、数据库和存储集群。这些组件可以通过附加组件与k8集成。
  • 提供或指示特定的日志、监视和警报组件

kubernetes从开发到生产

在当地和边缘地区经营库伯内特


Microk8S是一种生产级,CNCF认证的轻量级Kubernetes,用于使用单个命令部署单节点群集。它是一个Linux快照,在Ubuntu上自然运行所有Kubernetes服务,或支持捕捉的任何操作系统,包括20多个Linux发行版,Windows和MacOS。

MicroK8s是Kubernetes最简单的发行版,它打破了容器编排和云本地开发的门槛。由于其占地面积小,它是集群、工作站、CI/CD管道、物联网设备和小型边缘云的理想选择。

安装MicroK8s;

在您选择的基础架构上运行Kubernetes


部署规范的CharMed Kubernetes,一个高度可用,纯粹的上游多节点Kubernetes集群。它是一种全自动,模型驱动的曲目,用于小心记录,监控和警报并提供应用程序生命周期自动化功能。

它在最广泛的基础设施范围内进行了测试,并在裸金属,私人和公共云上部署。除了我们的Kubernetes之外,Canonical支持富含软件的丰富生态系统,可以集成在堆叠中。Canonical是Microsoft的主要开发合作伙伴之一,因为Ubuntu是Aks的操作系统。

部署Charmed Kubernetes›

让我们管理库伯内特吗
为你


不想雇佣自己的K8s专家团队的麻烦和成本?通过充分利用我们在Kubernetes部署和运营方面的经验,让您安心并专注于您的业务。

Canonical提供了一个完全托管的服务,可以管理许多人可能缺乏技能的复杂操作,比如安装、打补丁、扩展、监视和升级,并且没有停机时间。

如果您已经构建了集群,我们可以为您管理它们。我们还可以为您构建和管理它们,并在您准备好完全控制时将钥匙移交给您。

了解我们的托管Kubernetes服务>

Kubernetes资源

今天得到你的K8S问题

联系我们

Baidu