当前位置:首页 > 云计算 > 为什么你不应该使用Kubernetes? > 正文

为什么你不应该使用Kubernetes?

导读:Kubernetes真的符合您的堆栈吗?许多团队乐于开始使用Kubernetes。有些人对Kubernetes提供的弹性、弹性、便携性、可靠性和其他优势感兴趣。有些人是技术爱好者,他们只是想有机

Kubernetes真的符合您的堆栈吗?

AI人工智能网

许多团队乐于开始使用Kubernetes。有些人对Kubernetes提供的弹性、弹性、便携性、可靠性和其他优势感兴趣。有些人是技术爱好者,他们只是想有机会利用这个平台了解更多。一些开发人员希望获得使用它的经验,这样他们就可以在简历中添加另一项急需的技能。通常,今天,大多数开发人员希望在某个时候使用Kubernetes进行工作。

这可能是一个非常好的主意,但事实并非如此。

Kubernetes旨在解决分布式架构问题

根据公文网站的定义:

" Kubernetes为您灵活运行分布式系统提供了一个框架。它负责2+扩展和故障转移,提供部署模式等。”它不是专门为分布式系统设计的,而是为容器转换应用程序而制造的。尽管如此,它确实提供了许多资源,使得管理和扩展分布式系统(如微服务解决方案)变得更加容易。它也被认为是一个编排系统。

自动化和编排是不同的,但却是相关的概念。自动化通过减少或取代与IT系统的手动交互,并使用软件执行任务来降低成本、复杂性和错误,从而帮助您提高业务效率。

通常,自动化指的是自动化一个单一的任务。这与业务流程不同,业务流程是一种方法,通过这种方法,您可以自动执行涉及许多不同系统中许多步骤的流程或工作流。当您开始将自动化构建到流程中时,您可以安排它们自动运行。

什么是编舞?红帽官方网站

换句话说,Kubernetes使管理复杂的解决方案变得更容易,如果没有合适的编排系统,这些解决方案很难维护。虽然您可以自己实现DevOps工程实践,但是如果您想从几十个服务扩展到几百个服务,您就不能扩展。

Kubernetes非常复杂。

为了利用其功能,开发人员和信息技术操作人员必须具备容器、网络、安全、可移植性、灵活性和Kubernetes的知识。为了正确利用其工作负载,您应该了解每个组件是如何工作的。要管理群集,您应该了解其体系结构、存储、应用编程接口和管理系统,这与传统的虚拟化环境有很大不同。为了扩展解决方案,您应该学习如何集成工具来部署、监控和跟踪服务,如Helm和Istio。这里添加了许多新概念,因此您的团队必须做好迎接这一挑战的准备。

Kubernetes的小型解决方案非常昂贵

为了理解原因,让我们加强弹性,它是Kubernetes的关键概念之一。为了利用这一优势,您需要额外的节点-超过运行所需的最小数量应用程序。如果一个节点出现故障,请求的Pod将被重新定位到可用节点。对于生产工作负载,建议至少有三个节点是灵活的。

不难想象,如果你只招待a 应用程序,那就不值得了。但是,即使您有十个或更多,您也必须考虑集群的成本是否值得维护。

维护环境的成本还包括运营支持。平台越复杂,参与的专业人员就越多。这可能意味着雇佣第三方专业公司来提供支持或解决方案,包括支持服务,如Openshift。

何时选择Kubernetes

根据您正在使用的体系结构、2+的数量、它们之间的依赖程度以及团队的操作能力,可以检查Kubernetes是否是所有可用技术中的合适选择。

对于容器的网络应用程序,您将获得一个完全可用的生产环境。有了标准程序、SSL功能和应用程序的洞察力,您可以拥有一个安全、可扩展和受监控的环境,而无需任何操作。

如果只处理孤立的应用程序或少量连接的应用程序实例,将Azure网络应用程序和在同一虚拟网络中运行的容器实例结合起来可能就足够了。

另一方面,如果你有越来越多的容器到应用程序,在Kubernetes中托管它们会很有趣。您将能够在一个集中的环境中托管多种类型的应用程序,如网络应用程序,应用编程接口和重复性工作。您的团队将能够专注于Kubernetes而不是几个基于云的解决方案。

如果您想处理分布式方案,如微服务,请继续。分布式体系结构非常复杂,而Kubernetes旨在使其更加简单。除了Kubernetes之外,我认为没有任何其他平台是完整的和可扩展的。

结论

当您处理少量容器变更应用程序时,彼此隔离或互不依赖,其他主机选项(例如Azure网络应用程序容器或Azure容器实例)或其组合可能更简单,甚至更便宜。

如果您的团队对Kubernetes感到满意,并且您有越来越多的容器和应用程序,那么在一个Kubernetes平台上集中托管是值得的(例如,Azure Kubernetes服务)。

Kubernetes是一个旨在提高性能和减少分布式系统操作量的平台。基本上,这降低了复杂场景(例如,微服务)的操作复杂性。

如果您没有处理大量的应用程序,不要使用分布式架构或者没有专业人员在工作,那么您将无法利用Kubernetes提供的优势,因为它不是为您而构建的。您最终会给解决方案增加意想不到的和不必要的复杂性。

[编辑:赵宁宁电话:(010) 68476606]表扬0 Kubernetes 容器 应用程序分享:大家都在看,猜你喜欢什么


推荐阅读:

      为什么你不应该使用Kubernetes?

最新动态