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

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

3天内不再提示

云计算:Kubernetes架构的八个问题解答

如意 来源:企业网D1Net 作者:Christopher Tozzi 2020-08-19 11:24 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Kubernetes的架构非常适合大规模的组织,但是对于中小组织来说,它可能会过于复杂。

作为开源容器编排器,Kubernetes已经成为组织部署容器化应用程序的实际解决方案。这其中有一些充分的理由,其中包括Kubernetes提供高度的可靠性、自动化、可扩展性的事实。尽管如此,有此行业人士还是认为Kubernetes架构过于复杂。虽然已经有6年以上的应用历史,但它还是有许多缺点。其中一些缺点是Kubernetes本身所固有的,而另一些缺点则是围绕该平台成长起来的生态系统的产物。

在部署Kubernetes之前,企业需要考虑以下开源容器编排器的一些问题。

1. Kubernetes是为大规模的公司设计的

首先,Kubernetes架构始终是为需要管理超大规模应用程序环境的组织而构建的。对于谷歌公司来说(Borg编排者构成了成为开源Kubernetes项目的基础),Kubernetes是一个很好的工具。而对于拥有数十个数据中心以及数千个分布在其中的应用程序和服务的Netflix、Facebook、AWS等其他大规模的公司来说,也是如此。

但是如果是一个规模较小的组织,并且只有一个可能只部署十几个应用程序的数据中心,那么Kubernetes架构无疑规模过于庞大,这可能就像驾驶推土机为后院花园翻土一样大材小用。除非是大规模使用,否则配置和管理它需要解决大量的问题。

2. Kubernetes有很多发行版

Kubernetes架构的另一个问题是,Kubernetes有很多发行版,以及大量与其相关的不同的工具、理念和观点。

当然,在某种程度上,任何开源生态系统中都会发生分裂。例如,RedHat Linux与Ubuntu Linux具有不同的软件包管理器、管理工具等。但是,RedHat和Ubuntu的相似之处远大于区别。对于使用Red Hat系统的管理员来说,如果要迁移到Ubuntu,则不需要花费六个月的时间自学新工具。

行业专家并不认为Kubernetes也是如此。如果现在正在使用OpenShift,但又想切换到VMware Tanzu,则其学习过程将非常艰巨。尽管这两个Kubernetes发行版都使用相同的基础平台Kubernetes,但是它们添加的方法和工具却截然不同。

基于云计算的Kubernetes服务也有类似的分裂。Google Kubernetes Engine(GKE)与Amazon EKS(相当于AWS云)等平台相比,具有截然不同的用户体验和管理工具套件。

当然,这并不是Kubernetes架构本身的错,而是不同供应商尝试使其Kubernetes产品实现差异化的结果。但是从Kubernetes用户的角度来看,这仍然是一个现实问题。

3. Kubernetes是多个部分组成的平台

人们将Kubernetes当作一个平台,但实际上它由6个以上的不同组件组成。这意味着当安装或更新Kubernetes时,必须分别处理每个组件。而且大多数Kubernetes发行版都缺乏执行这些操作的自动化解决方案。

当然,Kubernetes是一个复杂的平台,它需要多个部分组合才能工作。但是与其他复杂平台相比,Kubernetes在将其各个部分集成到一个易于管理的整体方面做得特别糟糕。典型Linux发行版也包含许多不同的软件。但是用户能够以集中、简化的方式安装和管理它们。Kubernetes架构并非如此。

4. Kubernetes不会自动地保证高可用性

使用Kubernetes的最常被提及的原因之一是,它以一种神奇的方式管理应用程序,保证它们永远不会失败,即使部分基础设施出现故障。

确实,Kubernetes架构可以做出明智的自动决策,以决定将工作负载放置在集群中的位置。但是,Kubernetes并不是实现高可用性的灵丹妙药。例如,它将在只有一个主节点的生产环境中运行,这是关闭整个集群的方法(如果主要服务器出现故障,则整个集群将基本上停止运行)。

Kubernetes也不能自动保证在集群中运行的不同工作负载之间正确分配资源。要进行设置,用户需要人工设置资源配额。

5.很难人工控制Kubernetes

尽管Kubernetes需要大量的人工干预才能提供高可用性,但是如果确实要这样做,它会使人工控制变得相当困难。

可以肯定的是,有一些方法可以修改Kubernetes执行的探测时间,以确定容器是否正常运行,或者强制工作负载在集群中的特定服务器上运行。但是,Kubernetes架构的设计并不期望管理员会进行这些人工更改。

如上所述,Kubernetes首先是针对Web规模的部署,这是有道理的。如果用户有数千台服务器和数百个工作负载,将不会人工配置许多东西。但是如果是一家规模较小的公司,并且想要更好地控制集群中工作负载的结构方式,那么采用Kubernetes很难做到这一点。

6. Kubernetes监视和性能优化面临挑战

Kubernetes试图在保持工作负载正常运行方面做得很好(尽管如上所述,其能力取决于诸如用户设置的管理者数量以及如何组织资源分配等因素)。

但是Kubernetes架构并不能帮助用户监视工作负载或确保它们表现最佳。它不会在出现问题时向用户发出警报,而且从集群中收集监视数据也不太容易。Kubernetes发行版随附的大多数监视仪表板也无法提供对环境的深入可见性。采用第三方工具可以使用户获得可见性,但是如果要运行Kubernetes,则必须设置、学习和管理这些工具。

同样,Kubernetes也不擅长帮助用户优化成本。它不会通知用户集群中的服务器是否仅以20%的容量使用,这可能意味着用户在过度配置的基础设施方面浪费了资金。同样,第三方工具可以帮助用户应对诸如此类的挑战,但它们会增加复杂性。

7. Kubernetes将所有内容简化为代码

在Kubernetes中,完成几乎所有任务都需要用户编写代码。通常情况下,其代码采用YAML文件的形式,然后必须在Kubernetes命令行上应用它们。

许多人会把Kubernetes架构的所有代码要求作为功能而不是错误。然而,虽然使用单一方法和工具(即YAML文件)可以管理整个平台,但确实希望Kubernetes能为需要它们的人提供其他选择。

有时候,用户不想编写一个很长的YAML文件(或从GitHub中提取一个文件,然后人工调整其中的随机部分以适合其环境)来部署简单的工作负载。用户希望按下一个按钮或运行一个简单的命令(这指的是不需要十几个参数的kubectl命令,其中许多参数都配置有必须复制和粘贴的数据串)。需要在Kubernetes中做一些简单的事情。但是这种情况很少发生。

8. Kubernetes希望控制一切

Kubernetes的最后一个问题是,它的设计并不能很好地与其他类型的系统配合。它希望成为用户用来部署和管理应用程序的唯一平台。

如果用户的所有工作负载都是容器化的,并且可以由Kubernetes进行协调,这是一个很好的结果。但是,如果用户拥有无法作为容器运行的原有应用程序怎么办?或者,如果想在Kubernetes集群上运行一部分工作负载,而又有一部分在外部运行呢?Kubernetes不提供执行这些操作的原生功能。其设计的前提是希望一直在容器中运行所有内容。

结论

Kubernetes其实是编排大型容器化应用程序的强大工具。 Kubernetes有很多适合的用例。

但是Kubernetes架构也有一些缺点。总体而言,如果用户要管理原有的工作负载或部署规模不足以证明Kubernetes带来的所有复杂性,那么就不是一个很好的解决方案。为了证明它的全部价值,Kubernetes应该解决这些问题,以便它可以完全匹配其在IT生态系统某些领域中享有的声誉。

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

    关注

    39

    文章

    8003

    浏览量

    143099
  • 架构
    +关注

    关注

    1

    文章

    533

    浏览量

    26506
  • kubernetes
    +关注

    关注

    0

    文章

    256

    浏览量

    9412
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    四探针法测电阻的原理与常见问题解答

    法甚至被用作校正其他方法的基准。下文,Xfilm埃利将系统阐述四探针法的基本原理,并对实际应用中遇到的常见问题进行详细解答。四探针法测电阻的基本原理/Xfilm1
    的头像 发表于 12-04 18:08 60次阅读
    四探针法测电阻的原理与常见<b class='flag-5'>问题解答</b>

    先收藏系列 工业相机的六问六答!

    工业相机常用问题解答
    的头像 发表于 10-22 09:26 191次阅读
    先收藏系列 工业相机的六问六答!

    示波器问题解答干货

    很多人被绕了进去,但是只要注意以下一点就可以了: 注意:示波器是一实时工具,示波器显示的,就是当前时刻正在发生的。 为什么要强调这个问题呢?因为曾经有人问我:我的示波器怎么这么慢,显示一条波形要等十几秒钟,作
    的头像 发表于 10-13 14:51 522次阅读
    示波器<b class='flag-5'>问题解答</b>干货

    晶科能源Tiger Neo 3.0的问题解答(1)

    自晶科Tiger Neo 3.0 产品AI助手上线以来,后台咨询量飙升!看来大家对我们的旗舰产品——Tiger Neo 3.0 充满了好奇与期待。我们认真梳理了大家问得最频繁、最热门的问题,进行解答
    的头像 发表于 08-20 14:09 640次阅读

    汽车喇叭气密性检测仪常见问题解答

    在汽车生产和检测环节,汽车喇叭气密性检测仪起着至关重要的作用。以下是一些关于它的常见问题解答。(1)检测仪的精度受哪些因素影响?检测仪的精度主要受环境因素、仪器本身的稳定性以及被测喇叭的特性
    的头像 发表于 06-25 11:52 380次阅读
    汽车喇叭气密性检测仪常见<b class='flag-5'>问题解答</b>

    变频器与传动使用的常见问题解答

    变频器与传动系统作为工业自动化领域的核心设备,其稳定运行直接影响生产效率和设备寿命。以下是针对实际应用中高频问题的系统性解答,结合技术原理与现场经验,为从业者提供实用参考。 一、电机过热问题解析 某
    的头像 发表于 06-10 07:35 433次阅读
    变频器与传动使用的常见<b class='flag-5'>问题解答</b>

    DeepSeek企业部署依托raksmart裸机具体操作指南

    以下是基于RakSmart裸机部署DeepSeek企业的详细操作指南,分为核心步骤、注意事项及常见问题解答,主机推荐小编为您整理发布,希望对您有帮助。
    的头像 发表于 03-20 11:18 631次阅读

    揭秘计算架构的分层奥秘

    的重要基石。那么,计算架构究竟是如何构建的呢?今天,我们带您揭秘计算架构的分层奥秘——边缘层
    的头像 发表于 02-26 17:41 972次阅读

    常见问题解答:低压运算放大器

    本应用笔记解答了一些关于低压运算放大器的常见问题。
    的头像 发表于 02-21 14:10 879次阅读
    常见<b class='flag-5'>问题解答</b>:低压运算放大器

    HPC计算的技术架构

    HPC计算结合了HPC的强大计算能力和计算的弹性、可扩展性,为用户提供了按需获取高性能计算
    的头像 发表于 02-05 14:51 689次阅读

    使用 Flexus 服务器 X 实例部署 Kubernetes 图形化管理平台

    Kubernetes 作为当今最流行的容器编排平台,随着计算、微服务架构和 DevOps 文化的普及,Kubernetes 在自动化部署、
    的头像 发表于 01-21 16:14 554次阅读
    使用 Flexus <b class='flag-5'>云</b>服务器 X 实例部署 <b class='flag-5'>Kubernetes</b> 图形化管理平台

    【斯丹麦德电子】常见问题解答:干簧继电器在测试与测量中的应用

    电子发烧友网站提供《【斯丹麦德电子】常见问题解答:干簧继电器在测试与测量中的应用.pdf》资料免费下载
    发表于 01-20 10:44 0次下载

    SiC模块应用的问题解答

    碳中和背景下,绿色能源市场迎来了诸多机遇。新能源发展已进入全新的阶段,风能、光能作为新能源领域的先锋力量,正在以快速的增长态势推动这场绿色能源革命。
    的头像 发表于 01-16 09:17 1318次阅读

    用txb0108在ARM9 S3C2440的八个数据口和计数器8254-2的八个数据口做了一转换,8254-2严重发烫是为什么?

    我用txb0108在ARM9 S3C2440(3.3V)的八个数据口(DATA0~DATA7)和计数器8254-2(5V)的八个数据口做了一转换,直接导致计数器8254-2严重发烫。这是为什么呢?
    发表于 01-15 07:59

    使用ADS1299开发套件时,如何为八个通道输入提供一共同的外部参考?

    请问在使用ADS1299开发套件时,想要为八个通道输入提供一共同的外部参考,在硬件和TI提供的软件上该如何设置?
    发表于 12-16 08:50