Node Group Template 和 Cluster Template 的可移植性¶
https://blueprints.launchpad.net/sahara/+spec/portable-node-group-and-cluster-templates
Sahara 允许创建 Node Group Template 和 Cluster Template。但是,当需要在另一个 OpenStack 部署中创建具有相同参数的模板时,必须手动创建新模板并重写参数。此更改建议创建函数,将这些模板导出到 JSON 文件,并在以后导入它们。
问题描述¶
Sahara 提供了创建 Node Group 和 Cluster 模板的功能。如果用户可以访问多个云,或者经常重新部署开发环境,则重新创建所有模板非常耗时。我们的目标是允许用户选择下载模板,并上传现有模板到 Sahara,以便更快地进行设置。
提议的变更¶
此更改建议允许导入和导出 Cluster Template 和 Node Group Template。使用 node_group_template_get(node_group_template_id) 和 node_group_template_create(parameters) 连接到数据库。模板在导出之前将被修改,以确保不导出 ID 和其他敏感信息。导入模板时,将请求一些其他信息。REST API 更改:Node Group Template 接口 * node_group_template_export(node_group_template_id) - 将 Node Group Template 导出到 JSON 文件 Cluster Template 接口 * cluster_template_export(cluster_template_id) - 将 Cluster Template 导出到 JSON 文件 UI 更改:Node Group Template 接口:* 导出 Node Group Template 的字段 * 导入 Node Group Template 的字段 - 使用 ngt create Cluster Template 接口:* 导出 Cluster Template 的字段 * 导入 Cluster Template 的字段 - 使用 cluster create CLI 更改:dataprocessing node group template export dataprocessing node group template import dataprocessing cluster template export dataprocessing cluster template import
替代方案¶
一个明确的替代方案是保持原样,但这使得 Sahara 在之前配置过的情况下难以配置和重新配置。
数据模型影响¶
无
REST API 影响¶
node-group-templates/{NODE_GROUP_TEMPLATE_ID}/export
cluster-template/{CLUSTER_TEMPLATE_ID}/export
其他最终用户影响¶
Node Group Template 和 Cluster Template 的导出和导入功能在 CLI 和 UI 中均可用。
部署者影响¶
简化的部署,部署者可以在需要时下载预先存在的模板。
开发者影响¶
无
Sahara-image-elements impact¶
无
Sahara-dashboard / Horizon 影响¶
将添加一个导出模板的选项和另一个导入模板的选项。导入模板的选项将具有完成模板所需的字段。
实现¶
负责人¶
Iwona
tellesmvn
工作项¶
添加 Node Group Template 的导出功能
添加 Node Group Template 的导入功能
添加 Cluster Template 的导出功能
添加 Cluster Template 的导入功能
测试
文档
依赖项¶
无
测试¶
将添加单元测试。
文档影响¶
将添加有关新功能的文档。
参考资料¶
无