概述

什么是 CloudIaC

CloudIaC 是基于基础设施即代码构建的云环境自动化管理平台。CloudIaC 将易于使用的界面与强大的治理工具相结合,让您和您团队的成员可以快速轻松的在云中部署和管理环境。

通过将 CloudIaC 集成到您的流程中,您可以获得对组织的云使用情况的可见性、可预测性和更好的治理。

基础设施即代码和环境即服务

基础设施即代码是使用软件工具来管理基础设施,CloudIaC 通过以下两种软件工具来实现基础设施管理。

Terraform:该工具使用存储在配置文件中的模型来构建云环境,通过 Terraform,您可以自动配置基础设施,实现基础设施模块化,然后自由组合来实现各种云资源构建;

Ansible:通过该工具的 playbook 功能,用配置文件来描述软件应用的部署及状态,从而实现在云端资源构建后的应用自动化部署。

基础设施即代码背后的真正意义并不是简单的实现资源创建和应用部署,而是实现一种管理机制,允许用户在 CI/CD 管道之外创建功能齐全的沙盒环境,用于开发、测试演示等,这称为环境即服务。

CloudIaC 如何帮助管理环境即服务

CloudIaC 在基础设施即代码软件之上提供了一个管理层,管理员可以提供环境模板(基于基础设施即代码配置)、管理变量和云凭证,并为用户定义访问控制、环境生存时间和应用部署的策略。

环境即服务 通过提供自助式环境管理来解放您的开发人员。

使用 CloudIaC,他们可以一键启动或销毁环境,并轻松跟踪环境状态或部署历史。

云模板 利用参数化云模板,允许相同的基础设施即代码配置部署不同类型的环境。 通过变量的自定义调整,还可以轻松实现环境的扩缩容等操作,并能随时查看部署历史记录以及日志。

变量 组织、项目、云模板、环境均可设置自身的变量。 部署环境时变量将自动继承,同名变量低层级优先,用户在部署环境时可对继承的变量重新赋值。

敏感信息管理 定义敏感参数,用于由用户执行流程,而不会将参数的值暴露给这些用户。

敏感参数将以加密形式存储它们的值。例如,管理员可以设置每当用户创建部署时使用的云凭证,而不会将它们暴露给该用户。

环境存活时间 通过为每个环境设置存活时间来优化云资源的使用,到达时间限制后将自动销毁环境下的资源。 无需再担心不再使用但仍在运行的环境资源产生大量的资金浪费。

项目级基于角色的访问控制 (RBAC) 管理不同组织和项目下的环境,通过为用户分配每个项目的角色来维护对环境的精细访问控制, 用于维护访问受限的生产空间以及自由访问的开发空间。

合规 通过开放策略定义,在云端资源计划阶段进行合规检测, 防止引入风险的变化,并评估配置更改是否违反合规性和最佳安全实践。

部署作业执行/审批流程 对选定环境的更改实施审批流程, 将变更计划的创建与变更的执行分离,为计划创建和计划执行赋予不同的角色。

GitOps 自动部署您的环境以响应对您的 git 存储库中的代码所做的更改。 使用CloudIaC,您可以针对代码更改启动对环境的完整部署,或者对您的PR/MR请求实时进行计划预览,从而作为是否能够合并的依据。

跨公有云、私有云使用基础设施即代码 Terraform通常用于管理公有云环境资源,CloudIaC通过私有化部署并提供本地化Provider,让用户在私有云环境下同样可以使用基础设施即代码的方式管理环境资源。