工具应用最佳实践系列之——逻辑编排

  1. 云栖社区>
  2. 阿里云开放平台>
  3. 博客>
  4. 正文

工具应用最佳实践系列之——逻辑编排

安茹1025 2020-03-04 15:55:41 浏览982

作者 | 王觯程(紫英),阿里云开放平台技术专家,目前从事阿里云开放 API 相关工具和产品的研发工作,主要负责阿里云逻辑编排,在阿里集团负责编排规范推进,以及相关基础设施和中台建设,在系统集成和企业集成领域有深入研究。

导读

阿里云工具应用中心,是面向企业云管理的工具平台。用户可以在这里根据使用场景,快速地找到云上运维的应用产品,完成订购后,直接在阿里云管理控制台使用。本篇工具应用最佳实践系列之——逻辑编排,将为大家介绍如何使用阿里云逻辑编排,轻松实现阿里云账单定时自动化导入自己的数据库,便于后续分析。

背景

阿里云账单数据对很多大企业客户来说是非常重要的,大企业客户的财务人员或者数据分析人员需要这些数据做财务分析、分摊以及对账等。但是对大企业中的财务同学和数据分析师等非专业开发工程师来说,通过调用阿里云 OpenAPI 来获取该企业某一段账期下的所有账单数据不是一个轻松的活儿,甚至可能需要求助于研发人员完成这个工作。梳理一下,我们需要做一下工作:

  • 代码研发:通过阅读阿里云账单相关 API 文档,了解需要使用哪个 API 后进行开发;
  • 部署调试:购买 ECS、数据库等资源,完成代码打包、上传、部署工作;然后需要测试代码是否正常运行;部署过程需要考虑是否做到高可用;
  • 运维:部署完成后,需要保障能够根据定时自动运行任务,如果出错,如何排查问题等;

可见,除了开发成本外,调试、部署、运维都有不少成本。本来一个很简单的任务,也需要购买一台或者多台(如果需要高可用)的服务器来跑任务,但本身这个任务不需要花费较多的计算资源,造成了一定的浪费。

今天,我给大家介绍一个更简单便捷省钱的方案:使用逻辑编排完成账单 OpenAPI 导入自己的阿里云 RDS 数据库。

逻辑编排介绍

逻辑编排是一个一站式集成的 iPaaS 产品,一键导出账单、证书过期自动检测、云资源级联删除,各种业务问题都可通过逻辑编排解决。运维、开发等人员通过图形化组件和模板自助实现业务流程编排,以低代码的方式开发针对特定场景的流程,适用于运维和SaaS服务集成等领域。通过逻辑编排,我们可以很方便的完成阿里云账单 API 和数据库的集成工作。

1.png

逻辑编排有以下特点:

  • Codeless(低代码):逻辑编排提供了可视化编辑器,无需了解复杂的编程知识,也可以快速搭建业务流程;
  • Serverless(无服务器计算):
  1. 编排好的业务工作流,由逻辑编排托管运行,无需您关心运维和部署,逻辑编排统统帮您搞定;
  2. 通过定时任务等事件驱动的方式,帮您实现业务的自动化运行,降低人肉成本;
  3. 丰富的日志,帮您洞察业务工作流中的每个细节,找到业务问题。

逻辑编排适合于:

  • API 开发者:托管式的运行环境面向 API 市场的开发者,通过集成阿里云服务 API、三方服务的公共 API至自有业务流程,减少生产资源成本和运维成本,实现真正的 Serverless + Codeless;
  • 企业 IT 运维管理者、数据分析师:通过组合不同云产品的 API 操作,简化日常的运维工作;通过计划调度的触发模式,获得被监控资源状态的实时消息;
  • 跨环境(多云、混合云)企业级集成开发者:通过API、数据和消息网关能力,编排同步、非同步的线上线下环境的子业务流程,完成企业级应用的快速集成;

接下来,我们实战一下如何通过逻辑编排实现阿里云账单 QueryBill 这个 OpenAPI 的数据导入到 RDS。

实战账单数据导入

方案架构

在该需求当中,我们借助逻辑编排实现账单 API 的调用和数据获取,并通过逻辑编排提供的 MySQL 连接器将数据写入到 RDS 中,后续用户可以基于 RDS 数据库中的数据进行分析和展现。最后,通过逻辑编排的定时任务触发器实现每天持续的自动化导入。整体方案架构如下图所示:

2.png

准备工作

因为需要导入到我们自己的 RDS 数据中,所以我们需要先准备一台 RDS 实例,具体购买方法可以参考 RDS 官方文档
实例处于运行状态后,我们需要准备以下信息:

3.png

创建实例

我们使用阿里云主账号,登录逻辑编排控制台后,点击左侧的“编排实例”,进入到编排实例列表,再点击“创建编排实例”,在弹出的对话框中输入实例的名称简介,点击确定后,提示我们创建成功。这里我们选择“从官方模板导入”,然后从弹出的窗口里选择“将截止上个月的阿里云账单 QueryBill 数据导入数据库”的模板,完成实例创建。

4.gif

配置模板

实例创建完成后,进入到了图形化设置界面,这里我们需要配置数据库连接信息和账单 API 的授权。有了这些授权,逻辑编排才可以帮您完成账单 API 的调用和数据的写入。逻辑编排会分析您导入的模板,把所有需要授权的操作列了出来:

5.png

在数据库连接这里,点击创建,在弹出的侧边栏填入刚才 RDS 实例的公网连接地址、端口、数据库名称、账号、密码即可。请放心,逻辑编排会对您填写的信息进行加密。

在阿里云账单 API 相关的授权,点击授权后,会弹出角色授权侧边栏,权限选择AliyunBSSFullAccess权限即可。无需跳转到 RAM 控制台即可完成角色授权操作。

6.png

所有授权操作完成后,授权列表每一项后面会变成绿色,这时候可以点击继续进入图形化设计页面。

7.png

参数调整

在画布页面,您可以对一些运行变量进行调整,比如“总月份数”这个节点定义了总共导入最近多少个月的数据,可以根据自己的需求修改该设置。再比如,导入的模板默认是每个月第一天执行导入操作,那我们也可以修改触发器的设置,调整为每天凌晨 4 点导入,只需要在画布中点开“重复周期”这个节点,修改相关配置即可。

8.gif

运行
调整完成后,点击画布右上角的“保存”,再点击“运行”后,实例开始运行导入任务了,从图中我们可以看到进行到了哪一步,每一步运行是否成功以及相应的耗时情况。

9.png

如果数据量较大,导入需要一定的时间(具体和您账单本身的数据量有关),这时候我们可以关闭页面,喝杯咖啡,或者做点其它事情。

查看运行结果

忙好了其它事情后,我们过来看看导入的状况。打开刚才创建的实例,在“运行日志”Tab 下,我们可以看到刚才的运行记录,如果状态为成功,表示已经导入完成了,是不是很简单?

10.png

如果运行状态为失败,我们可以点击查看,看看具体是哪一步出错了,比如白名单是不是配置正确了?或者 API 调用是不是超时了?如果出错了,我们可以再点击运行,重新进行导入。模板里也做了相应的处理,为每一条数据生成了一个唯一 ID,不会重复导入数据。

基于模板创建的是定时导入,所以您也无需每个月提醒自己来控制台手工导入,逻辑编排会根据您的定时时间设置,自动帮您在指定的时间完成导入工作。是不是很省心呢?

总结

通过逻辑编排,我们不需要求助开发小哥哥,就很简单的实现了一个账单 API 数据导入到自己 RDS 数据库的需求。经过这个实践,我们可以看出逻辑编排具有以下优势:

  • 无需关心代码实现和部署。您不需要关心 API 调用的细节和过程,也不需要关心如何部署这些代码,逻辑编排提供了全托管的运行环境。并且通过丰富、完整的日志展示,您可以方便的洞察每个过程的运行状态和相关数据;
  • 提供丰富的连接器和模板。逻辑编排对接了阿里云数十个产品的 OpenAPI,并提供了多个内置的连接器,方便您完成基于阿里云 OpenAPI 的系统集成。借助于服务连接,您不需要了解复杂的授权策略和数据库连接过程,逻辑编排会帮您完成相关的授权调用过程。同时,您也可以借助逻辑编排内置的一些模板快速上手,完成自己的一些业务需求;
  • 一站式可视化操作。逻辑编排提供了可视化的编辑器,无需了解复杂的编程知识,您就可以直接利用可视化编辑器完成业务工作流的调整等操作;
  • 自动化的运行业务工作流。通过重复周期触发器,无需您手动触发,即可在指定的时间自动化完成您配置好的业务工作流;

后续,逻辑编排也会不断丰富连接器以及模板的种类和数量,提供更加易用的一站式集成平台,让您基于逻辑编排实现更多自动化的业务工作流,赋能更多非开发人员完成云上的工作,满足您的业务诉求。

此外,应用中心还提供了资源管理、配置编排、自动化运维、诊断分析、成本费用、运维工具等多种场景类目,未来将陆续推出高效低价的应用工具,提供更多的行业型解决方案。前往了解详情!

如果您有任何建议或者需要使用上的帮助,欢迎扫码加入逻辑编排钉钉群(群号:21995282):

11.png