资源编排服务ROS(Resource Orchestration Service)是阿里云提供的一项简化云计算资源管理和采用基础设施即代码(IaC)设计理念的自动化部署服务。开发者和管理员可以编写模板,在模板中定义所需的阿里云资源(例如:ECS实例、RDS数据库实例)、资源间的依赖关系等。ROS的编排引擎将根据模板自动完成所有资源的创建和配置,实现自动化部署及运维。
前置概念
阅读本文前,您可能需要了解如下概念:
为什么选择ROS
企业云上大量的资源管理需求带来了效率、合规和成本方面的挑战,ROS可以帮助您轻松管理多个资源:
采用基础设施即代码(Infrastructure as Code, IaC)的设计理念,模板的管理融入CI/CD流程,确保合规性。
无需手动创建多个资源,使用模板一键部署多个资源。
提供大量模板示例和解决方案示例,帮助企业客户部署复杂解决方案。
利用云上弹性,按需批量部署和释放资源,节省成本。
工作原理
当您编写模板后,ROS将根据模板创建资源栈,自动化部署多个资源,具体如下图所示。
当您需要更新资源栈中的资源时,可以使用更新资源栈功能。
当您需要在更新资源前查看资源栈中资源的变化情况时,可以创建更改集以预览即将进行更新的资源变化情况,然后执行更改集以更新资源栈。
功能特性
功能分类 | 功能描述 |
免费服务托管 | ROS提供全托管的自动化执行,即无服务器(Serverless)的自动化执行。您可以在模板中定义阿里云资源和配置参数,并说明资源间的依赖关系,然后创建资源栈,从而管理一组资源。 ROS为Terraform提供了免费托管的能力,您可以创建Terraform类型的模板和资源栈,编排阿里云、AWS或Azure的资源。Terraform功能兼容ROS API,您只需创建Terraform类型模板,即可调用ROS API实现相应功能。 |
多账号跨地域部署 | 您可以使用同一个ROS模板,在多个阿里云账号中跨地域进行自动化部署。您也可以使用同一个ROS模板,部署开发、测试和生产环境,通过指定不同的参数满足各环境的差异性。例如:测试环境的ECS实例数是2台,而生产环境的ECS实例数是20台。 |
标准化部署 | 通过使用ROS重复部署,将部署环境标准化,减少不同环境的差异,将环境的配置沉淀到模板中,节省部署成本。 |
结果可视化呈现 | ROS通过自动化部署,帮助您通过控制台或API清晰地查看部署结果, 避免人工逐个检查部署进程。 |
偏差检测 | 您可以使用偏差检测来识别在ROS之外的资源变更,并采取纠正措施,使资源再次与模板定义同步。 |
访问控制 | 通过集成访问控制(RAM)提供了统一的账号管理和权限控制体系。通过集成操作审计服务(ActionTrail)审查所有的运维操作,包括ROS本身。 |