资源编排ROS集成示例

资源编排 ROS(Resource Orchestration Service)可以根据模板自动完成所有资源的创建和配置,实现自动化部署和运维。您可以使用资源编排调用系统运维管理。本文为您介绍如何编写一个资源编排的模板,在系统运维管理中自动化创建一个普通参数。

支持资源列表

资源编排是阿里云提供的一项简化云计算资源管理的服务。开发者和管理员可以编写模板,在模板中定义所需的阿里云资源(例如:ECS 实例、RDS 数据库实例)、资源间的依赖关系等。ROS的编排引擎将根据模板自动完成所有资源的创建和配置,实现自动化部署及运维。更多详情请参见什么是资源编排服务

支持使用资源编排调用系统运维管理,支持的资源如下:

资源类型

资源链接

说明

Resources

ALIYUN::OOS::DefaultPatchBaseline

注册默认补丁基线

ALIYUN::OOS::Execution

启动一个执行

ALIYUN::OOS::Template

创建模板

ALIYUN::OOS::Parameter

创建普通参数

ALIYUN::OOS::PatchBaseline

创建补丁基线

ALIYUN::OOS::SecretParameter

创建加密参数

ALIYUN::OOS::StateConfiguration

创建终态配置

Data Sources

DATASOURCE::OOS::PatchBaseline

获取补丁基线

DATASOURCE::OOS::PatchBaselines

获取补丁基线列表

DATASOURCE::OOS::SecretParameters

获取Secret参数列表

权限说明

阿里云账号拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维。请根据业务的实际情况按需分配权限后进行接口调用。具体操作,请参见使用RAM进行访问控制

操作步骤

  1. 登录资源编排ROS控制台,单击顶部导航栏地域下拉框,选择您需要的地域。

  2. 单击左侧菜单栏中的资源栈,选择创建资源栈 > 使用ROS

    • 指定模板:选中选择已有模板

    • 模板录入方式:选中输入模板

  3. 模板内容选择ROS,输入以下代码(选择一种格式即可)。

    创建普通参数的语法、说明及示例,请参见ALIYUN::OOS::Parameter。该示例将为您介绍如何创建一个普通参数。

    YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters: {}
    Resources:
      Parameter:
        Type: ALIYUN::OOS::Parameter
        Properties:
          Type: String
          Value: echo hello world
          Description: Prefix for Interruption Handler parameters
          Name:
            Fn::Join:
              - ''
              - - /ecs-test-handler/run_commands/test-SampleWebAppAutoScalingGroup-
                - Ref: ALIYUN::StackId
    Outputs:
      Value:
        Description: The Value of the parameter.
        Value:
          Fn::GetAtt:
            - Parameter
            - Value
      Name:
        Description: The Name of the parameter.
        Value:
          Fn::GetAtt:
            - Parameter
            - Name

    JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Parameters": {
      },
      "Resources": {
        "Parameter": {
          "Type": "ALIYUN::OOS::Parameter",
          "Properties": {
            "Type": "String",
            "Value": "echo hello world",
            "Description": "Prefix for Interruption Handler parameters",
            "Name": {
              "Fn::Join": [
                "",
                [
                  "/ecs-test-handler/run_commands/test-SampleWebAppAutoScalingGroup-",
                  {
                    "Ref": "ALIYUN::StackId"
                  }
                ]
              ]
            }
          }
        }
      },
      "Outputs": {
        "Value": {
          "Description": "The Value of the parameter.",
          "Value": {
            "Fn::GetAtt": [
              "Parameter",
              "Value"
            ]
          }
        },
        "Name": {
          "Description": "The Name of the parameter.",
          "Value": {
            "Fn::GetAtt": [
              "Parameter",
              "Name"
            ]
          }
        }
      }
    }
  4. 单击下一步,失败时回滚,选择

  5. 单击创建,执行资源栈。

  6. 输出结果。

    image

  7. 前往系统运维管理控制台,单击参数仓库

  8. 在顶部导航栏地域下拉框中修改地域信息,使其与资源栈所在地域保持一致。

  9. 普通参数中检查参数是否正确创建。

    image