Build application architecture
Introduction to the build application
Alauda Container Platform 是一个用于开发和运行容器化应用的平台。它旨在使应用及其支持的数据中心能够从少量机器和应用扩展到数千台机器,服务数百万客户。
基于 Kubernetes 构建,Alauda Container Platform 利用同样强大的技术,支持大规模电信、流媒体视频、游戏、银行及其他关键应用。这一基础使您能够将容器化应用扩展到混合环境——从本地基础设施到多云部署。
Core components
Archon
提供用于应用和资源管理操作的高级 API。作为控制平面组件,Archon 仅运行在 global 集群上,作为集群范围操作的中央管理接口。其 API 层支持对整个平台的应用、命名空间和基础设施资源进行声明式配置。
Metis
作为 business clusters 中的多功能控制器,提供关键的集群级操作:
- Webhook 管理:用于资源校验的 Admission webhook,包括资源配额和资源标签策略的执行。
- 状态同步:通过以下方式维护分布式组件间的一致性:
Helm chart应用状态的调和Project quota的同步Application状态更新(写入Application.status)
Captain controller manager
作为专门在 global cluster 上运行的 Helm chart 应用生命周期管理控制器,其职责包括:
- Chart 安装:协调跨集群的
Helm chart部署 - 版本管理:处理
Helm chart发布的无缝升级和回滚 - 卸载:彻底移除
Helm chart应用及相关资源 - 发布跟踪:维护所有已部署
Helm chart发布的状态和历史
Icarus
提供 Container Platform 的集中式基于 Web 的管理界面。作为展示层组件,Icarus:
- 提供全面的监控面板视图,用于集群健康状态监控
- 支持基于 GUI 的应用部署和管理流程
- 实现基于 Kubernetes RBAC 的多租户管理:
- 通过命名空间隔离区分租户账户
- 管理每个租户的资源访问权限
- 提供租户特定的视图隔离
- 仅运行在
global cluster上,作为多集群操作的统一控制点