Skip to main content

概述

环境是 AutoMQ Cloud 重要的运维资源,本文介绍 AutoMQ Cloud 环境的定义、资源模型、内部属性、分类和使用建议。

本文中提及 AutoMQ 产品服务方、AutoMQ 服务方、AutoMQ,均特指安托盟丘(杭州)科技有限公司。

本文中提及的云厂商、公共云厂商等名词,均特指用户指定的 AutoMQ Cloud 底层依赖的云服务商服务,例如 AWS、GoogleCloud、Azure 、阿里云、腾讯云、华为云等厂商。

定义

环境是 AutoMQ Cloud 提供的一种逻辑抽象资源,用于确定 Kafka 在运行时层面需要共享的基础配置信息,并统一管理实际使用的 Kafka 实例(集群)。环境定义了例如基础设施类型、网络环境、权限策略等信息,后续所有的 Kafka 实例都归属于环境进行创建和管理。

环境的主要作用展开如下:

  • 约定 Kafka 服务的底层基础设施,明确基础设施的云厂商类型、地域、权限策略等基础信息。

  • 约定整套管控系统底层的网络拓扑、可用区拓扑、对外服务暴露方式等基础信息。

  • 约定跨实例公共的基础配置,例如 Metrics 集成配置。

环境根据底层资源的归属账号和运维责任差异分为 SaaS 环境和 BYOC 环境。SaaS 环境下所有物理资源归属于 AutoMQ 服务方,由 AutoMQ 服务方提供维护和管理;BYOC 环境下所有物理资源归属于用户,由用户授权 AutoMQ 服务方提供维护和管理。

模型关系

在 AutoMQ Cloud 的领域模型中,环境是运维管理产品实例的顶层资源,大概如下图所示:

内部属性

属性:基础设施配置

基础设施配置是AutoMQ Cloud 环境部署的必要配置,用于约定基础设施的类型、网络拓扑、权限策略等配置信息。后续环境控制台会使用该配置部署和管理实际的 Kafka 集群。

属性:集成配置

集成配置是在环境级别对跨集群通用的、用于对外数据集成的配置抽象。例如,Metrics 集成配置可以支持将环境内多个集群的 Metrics 数据推送到用户自定义的普罗米修斯集群,实现自定义监控和分析。

属性:环境版本

环境自身在技术实现上是一个软件底座,因此环境会伴随软件的持续迭代,定义了多个环境版本。环境版本的运维升级一般不影响上层的产品服务。建议用户定期更新到最新的环境版本,确保缺陷修复和功能优化。

属性:环境状态

环境状态展示了环境生命周期中各种服务状态,环境完整的生命周期过程会存在如下流程和状态:

  • 创建中: 初始创建环境操作是一个异步过程,创建操作完成时后台会异步部署完整的软件底座,该过程中用户不可操作任何变更,直到创建完成。

  • 运行中: 当前环境处于有效运行状态,可以正常提供内部产品实例的增删改查等运维使用操作。

  • 变更中: 当前环境执行运维变更、版本升级等操作,由于执行过程是异步的,隐藏需要等待完成,在此期间禁止任何对环境的操作变更。

  • 服务异常: 当前环境因执行创建、运维变更 或者底层基础设施异常导致的无法正常提供服务。

BYOC 环境

环境架构

如上文所述,BYOC 环境是由 AutoMQ Cloud 代理运维的环境,底层资源归属于用户自定义云账号下的 VPC,这种方式可以实现完整的数据隔离和自主控制。在该环境类型下,数据面系统和管控面系统如下图所示:

  • 资源位置: 管控面系统(环境控制台)和数据面系统(Kafka 服务集群)全部部署在用户自定义的网络环境中。

  • 网络暴露: 环境控制台可以根据用户选择,默认提供公网访问方式,也可以根据用户选择仅保留私网访问。数据面系统目前只支持私网访问。

  • 运维授权: BYOC 环境是完全私网隔离的私有环境,需要用户提供授权,AutoMQ 代替用户运维环境(问题排查和版本升级)。

  • 系统可观测: BYOC 环境通过云厂商提供的运维 Bucket 收集系统Metrics、日志数据,并由用户授权 AutoMQ 服务方进行只读访问,实现系统运行的监控、告警。

SaaS 环境

环境架构

如上文所述,SaaS 环境是由 AutoMQ Cloud 全托管运维的环境,底层资源归属和运维都由 AutoMQ 负责。在该环境类型下,数据面系统和管控面系统如下图所示: