通过命令行工具使用阿里云资源编排服务

简介: 通过命令行工具使用阿里云资源编排服务

是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。

通过命令行工具使用阿里云资源编排服务

资源编排服务(ROS)支持用户通过模板文件定义所需的云资源,描述资源间的依赖关系和配置详情,并自动完成资源的创建和配置,以达到自动化部署、运维等目的。

作为一种自动化运维工具,阿里云ROS屏蔽了底层资源操作的复杂性,使得对基础设施资源的管理通过简单的代码就可以实现。

命令行工具

除了访问控制台使用ROS功能,用户还可以安装命令行工具。
>> 命令行工具源码地址
>> 命令行工具安装包下载地址

安装

命令行工具目前支持如下环境:

  • Linux, MacOS, Windows
  • Python 2.7

输入如下命令安装:

pip install aliyun-ros-cli

之后输入 ros + 具体的命令 访问资源编排服务。

  • Windows下如果提示 /usr/bin/python: bad interpreter: No such file or directory,请将Python根目录下Scripts/ros的第一行改为 #!/usr/bin/env python

配置

初次使用 ros 命令时,需要配置用户的阿里云验证信息,请根据提示键入您的 AccessKeyId 、 AccessKeySecret 和默认的 RegionId 。这些信息将作为默认配置供后续命令使用。

使用

ROS命令行工具目前支持如下功能:

  • 堆栈相关:

    • 创建堆栈 create-stack
    • 删除堆栈 delete-stack
    • 更新堆栈 update-stack
    • 预览堆栈 preview-stack
    • 废弃堆栈 abandon-stack
    • 列出堆栈列表 list-stacks
    • 描述堆栈信息 describe-stack
  • 资源相关

    • 描述资源信息 describe-resource
    • 列出资源列表 list-resources
    • 查看资源类型 resource-type
    • 查看某类资源详情 resource-type-detail
    • 查看某类资源模板 resource-type-template
  • 模板相关

    • 获取某堆栈的模板 get-template

      • 验证模板 validate-template
  • 其他

    • 查询区域信息 list-regions
    • 列出堆栈事件 list-events

以创建堆栈为例,用户需要预先准备模板文件或模板的URL。下面演示创建VPC堆栈。

模板文件

template.json:

{
  "ROSTemplateFormatVersion" : "2015-09-01",
  "Description": "One VPC instance",
  "Parameters" : {
    "CidrBlock": {
      "Type": "String",
      "AllowedValues": ["192.168.0.0/16", "172.16.0.0/12", "10.0.0.0/8"],
      "Default": "192.168.0.0/16"
    },
    "VpcName": {
      "Type": "String",
      "Description": "The VPC name",
      "MinLength": 2,
      "MaxLength": 128,
      "ConstraintDescription": "[2, 128] English or Chinese letters"
    }
  },
  "Resources" : {
    "Vpc": {
      "Type": "ALIYUN::ECS::VPC",
      "Properties": {
        "CidrBlock": {"Ref": "CidrBlock"},
        "VpcName": {"Ref": "VpcName"}
      }
    }
  },
  "Outputs": {
    "VpcId": {
      "Value" : {"Fn::GetAtt": ["Vpc", "VpcId"]}
    },
    "VRouterId": {
      "Value" : {"Fn::GetAtt": ["Vpc", "VRouterId"]}
    },
    "RouteTableId": {
      "Value" : {"Fn::GetAtt": ["Vpc", "RouteTableId"]}
    }
  }
}

创建

模板中有两个参数,使用 --parameters 指定,形如key=value,多个参数用,隔开,中间不要有空格。

如果不指定 --region-id,将使用默认配置文件中的RegionId。

ros create-stack --region-id cn-beijing --stack-name test_ros_cli --template-url ./template.json --parameters VpcName=testVPC,CidrBlock=10.0.0.0/8

创建成功后,看到返回的 StackId:

[Succeed]
Id                  :  ********-****-****-****-************
Name                :  test_ros_cli

如果创建失败,则会有对应的错误提示。

命令详情

您可以通过如下方式查看各个命令的具体使用方式:

  • -h,--help 命令:

    如输入 `ros create-stack -h` 可以看到创建堆栈的具体参数说明。
  • PyPi帮助文档
  • 本文附件《ROS CLI 使用说明》

高级设置

修改默认配置

用户可以通过 ros set-userdata 命令修改默认配置,包含如下参数:

命令 功能
--key-id [KEY_ID] 默认的 ALIYUN Access Key ID
--key-secret [KEY_SECRET] 默认的 ALIYUN Access Key Secret
--region-id [REGION_ID] 默认的 region-id
--json-indent [JSON_INDENT] JSON输出时的缩进
--debug {'False', 'True'} 是否开启Debug输出
  • 开启Debug模式后,会输出每一条命令使用的认证信息、接收到的 Response 详情等。

指定临时配置文件

使用 ros --config FILE_PATH 可以指定当前命令的配置文件,将使用该配置文件的信息执行命令。

命令行自动补全

目前提供对bash环境的命令参数自动补全:

  • 将附件中的ros_completion放置于/etc/bash_completion.d/目录下
  • source /etc/bash_completion.d/ros_completion

之后使用 ros 命令时,可以按下 TAB 键查看提示或者自动补全参数。

  • Windows下由于缺少bash环境,无法使用命令行补全功能

输出格式

ROS命令行工具默认使用友好的方式展现命令的执行结果,用户可以通过 ros --json 强制使用 JSON 格式显示结果。JSON的缩进由配置文件中的 JSON_INDENT 指定。

是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。
相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
目录
相关文章
|
1月前
|
Arthas 弹性计算 运维
阿里云ECS监控服务
阿里云ECS监控服务
403 2
|
1月前
|
监控 网络协议 API
阿里云BssOpenAPI是一个基于阿里云开放API的服务
【2月更文挑战第24天】阿里云BssOpenAPI是一个基于阿里云开放API的服务
143 6
|
1月前
|
自然语言处理
阿里云百炼大模型服务--企业知识检索问答指南
阿里云百炼提供的企业知识检索问答应用可以帮助大家实现让大模型瞬间“开挂”的技能。结合上传的知识数据,大模型识别解析学习文档内容,最终给出生成式回复。我们在通义千问-Turbo/Max大模型基础上,将文件上传、读取、切片、向量化等过程都开发好预置在应用中,实现开箱即用,更能满足您的日常需求。
|
4天前
|
存储 开发工具 对象存储
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
Javaweb之SpringBootWeb案例之阿里云OSS服务入门的详细解析
11 0
|
14天前
|
网络协议 Java 物联网
阿里云服务器上搭建 MQTT服务
阿里云服务器上搭建 MQTT服务
|
14天前
|
域名解析 网络协议 应用服务中间件
阿里云服务器配置免费https服务
阿里云服务器配置免费https服务
|
1月前
|
NoSQL 关系型数据库 数据库
数据传输服务DTS(Data Transmission Service)是阿里云提供的实时数据流服务
【2月更文挑战第29天】数据传输服务DTS(Data Transmission Service)是阿里云提供的实时数据流服务
20 5
|
1月前
|
人工智能 IDE API
灵动指尖 :阿里云智能编码插件 更好的为IDE内置社区服务
灵动指尖 :阿里云智能编码插件 更好的为IDE内置社区服务
|
1月前
|
人工智能 数据可视化 API
阿里云百炼大模型服务--流程编排接入快速上手指南
流程编排是一种面向开发者的可视化开发工具,支持LLM、API、脚本等类型节点,旨在简化接入大型语言模型(LLM)流程,同时提供应用流程的全生命周期管理,包括流程的编排、试验、部署等,为开发者提供自定义AI应用开发一站式服务。
阿里云百炼大模型服务--模型训练指南
模型训练是通过Fine-tuning训练模式提高模型效果的功能模块,作为重要的大模型效果优化方式,用户可以通过构建符合业务场景任务的训练集,调整参数训练模型,训练模型学习业务数据和业务逻辑,最终提高在业务场景中的模型效果。

热门文章

最新文章

推荐镜像

更多