检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
模板写作技巧 组件启动等待 假设,您要启动A(Application)和S(Service)两个组件,并且A依赖S(即:A -> S),A需要去连接S做业务。以A为Tomcat,S为MySQL为例。 AOS编排时,会根据模板要求先启动S,待S启动成功后(进程启动成功,实际S的业务
模板结构 模板样例 # 应用模板的版本信息 tosca_definitions_version: huaweicloud_tosca_version_1_0 # 应用模板的描述信息 description: Template for deploying a cloudserver
outputs 根据模板的要求,执行完一遍部署动作后,模板中定义的所有对象都会被创建。此时,如果需要更直观的看到一些部署结果,您可以把这个结果写在模板的输出章节。一般常见的输出包括:访问地址+端口,应用的URL,初始账号密码等。 outputs为可选项,用于定义模板生成资源栈运行时的
、返回值。一个好的模板也一样,良好的定义输入,编排,输出,模板就会更加的通用。使用这个模板,就可以方便的进行传递和分享。 图1 函数和模板对比 元素(云对象) 云对象,最常见的就是云资源,也可以是云服务,还包括云上的应用。AOS把各种云对象都当做一种元素,而模板就是元素的集合。
de_templates中的元素是否需要创建部署。 conditions格式: <条件名称>: <条件内置函数> ... 通过conditions控制node_templates中属性生效的格式如下: node_templates: <元素名称>: condition:
node_templates node_templates为必填项,用于定义该模板中编排的元素对象集合,其中所有对象均为元素。一个元素可以是一个应用、一个云服务资源。 node_templates格式: <元素名称>: type: <元素类型> properties: <元素属性>
mappings mappings为可选项,用于定义映射表。在基于模板创建资源栈时,可以根据输入的变量信息,通过get_in_map方法提取特定变量对应的内容。一个模板最多支持定义10个映射。 mappings格式: <映射名称>: <映射对象名称>: <映射对象属性名称>:
解析模板参数 功能介绍 解析模板参数(ParseTemplateVariables) 此API用于解析用户输入的模板中的参数(variable),将解析模板中的所有variable块并返回 如果用户传入的模板中定义了variable参数,则返回200和所有variable 如果用
和当前模板管理的ID不一致,则返回400 如果模板下只存在唯一模板版本,此模板版本将无法被删除,如果需要删除此模板版本,请调用DeleteTemplate。模板服务不允许存在没有模板版本的模板 请谨慎操作 调试 您可以在API Explorer中调试该接口,支持自动认证鉴权。API
模板简介 RFS服务主要包含模板和资源栈两部分,其中资源栈是指用户通过RFS服务创建的华为云资源的集合,而模板是用来创建、更新资源栈的脚本。 父主题: 资源编排
Service:定义ECS虚拟机、EIP的防攻击策略。 HuaweiCloud.APM.PinPoint:定义Java应用的调用链监控策略。 policies格式: <策略元素名称>: type: <策略元素类型> properties: <策略属性> targets: <策略作用对象>
如果想要模板更加的通用,就不能将元素的参数值都写成固定的。例如,启动虚拟机的镜像ID,建议将这个参数开放出来作为模板的输入,这样模板的使用者就可以自由的控制这个参数。并且在使用该模板,即部署资源栈时,才会设置真正需要使用的镜像ID。 inputs为可选项,用于定义基于模板创建资源
更新模板元数据 功能介绍 更新模板元数据(UpdateTemplateMetadata) 此API用于更新模板元数据 此api只支持更新模板描述 调试 您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
列举模板 功能介绍 列举模板(ListTemplates) 此API用于列举当前局点下用户所有的模板 默认按照生成时间降序排序,最新生成的模板排列在最前面 注意:目前返回全量模板信息,即不支持分页 如果没有任何模板,则返回空list 如果用户需要详细的模板版本信息,请调用ListTemplateVersions
String 模板的唯一ID,由模板服务随机生成 template_name String 用户希望创建的模板名称 template_description String 模板的描述。可用于客户识别自己的模板 create_time String 模板的生成时间,格式遵循RFC33
删除模板 功能介绍 删除模板(DeleteTemplate) 此API用于删除某个模板以及模板下的全部模板版本 请谨慎操作,删除模板将会删除模板下的所有模板版本。 template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时
获取模板版本内容 功能介绍 获取模板版本内容(ShowTemplateVersionContent) 此API用于获取用户的模板版本内容 template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允许先生成
get_attribute用于获取模板中定义的其他元素初始化后的结果。 语法 get_attribute: [resourceName, attributeName ] 如果attributeName对应的内容是一个结构体,包含多个key-vaule字段时,可以延伸定义。格式如下: get_attribute:
获取模板版本元数据 功能介绍 获取模板版本元数据(ShowTemplateVersionMetadata) 此API用于展示某一版本模板的元数据 template_id是模板的唯一Id。此Id由资源编排服务在生成模板的时候生成,为UUID。由于模板名仅仅在同一时间下唯一,即用户允
模板约束与限制 使用RFS服务进行模板部署,模板文件内容具有如下约束与限制: 模块的数量限制为25,模块嵌套深度限制为3。 不能使用Provisioners功能、Backend Configuration功能和Cloud 功能。 可以使用Module Sources功能,但仅支持Local