容器编排是指软件容器的自动化安排、协调和管理。
我们为什么需要这个?让我们从下图开始:
如果您当前的软件基础架构看起来像这样——也许 Nginx/Apache + PHP/Python/Ruby/Node.js 应用程序运行在与复制数据库通信的几个容器上——那么您可能不需要容器编排,您可能可以管理所有内容你自己。
如果您的应用程序不断增长怎么办?假设您不断添加越来越多的功能,直到它变成一个几乎无法维护的庞大单体,并且消耗过多的 CPU 和 RAM。您最终决定将您的应用程序拆分为更小的块,每个块负责一个特定的任务,由一个团队维护,也就是。微服务。
您的基础架构现在看起来像这样:
您现在需要一个缓存层——也可能是一个队列系统——来提高性能,能够异步处理任务并在服务之间快速共享数据。您可能还希望跨多个服务器运行每个微服务的多个实例,以使其在生产环境中具有高可用性……您知道我的目标是什么。
您现在必须考虑以下挑战:
服务发现
负载均衡
秘密/配置/存储管理
健康检查
容器和节点的自动[缩放/重启/修复]
零停机部署
这就是容器编排平台变得非常有用和强大的地方,因为它们为大多数挑战提供了解决方案。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习