阿里云 ACK One 多集群管理全面升级:多集群服务、多集群监控、两地三中心应用容灾
作者:宇汇
ACK One 概述
ACK One 是阿里云面向混合云、多集群、分布式计算等场景推出的分布式云容器平台,能够统一管理阿里云上、边缘、部署在客户数据中心以及其他云上的 Kubernetes 集群,并简化集群管理界面,让企业轻松应对多集群形态,从而灵活地根据自身业务和数据管控等需求,同时使部署在客户数据中心的集群也能获取云上弹性算力,实现“计算无界”。
三大重磅特性,覆盖三大场景,引领多集群管理新高度
多集群服务 -- 跨集群服务发现与访问
概述
使用 Kubernetes 原生的 Service,可以方便地在集群内发现和访问 Service,但无法实现跨集群的 Service 发现与访问。随着业务的发展,应用往往需要多集群部署,实现隔离性,高可用性,例如:多个开发生产集群,不同业务不同集群,不同组织维护的集群,以解决可用性和数据所有权要求,灵活分账等需求。同时,不同业务应用间需要相互访问,因此需要一个跨集群 Service 方案,应对多集群带来的挑战。
ACK One 多集群管理发布新特性多集群服务,通过多集群服务实现 Kubernetes 原生 Service 的跨集群访问,打破了多集群服务访问的边界。
场景一:跨集群服务发现与访问
ACK One 多集群服务支持 Kubernetes 社区多集群服务 API 标准,通过 ServiceExport、ServiceImport 对象实现跨集群的服务发现与访问。
如图中链路 0 所示:管理员通过主控实例下发应用、多集群服务 ServiceExport、ServiceImport、分发规则等资源。
如图中链路 1 所示:主控实例将应用和多集群服务资源,根据分发规则下发到关联集群中。
a.通过向 ACK Cluster 1 下发 ServiceExport 资源,定义 ACK Cluster 1 为服务提供者。
b.通过向 ACK Cluster 2 下发 ServiceImport 资源,定义 ACK Cluster 2 为服务消费者。
如图中链路 2 所示:ACK Cluster 2 上的 Client Pod 可以访问 ACK Cluster 1 上的 Service 1。
场景二:多集群服务高可用
如图中链路 0 所示:管理员通过主控实例下发应用、多集群服务 ServiceExport、ServiceImport、分发规则等资源。
如图中链路 1 所示:
a.通过 ACK One 主控实例,将服务 Service1 同时部署在 ACK Cluster 1 和 ACK Cluster 3 中,实现高可用部署。
b.通过向 ACK Cluster 1 和 ACK Cluster 3 下发 ServiceExport 资源,定义 ACK Cluster 1 和 ACK Cluster 3 为服务提供者。
c.通过向 ACK Cluster 2 下发 ServiceImport 资源,定义 ACK Cluster 2 为服务消费者。
如图中链路 2 所示:ACK Cluster 2 上的 Client Pod 可以负载均衡的访问 ACK Cluster 1 和 ACK Cluster 3 上的 Service 1。
多集群服务方案优势
相比 LoadBalance/Ingress 等传统的 Kubernetes 服务跨集群暴露方案,ACK One 多集群服务不需要引入额外的负载均衡资源,仅通过定义服务提供者,消费者,即可实现跨集群的服务发现与访问。
相比服务网格的多集群服务方案,ACK One 多集群服务的实现非常轻量,不需要引入 sidecar 容器,没有额外的网络延时。同时,ACK One 多集群服务是托管在 ACK One 控制面的,省去运维成本。
详细请参见文末:多集群服务。
多集群全局监控 -- 运维利器,全局监控大盘
概述
Prometheus 监控是 Kubernetes 集群监控的事实标准,在 ACK 容器服务中可以安装 Prometheus 监控组件,快速实现 ACK 集群监控,ACK 容器服务同时提供了大量的使用的监控大盘。但在多集群场景中,用户不得不单独维护每个集群的 Prometheus 监控组件。日常的运维中,需要频繁切换不同集群的监控大盘,在问题诊断中需要手工对比对各集群监控指标的差异。
ACK One 多集群全局监控基于单集群 Prometheus 的监控指标,通过多集群监控聚合实例汇总多个集群的监控指标,并提供多集群视角的全局监控大盘,让您可以在一个监控大盘上同时获取多个集群的监控指标,方便日常的运维工作。
全局监控大盘
目前支持的大盘包括:全局集群无状态应用监控,TopN 全局集群节点监控,TopN 全局集群 Pod 监控。同时,ACK One 全局监控支持自定义监控大盘,您可以通过聚合实例构建自己的多集群监控大盘。
详细请参见文末:多集群全局监控。
多集群两地三中心应用部署 -- 应用容灾新选择
概述
两地三中心是指在两个城市部署三个业务处理中心,即:生产中心、同城容灾中心、异地容灾中心。在一个城市部署 2 套环境形成同城双中心,同时处理业务并通过高速链路实现数据同步,可切换运行。在另一城市部署 1 套环境做异地灾备中心,做数据备份,当双中心同时故障时,异地灾备中心可切换处理业务。两地三中心容灾方案可以极大程度的保证业务的连续运行。
方案架构
使用 ACK One 的多集群管理应用分发功能,可以帮助企业统一管理 3 个 K8s 集群,实现应用在 3 个 K8s 集群快速部署升级,同时实现应用在 3 个 K8s 集群上的差异化配置。配合使用 GTM(全局流量管理)可以实现在故障发生时业务流量在 3 个 K8s 集群的自动切换。对 RDS 数据层面的数据复制,可参考 DTS 数据传输服务。
详细请参见文末:使用 ACK One 构建应用系统的两地三中心容灾方案。
总结
本文介绍了 ACK One 近期发布的 3 个主要特性,覆盖了多集群管理的 3 个主要场景,跨集群服务发现与访问、多集群全局监控、应用容灾。除多集群管理外,ACK One 更是支持连接并管理任何地域、任何基础设施上的 Kubernetes 集群,提供一致的管理和社区兼容的 API,支持对计算、网络、存储、安全、监控、日志、作业、应用、流量等进行统一运维管控。阿里云分布式云容器平台(简称 ACK One)是面向混合云、多集群、分布式计算、容灾等场景推出的企业级云原生平台。
分布式云容器平台 ACK One 产品免费公测中,欢迎点击此处前往 ACK One 产品详情页开通体验。
参考链接:
[1] 分布式云容器平台 ACK One:
https://www.aliyun.com/product/aliware/adcp
[2] ACK One 产品控制台:
https://cs.console.aliyun.com/one
[3] 多集群服务:
https://help.aliyun.com/document_detail/440680.html
[4] 多集群全局监控:
https://help.aliyun.com/document_detail/434106.html
[ 5] 多集群应用下发:
https://help.aliyun.com/document_detail/419336.html
[6] 使用 ACK One 构建应用系统的两地三中心容灾方案:
https://help.aliyun.com/document_detail/427364.html
如您想要了解更多关于 ACK One 的信息 ,欢迎钉钉搜索群号:35688562 进群交流。
版权声明: 本文为 InfoQ 作者【阿里巴巴云原生】的原创文章。
原文链接:【http://xie.infoq.cn/article/587ae6e232fa2ef3bb4e4cf07】。文章转载请联系作者。
评论