0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文解读Kubernetes的重要性

电子工程师 来源:xx 2019-06-02 10:06 次阅读

如果你对容器化感兴趣并且关注过,可能会听过许多关于Kubernetes的事情。随着云开发的重点转移到容器,Kubernetes等这些容器相关技术已经变得大受欢迎。什么是Kubernetes?为什么这项技术很重要呢?

企业遇到的问题与挑战

目前许多企业及其客户正在寻求更灵活、更快交付、并且在私有云,混合云,甚至多云环境下都可以运行的软件及系统。

然而,许多企业面临的是不同的软件环境具有不同的限制和复杂性。例如,如果开发团队在编写软件时考虑了某个操作系统,在其他操作系统运行时可能会遇到各种复杂的问题,对于底层硬件环境或云环境也是如此。

这些问题会在组织内部不停的造成内部冲突与消耗。开发团队可能会开发出因许多因素导致非常难以运维的软件。例如,软件迁移到新环境导致性能问题,甚至因一个小改动导致严重的问题。

容器:解决问题的方案

容器是解决方案之一。容器将软件运行时的所需依赖及运行环境全部打包在一起。这种特性将应用与底层基础架构分开。无论在哪里运行容器化应用程序,都将以相同的方式在相同的环境运行。这些特性听起来与虚拟机很像,但是有本质性的区别。

图1

如图1所示,使用虚拟化技术作为应用沙盒,就必须要由Hypervisor来负责创建虚拟机,这个虚拟机时真实存在的,并且它里面运行一个完整的GuestOS才能执行用户的应用进程。这就不可避免地带来了额外的资源消耗和占用。

而相比之下,容器化后的用户应用,却依然还是一个宿主机上的普通进程,这就意味着这些因为虚拟化而带来的性能损耗都是不存在的;另一个方面,使用linux namespace作为隔离手段的容器并不需要单独的GuestOS,这就使得容器额外的资源占用几乎可以忽略不计。

所以说,容器作为解决方案,“敏捷”和“高性能”是容器相较于虚拟机最大的优势,也是它能够在PaaS这种更细粒度的资源管理平台上大行其道的重要原因。

Kubernetes:容器的解决方案

容器听起来像是一个完美的解决方案,但使用容器也会产生一些问题。大型企业可能会产生大量容器,如何管理和部署,对所有容器化应用进行编排,这是一个非常复杂的问题。

由Google与RedHat公司共同主导的Kubernetes项目可以帮助解决这些问题。Kubernetes是一个管理,自动化和部署容器化应用的开源解决方案。

Kubernetes脱胎于Borg系统,而Borg系统一直以来都被誉为Google公司内部最强大的“秘密武器”。相对于Spanner、BigTable等相对上层的项目,Borg要承担的责任,是承载Google公司整个基础设施的核心依赖。在Google公司已经公开发表的基础设施体系论文中,Borg项目当仁不让地地位居整个基础设施技术栈的最底层。

图2

如图2,Borg和它的继任者Omega位于整个技术栈的最底层。正因这样,Borg可以说是Google最不可能开源的一个项目。而幸运的是得益于Docker项目和容器技术的风靡,它却已另外一种方式与开源社区见面,这就是Kubernetes。正式这样,Kubernetes依托着Borg的理论优势,在短短几个月内在市场中站稳了脚跟。

Kubernetes会带来的几点好处:

节约成本:Kubernetes集群以运维工作量少而闻名。企业团队不必编写自己的容器化脚本。团队成员也不必在“重新发明轮子“或者放弃共享基础设施的优势之间做出选择。还可以通过使用容器更加有效的降低硬件成本。

更短的交付周期:Kubernetes非常适合DevOps。良好的容器管理意味着只要软件运行,部署几乎总是无痛,这意味着更快部署。

IT灵活性:在现代企业中,软件可以在任意数量的私有和共享基础架构上运行。拥有容器管理解决方案意味着不必牺牲性能或进行重大调整来移动您的应用程序。您可以在任何业务需要的地方运行软件。这使团队更加灵活。

Kubernetes所擅长的,是按照用户的意愿和整个系统的规则,完全自动化的处理好容器之间的各种关系。其本质,是为用户提供一个具有普遍意义的容器编排工具。可以说,在容器云中,Kubernetes提供了一套基于容器构建分布式系统的基础依赖,其意义等同于Linux在操作系统中的地位。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 容器
    +关注

    关注

    0

    文章

    481

    浏览量

    21876
  • kubernetes
    +关注

    关注

    0

    文章

    219

    浏览量

    8567
收藏 人收藏

    评论

    相关推荐

    Kubernetes的Device Plugin设计解读

    摘要: Kubernetes的生态地位已经确立,可扩展性将是其发力的主战场。异构计算作为非常重要的新战场,Kubernetes非常重视。而异构计算需要强大的计算力和高性能网络,需要提供
    发表于 03-12 16:23

    BGA焊接温度控制重要性

    `请问BGA焊接温度控制重要性有哪些?`
    发表于 03-26 16:41

    Syncer模块的重要性是什么?

    我在我的项目中使用25G以太网IP。通过打开此IP的示例设计,我们可以看到许多SYNCER模块,个FSM模块和个流量生成器模块。我想问下这些Syncer模块的重要性是什么,我是否
    发表于 05-18 09:25

    代码规范的重要性是什么

    论代码规范的重要性
    发表于 05-19 13:07

    使用ODDR原语的重要性是什么?

    你好我将virtex5 LX50与具有应根据standardEIA / TIA-644 LVDS规范终止的输出数据的设备连接起来我在用着IBUFDS用于将输入LVDS转换为LVTTL,OBUFDS用于输出信号和时钟这是这样做的正确方法为此目的使用ODDR原语的重要性是什么?问候uzmeed
    发表于 06-17 14:59

    欠压保护的重要性

    欠压保护的重要性双电源供电时欠压保护电路的注意事项
    发表于 03-03 06:06

    什么是网络拓扑,它的重要性是什么?

    什么是网络拓扑,它的重要性是什么?
    发表于 03-17 06:50

    时钟的重要性

    运行执行指令,才能够做其他的处理 (点灯,串口,ADC),时钟的重要性不言而喻。为什么stm32需要多个时钟源?STM32本身十分复杂,外设非常多但我们实际使用的时候只会用到有限的几个外设,使用任何外设
    发表于 08-13 07:31

    时钟系统的重要性

    时钟系统就是CPU的脉搏,像人的心跳样,重要性不言而喻。由于STM32本身十分复杂,外设非常多,但并不是所有的外设都需要系统时钟那么高的频率,比如看门狗以及RTC只需要几十k的时钟即可。并且
    发表于 08-20 07:59

    论调节阀的重要性

    调节阀的重要性执行机构的选择  论调节阀的重要性:  1.控制阀是种节流装置,属于运动部件。与检测元件、变送器和控制器相比,在控制过程中,控制阀需要不断改变节流部分的过流面积,使控制变量的变化适应
    发表于 09-15 07:25

    ATPG是什么?ATPG有何重要性

    ATPG是什么?ATPG有何重要性?常见的DFT技术有哪几种?
    发表于 11-02 09:31

    时钟服务器的重要性是什么?

    时钟服务器的重要性是什么?
    发表于 11-08 08:31

    UPS的重要性

    中心机房的UPS太重要了,前不久就出现过停电坏了个磁盘陈列硬盘的事故,个2T的硬盘坏了,还好有个备用的硬盘使用,否则磁盘陈列里的资料就岌岌可危了。服务器多了,UPS的
    发表于 11-16 09:09

    arm汇编的重要性是什么?

    arm汇编的重要性是什么?
    发表于 11-30 08:03

    POE浪涌保护的重要性是什么?

    POE浪涌保护的重要性是什么?
    发表于 01-14 06:07