开发者社区> 云攻略小攻> 正文

轻松使用阿里云资源编排,方便你的API管理

简介: 11月初,阿里云ROS正式发布API 网关(API Gateway)资源,为云计算用户提供高性能、高可用的 API 托管服务,帮助用户对外开放其部署在 ECS、容器服务等阿里云产品上的应用,提供完整的 API 发布、管理、维护生命周期管理。
+关注继续查看

11月初,阿里云ROS正式发布API 网关(API Gateway)资源,为云计算用户提供高性能、高可用的 API 托管服务,帮助用户对外开放其部署在 ECS、容器服务等阿里云产品上的应用,提供完整的 API 发布、管理、维护生命周期管理。用户只需进行简单的操作,即可快速、低成本、低风险地开放数据或服务。

用户只需要按照自己的需求,根据ROS的模板规范,定义自己的API管理模板,就可以轻轻松松实现API组的创建/更新,API的创建/更新,API的发布或者版本切换,以及API授权,签名,流控等等的配置预更新。

以创建和发布一个新API到测试环境为例。首先用户先根据ROS的模板规范定义自己的模板,模板中会包含下面的几个资源,具体的资源介绍详见帮助文档,
ALIYUN::ApiGateway::Group,
ALIYUN::ApiGateway::API,
ALIYUN::ApiGateway::Deployment

一个最简单的模板定义如下:
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Create an API Gateway",
"Parameters": {

"CustomStage": {
  "Type": "String",
  "Description": "环境",
  "AllowedValues": [
    "TEST",
    "PRE",
    "RELEASE"
  ],
  "Label": "环境",
  "Default": "TEST"
}

},
"Resources": {

"Group": {
  "Type": "ALIYUN::ApiGateway::Group",
  "Properties": {
    "GroupName": "my_api_group",
    "Description": "my api group"
  }
},
"Deployment": {
  "Type": "ALIYUN::ApiGateway::Deployment",
  "Properties": {
    "Description": "liyi_test",
    "StageName": {
      "Ref": "CustomStage"
    },
    "ApiId": {
      "Fn::GetAtt": [
        "API",
        "ApiId"
      ]
    },
    "GroupId": {
      "Fn::GetAtt": [
        "Group",
        "GroupId"
      ]
    }
  }
},
"API": {
  "Type": "ALIYUN::ApiGateway::Api",
  "Properties": {
    "RequestConfig": {
      "RequestPath": "/my_resource",
      "RequestProtocol": "HTTP,HTTPS",
      "RequestHttpMethod": "GET",
      "PostBodyDescription": "k:v",
      "BodyFormat": "FORM"
    },
    "ResultSample": "my_test sample result",
    "ServiceConfig": {
      "ServiceAddress": "http://my_url_site",
      "MockResult": "Nothing",
      "ContentTypeValue": "application/x-www-form-urlencoded; charset=UTF-8",
      "ServiceVpcEnable": "FALSE",
      "ServiceTimeOut": 20000,
      "ServiceProtocol": "HTTP",
      "ServicePath": "/my_data",
      "ServiceHttpMethod": "GET",
          "ContentTypeCatagory": "DEFAULT",
      "Mock": "FALSE"
    },
    "ApiName": "my_test_first_api",
    "Visibility": "PRIVATE",
    "AuthType": "APP",
    "ResultType": "JSON",
    "FailResultSample": "my_test faile sample result",
    "GroupId": {
      "Fn::GetAtt": [
        "Group",
        "GroupId"
      ]
    }
  }
}

},
"Outputs": {

"APIId": {
  "Value": {
    "Fn::GetAtt": [
      "API",
      "ApiId"
    ]
  }
},
"GroupId": {
  "Value": {
    "Fn::GetAtt": [
      "Group",
      "GroupId"
    ]
  }
}

}
}

然后在ROS的控制台(ros.console.aliyun.com)提交你的模板:
进入ROS的控制台如下图所示,然后点击“新建资源栈”按钮。
2

接着会展示新的页面如下,需要在新的页面中选择region,填入上面提供的模板,然后点击“下一步”。
3

紧接着会切换到这个页面,需要再属于一些创建时的参数信息,资源栈的名称,以及你需要在哪个环境发布API。参数设置好之后,点击“创建”按钮。
4

ROS 编排引擎就会根据模板和参数信息,创建API分组,API,并最终发布到测试环境。返回到资源栈管理页面,可以看到如下面的信息,名为“my_api_v1”的资源栈创建成功。
5

点击资源栈名,就可以查看资源栈的相关属性。我们上面的模板中定义了要输出API分组的ID和API 的ID。
6

跳转到API 网关的控制台,就可以看到我们通过模板所创建的API。
7

以上是通过ROS的控制台来创建,发布API。

ROS 当前支持的所有 API 网关的资源类型如下:
ALIYUN::ApiGateway::Group
https://help.aliyun.com/document_detail/61467.html?spm=5176.doc61480.6.650.0oTm2p
创建 API 分组
ALIYUN::ApiGateway::StageConfig::SignatureBinding
https://help.aliyun.com/document_detail/61483.html?spm=5176.doc61482.6.652.43jUI8
创建 API 分组中测试、预发、线上环境变量
ALIYUN::ApiGateway::Api
https://help.aliyun.com/document_detail/61459.html?spm=5176.doc28930.6.645.VIyhF4
创建 API
ALIYUN::ApiGateway::App
https://help.aliyun.com/document_detail/61468.html?spm=5176.doc61459.6.646.jep7UM
创建应用
ALIYUN::ApiGateway::Authorization
https://help.aliyun.com/document_detail/61478.html?spm=5176.doc61468.6.647.wFQfvi
给 API 授权应用的访问权限
ALIYUN::ApiGateway::CustomDomain
https://help.aliyun.com/document_detail/61479.html?spm=5176.doc61478.6.648.O62moc
给 API 分组创建绑定自定义域名
ALIYUN::ApiGateway::Deployment
https://help.aliyun.com/document_detail/61480.html?spm=5176.doc61479.6.649.s0Ltp0
发布 API 或快速切换 API 版
ALIYUN::ApiGateway::Signature
https://help.aliyun.com/document_detail/61482.html?spm=5176.doc61467.6.651.JHTCZz
创建后端签名密钥
ALIYUN::ApiGateway::SignatureBinding
https://help.aliyun.com/document_detail/61483.html?spm=5176.doc61482.6.652.43jUI8
绑定 API 与后端签名密钥
ALIYUN::ApiGateway::TrafficControl
https://help.aliyun.com/document_detail/61485.html?spm=5176.doc61484.6.654.u6Ymvw
创建用户自定义的流控策略
ALIYUN::ApiGateway::TrafficControlBinding
https://help.aliyun.com/document_detail/61488.html?spm=5176.doc61485.6.655.cz94Ob
给 API 绑定用户自定义流控
ALIYUN::ApiGateway::VpcAccessConfig
https://help.aliyun.com/document_detail/61489.html?spm=5176.doc61488.6.656.KXYFQT
配置 VPC 授权以便专有网络的 API 能对外提供服务

ROS也支持openAPI的方式做资源的操作,具体可以参考ROS云栖博客索引
https://yq.aliyun.com/articles/57553?spm=5176.100239.0.0.LzywAe
中的这两篇文章,
1、《阿里云资源编排服务Python SDK使用入门 》
https://yq.aliyun.com/articles/6904?spm=5176.100239.blogcont57553.66.N4yGwL
2、《阿里云资源编排服务Java SDK使用入门》
https://yq.aliyun.com/articles/113503?spm=5176.100239.blogcont57553.67.N4yGwL

同时用户也可以通过ROS的命令行
https://yq.aliyun.com/articles/215216?spm=5176.100239.blogcont57553.72.N4yGwL
工具创建实现资源的创建,更新等等操作。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
idea:项目添加SVN和版本管理快捷键
idea:项目添加SVN和版本管理快捷键
18 0
Netweaver和SAP云平台的quota管理
Netweaver和SAP云平台的quota管理
18 0
使用 Sketch 和 Pixate 构建 Material Design 原型 - 第二部分
本文讲的是使用 Sketch 和 Pixate 构建 Material Design 原型 - 第二部分,打开 Pixate 并且点击 “ Create new prototype ” 来创建一个原型,或者从“ File ”菜单新建一个。
1145 0
艾伟也谈项目管理,成功软件项目管理的奥秘
  如何入门并设定软件成功的目标    1、如何开始项目管理(如何入门) 实践技能建议 要点说明 1.设定优先级 1)         为团队成员提供服务 2)         满足组织客户的需求 3)         从事自己相关的项目 2.分析自我能力差距 人员管理(人际关系、解决冲突、推销想法) 聆听技巧 锻炼演讲表达能力 3.
1091 0
产品百科 |使用阿里云 RTC SDK 耗时高怎么办?
本文为您介绍在使用 SDK 过程中减少耗时的方法。
107 0
+关注
云攻略小攻
计算,存储,网络,数据库,企业应用服务,开发者服务统统在这里。
442
文章
0
问答
来源圈子
更多
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载