【外评】为什么以及何时需要使用 Kubernetes?
听到 “Kubernetes “或 “K8S “这个词,有些人可能会认为这是一种只有大型企业才会使用的复杂应用。虽然情况往往如此,但小公司也能从使用 K8S 中受益。
我们将探讨您可能需要 Kubernetes 的情况及其原因。
先决条件
在我们深入探讨 Kubernetes (K8S) 的用处之前,有一点很重要,那就是要注意,对于没有 Linux 或 DevOps 经验的人来说,建立一个集群可能具有挑战性。
这就是 Vultr、Digital Ocean 或 AWS 等平台发挥作用的地方,因为它们可以帮助设置基础设施。不过,Kubernetes 仍然需要特殊的配置文件,而且监控集群可能还需要 Rancher 这样的平台。
尽管学习曲线很陡峭,但一旦熟练掌握,Kubernetes 就能帮你解决很多问题。
使用案例
- 数字代理商:如果您有多个客户,您可能会知道管理这些客户是一件非常困难的事情。
- 子域:如果您需要容器化,K8S 将是您的救星。如 Shopify、Hashnode 等公司。
- 金融服务:在银行或保险等对安全性和合规性要求极高的行业,Kubernetes 可以提供强大的隔离和安全功能。
- 视频流服务:对于提供视频流的平台而言,Kubernetes 有助于管理视频内容的分发和扩展,以便同时向大量用户提供视频内容。
现在,让我们来探讨一下 K8S 的一些优势,你可能会发现它们很有用。
高可用性
如果您经营的机构有多个客户,需要全年高正常运行时间和持续监控,Kubernetes (K8S) 可能是您的正确解决方案。
首先,通过适当的设置,您可以实现高达 99.9999% 的正常运行时间。对于不熟悉的人来说,四个 9 表示非常高的可靠性。这类似于 Shopify 如何保持高正常运行时间,确保商店很少离线。
在单个集群中,如果您有三个小型节点,每个节点有 4GB 内存,您的应用程序几乎永远不会停止工作。
容器化
这是 K8S 最重要的功能之一。假设您创建了一个类似 Hashnode 的应用程序,每个用户都有自己的子域。将每个用户放在同一个数据库中可能不是最好的办法。
首先,如果所有用户都使用一个应用程序,而其中一部分被黑客攻击或出现故障,那么所有其他部分也很可能瘫痪。
如果为每个用户都设置了唯一的应用程序接口、数据库和前端,那么在最坏的情况下,您的应用程序只会出现部分宕机。
即使出现故障的代码被发布到生产中,也不会立即部署到所有商店。相反,它会逐步部署到一些商店,从而确保不会出现任何故障。
自我修复
Kubernetes 具有自愈能力。当其中一个容器出现故障时,它会自动启动一个新的容器。由于采用了多节点架构,因此不会出现宕机。负载平衡器会简单地将所有流量重定向到工作节点。
结论
总之,Kubernetes 为管理各行各业的复杂应用提供了强大的解决方案。无论您运行的是对正常运行时间要求较高的数字机构,还是需要安全交易的金融服务,抑或是需要可扩展分发的视频流平台,Kubernetes 都能显著增强您的运营能力。
其高可用性、容器化和自我修复等功能不仅能确保持续服务,还能提高应用程序的整体安全性和效率。
本文文字及图片出自 When and why you should use Kubernetes?
你也许感兴趣的:
- 【译文】用 Kubernetes 值得吗?
- Kubernetes 开源9年,但我们已经有了 8 年的踩坑血泪史
- 为什么大型工程团队要在 Kubernetes 上进行测试?
- Kubernetes 真的很难吗?
- WebAssembly 真能取代 Kubernetes?
- 是否应该在 Kubernetes 上运行数据库?
- 人手一套的 K8S 命令集合,它来了!
- Kubernetes 之父:他们现在在哪里?
- 必看:Kubernetes 开发环境对比
- 既然有了Docker, 为什么还要Kubernetes ?
你对本文的反应是: