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

本文涉及的产品
资源编排,不限时长
简介: 通过命令行工具使用阿里云资源编排服务

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

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

资源编排服务(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 指定。

是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。
相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
阿里云资源编排ROS使用教程
资源编排(Resource Orchestration)是一种简单易用的云计算资源管理和自动化运维服务。用户通过模板描述多个云计算资源的依赖关系、配置等,并自动完成所有资源的创建和配置,以达到自动化部署、运维等目的。编排模板同时也是一种标准化的资源和应用交付方式,并且可以随时编辑修改,使基础设施即代码(Infrastructure as Code)成为可能。 产品详情:https://www.aliyun.com/product/ros/
目录
相关文章
|
2月前
|
弹性计算 持续交付 API
基于 ROS 的Terraform托管服务轻松部署ChatGLM-6B
文章介绍了如何利用ROS和Terraform模板轻松自动化部署基于GLM架构、优化中文对话的ChatGLM-6B模型至阿里云,提高了部署效率与便捷性,适用于多种应用场景,且模型部署过程详细,彰显了基础设施即代码(IaC)的优势。
48 3
基于 ROS 的Terraform托管服务轻松部署ChatGLM-6B
|
2月前
|
弹性计算 人工智能 持续交付
基于 ROS 的Terraform托管服务轻松部署Qwen-7B-Chat
文章介绍了如何利用ROS和Terraform模板轻松自动化部署阿里云的Qwen-7B-Chat大语言模型服务,提高了部署效率与便捷性,是实现云资源和服务快速上线的最佳实践。
68 2
基于 ROS 的Terraform托管服务轻松部署Qwen-7B-Chat
|
3月前
|
机器人 Shell Python
ROS2教程05 ROS2服务
这篇文章是关于ROS2(Robot Operating System 2)服务的教程,涵盖了服务的概念、特性、命令行工具的使用,以及如何编写服务的服务器和客户端代码,并提供了测试服务通信机制的示例。
88 4
ROS2教程05 ROS2服务
|
3月前
|
机器人
ROS2教程 05 服务Service
本文是关于ROS2(机器人操作系统2)中服务(Service)机制的教程,介绍了服务与话题(Topic)的区别、ROS2服务的相关命令,包括列出服务、查找服务、获取服务类型和调用服务,并通过示例代码展示了如何创建服务端(Server)和客户端(Client),以及如何测试服务调用过程。
147 0
ROS2教程 05 服务Service
|
5月前
|
弹性计算 API 持续交付
基于 ROS 的 Terraform 托管服务轻松部署文本转语音系统 ChatTTS
基于 IaC 的理念,通过定义一个模板,使用 ROS 提供的 Terraform 托管服务进行自动化部署,可以非常高效快捷地部署任意云资源和应用(比如 ChatTTS 服务)。相比于手动部署或者通过 API、SDK 的部署方式,有着高效、稳定等诸多优势,也是服务上云的最佳实践。
69 1
基于 ROS 的 Terraform 托管服务轻松部署文本转语音系统 ChatTTS
|
4月前
|
机器人 Shell 开发者
`roslibpy`是一个Python库,它允许非ROS(Robot Operating System)环境(如Web浏览器、移动应用等)与ROS环境进行交互。通过使用`roslibpy`,开发者可以编写Python代码来远程控制ROS节点,发布和订阅话题,以及调用服务。
`roslibpy`是一个Python库,它允许非ROS(Robot Operating System)环境(如Web浏览器、移动应用等)与ROS环境进行交互。通过使用`roslibpy`,开发者可以编写Python代码来远程控制ROS节点,发布和订阅话题,以及调用服务。
|
5月前
|
弹性计算 人工智能 JSON
一键云部署:资源编排 ROS 轻松部署 LLM 流程编排服务 Flowise
Flowise 是一个开源低代码平台,用于构建定制化的 LLM 流程和 AI 代理。阿里云的 Resource Orchestration Service (ROS) 提供了一键部署 Flowise 到 ECS 实例的方案。用户只需在 ROS 控制台配置模板参数,如可用区和实例类型,即可完成部署。部署后,从资源栈输出获取 Flowise 服务地址以开始使用。ROS 模板定义了 VPC、ECS 实例等资源,并通过 ROS 自动化部署,简化了云上资源和应用的管理。
229 1
一键云部署:资源编排 ROS 轻松部署 LLM 流程编排服务 Flowise
|
6月前
|
弹性计算 持续交付 数据中心
一键云部署:ROS的Terraform托管服务助你轻松上线2048经典游戏
阿里云的资源编排服务ROS提供了Terraform托管能力,用户可以直接在ROS控制台上部署Terraform脚本,本文将详细介绍如何使用ROS的Terraform托管服务一键部署经典的2048小游戏到云端,让全世界的玩家都能在线体验。
239 1
|
6月前
|
弹性计算 关系型数据库 API
ECS安装问题之安装资源编排服务(ROS)如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
弹性计算 运维 持续交付
基于资源编排服务(ROS)实现存量资源的IaC化
如果您需要一种简单而有效的方法来管理大量云资源并实现自动化部署,推荐使用阿里云的资源编排服务ROS(Resource Orchestration Service)。ROS能够将存量资源转化为IaC(基础设施即代码),通过资源场景创建、模版生成和资源栈导入等功能,实现资源的统一管理和自动化部署。这不仅提高了资源管理的效率,还降低了成本。如果您想了解如何更轻松地管理云资源并加速部署流程,ROS是一个值得深入了解的工具。
144 1

推荐镜像

更多