跳到主要内容
版本:3.1.0(预览)

如何定义堆栈和服务

服务定义

metainfo.xml 中定义服务。为服务指定唯一名称和版本,列出其组件,并提供 Python 3 生命周期脚本。组件使用 MASTERSLAVECLIENT 等类别;cardinality 表示允许的部署数量。

根据需要声明 commandScriptcustomCommandsrequiredServicesconfiguration-dependenciesosSpecifics 和生成的 configFiles。配置依赖告知 Ambari 组件所需的配置类型,以及哪些变更可能要求重启。软件包脚本和模板必须生成服务使用的文件。

服务可以定义 alerts.jsonquicklinks/quicklinks.jsonthemes 和 Service Advisor。服务级 metrics.json 描述 Ambari 控制平面保留的管理指标。当前 BIGTOP 服务还使用 telemetry.json 和遥测配置文件支持 Prometheus/VictoriaMetrics 监控链路;两者是用途不同、不能互相替代的契约。

堆栈定义

使用描述符、服务、仓库、配置和受支持的升级元数据定义堆栈版本。验证继承关系和完整组装的服务定义。当前示例包括 BIGTOP HDFSBIGTOP VictoriaMetrics

验证

在目标 Stack 上执行描述符验证、软件包与配置渲染、服务检查、自定义操作、Advisor 验证和升级测试。逐项确认引用的脚本、软件包、配置类型、仓库和遥测配置文件确实存在。目标操作系统和处理器架构必须明确;源码中存在某套构建配置,并不等于该平台已经获得生产认证。