Murano 数据源驱动¶
https://blueprints.launchpad.net/congress/+spec/murano-driver
此蓝图旨在为 Murano 添加一个数据源驱动
问题描述¶
我们需要一个数据源来获取 Murano 环境和应用程序相关的数据,以便在应用程序服务交付期间和交付后定义策略
提议的变更¶
添加一个数据源驱动,将 Congress 与 Murano 集成,并包含以下数据表。
数据表
murano:objects(object_id, owner_id, type)
此表包含环境中每个 MuranoPL 对象实例。
object_id - Murano 中使用的对象的 UUID
owner_id - Murano 中使用的拥有对象 UUID
type - Murano 中使用的完整类型标识字符串(例如,io.murano.Environment,…)
murano:parent-types(id, parent_type)
此表包含 obj_id 对象的父类型。
id - Murano 中使用的对象的 UUID
parent_type - 父对象的完整类型标识字符串
请注意,Murano 支持多重继承,因此一个对象可能有多个父类型
murano:properties(id, name, value)
此表存储对象的属性。对于多重基数属性,这里可能有多个记录。
id - Murano 中使用的对象的 UUID
name - 属性名称
value - 属性值
引用类类型(即另一个对象)的 MuranoPL 属性存储在 murano:relationship 中。具有结构的属性没有直接映射到这里 - 必须将其组件化存储在这里。
murano:relationships(source_id, target_id, name)
此表存储对象之间的关系(即 MuranoPL 属性到 class)。
source_id - 源对象的 UUID
target_id - 目标对象的 UUID
name - 源对象和目标对象之间的关系名称
对于多重基数关系,表中会有多个记录。
murano:states(id, state)
此表存储 Murano 环境的 EnvironmentStatus
id - 环境的 UUID
state - 环境的状态
状态将是 ‘READY’、‘PENDING’、‘DEPLOYING’、‘DEPLOY_FAILURE’、‘DELETING’、‘DELETE_FAILURE’ 中的一个。
备选方案¶
N/A
策略¶
我们将基于驱动程序中定义的数据表,为 Murano 应用程序提供部署前和部署后策略。
部署前策略将涵盖应用程序服务交付期间的策略,并利用 Congress 的模拟功能。
部署后策略将涵盖对已交付服务实例的监控策略。
策略动作¶
第二阶段将添加操作。
数据源¶
Murano
数据模型影响¶
N/A
REST API 影响¶
N/A
安全影响¶
N/A
通知影响¶
N/A
其他最终用户影响¶
N/A
性能影响¶
N/A
其他部署者影响¶
N/A
开发者影响¶
N/A
依赖项¶
Murano API
测试¶
单元测试
集成测试
Tempest 测试
文档影响¶
在标准文档位置添加新文档