使用 AWS Step Functions 和 AWS Batch 进行基因组二次分析可在 AWS 中创建可扩展的环境来开发、构建、部署和运行基因组二次分析(例如将原始的完整基因组序列处理为识别变体)管道。此指南包括使用 AWS CodeCommit 源代码存储库和 AWS CodePipeline 的持续集成和持续交付(CI/CD)功能,为基因组学工作流和支持工作流执行的基础设施构建和部署更新。它充分利用基础设施即代码原则和最佳实践,帮助您快速发展解决方案。
还部署了 Amazon CloudWatch 操作控制面板,用于监控管道和工具的状态和性能。为您的基因组学分析和研究项目部署此指南。
概览
下图展示了您可以使用 GitHub 上的示例代码构建的架构。

使用 AWS Step Functions 和 AWS Batch 进行基因组学辅助分析架构
此代码在您的 AWS 账户中创建了四个 CloudFormation 堆栈,其中包括用于安装本指南的 setup 堆栈。其他堆栈包括一个登陆区 (zone) 堆栈,其中包含常见解决方案资源和构件,一个部署管道 (pipe) 堆栈,用于定义该解决方案的 CI/CD 管道,以及一个代码库 (code) 堆栈,用于提供工具、工作流定义和作业执行环境源代码。
setup 堆栈将创建 AWS CodeBuild 项目,其中包含 setup.sh 脚本。该脚本将创建剩余的 CloudFormation 堆栈,并为 AWS CodeCommit pipe 存储桶和 code 存储桶创建完成后为它们提供源代码。
登录区 (zone) 堆栈将创建 CodeCommit pipe 存储桶、Amazon CloudWatch 事件和 AWS CodePipeline pipe 管道,后者将为基因组学工作流定义持续集成/持续交付 (CI/CD) 管道。部署管道 (pipe) 堆栈将创建 CodeCommit code 存储库、Amazon CloudWatch 事件和 CodePipeline code 管道。
CodePipeline code 管道将部署代码库 (code) CloudFormation 堆栈。您的账户中部署的资源包括 Amazon Simple Storage Service(Amazon S3)存储桶、源代码的 CodeCommit 存储库、AWS CodeBuild 项目、AWS CodePipeline 管道、Amazon Elastic Container Registry(Amazon ECR)映像存储库、示例 AWS Step Functions 状态机以及 AWS Batch 计算环境、作业队列和队列定义。示例 Amazon CloudWatch 控制面板将提供操作工作负载监控。总之,此解决方案可以为基因组学工作流和支持工作流执行的基础设施构建和部署更新。