写点什么

在 AWS 中国区域一键部署面向基因分析的 Cromwell-on-AWS-Batch 解决方案(一)

  • 2020-01-02
  • 本文字数:1537 字

    阅读完需:约 5 分钟

在 AWS 中国区域一键部署面向基因分析的 Cromwell-on-AWS-Batch 解决方案(一)

摘要:Cromwell-on-AWS-Batch 是 AWS 在生命科学领域联合 Broad 研究院推出的解决方案,已有很多 AWS 海外区域的客户在使用该解决方案进行基因分析。AWS Batch 服务于 2019 年 10 月在 AWS 中国区域上线之后,我们随即根据 AWS 中国区域的特点对该解决方案进行了适应修改和优化提升,本文通过一个测试示例和一个 GATK 实际例子来演示在中国区域一键部署的过程,为国内基因分析客户快速上手使用该解决方案加速分析效率提供参考。

1、基本介绍

Cromwell 是由 Broad 研究院面向科研领域开发的一套工作流管理框架,目前在基因分析领域更为常用。Cromwell 目前已支持对接 AWS Batch 作为其集群管理后端,云端基础资源的调度管理由 AWS Batch 完成。


Cromwell-on-AWS-Batch 的组成架构图如下图所示。由生信工程师编写 wdl 或 cwl 格式的基因分析工作流脚本,作为 Cromwell 的输入,通过 API 调用(或图形管理界面)的方式提交任务,分析过程中可通过 AWS Batch 服务的控制面板和 CloudWatch-Log 记录可以查看任务的执行状态,分析的结果保存在 Amazon S3 存储上。分析中支持调用 Spot 竞价实例来降低样本分析的成本。此外 Cromwell 还支持通过 Amazon Aurora 数据库服务来管理作业数据记录。


2、一键部署的过程及测试示例

部署过程通过 CloudFormation 模板导入,非常方便。进入 AWS 控制台,右上角选择宁夏区域,并通过左上角服务菜单进入 CloudFormation 服务界面,点击“创建堆栈”,在堆栈模板的 URL 信息栏中填入:https://awshcls.s3.cn-northwest-1.amazonaws.com.cn/cromwellcn/templates/cromwell-aio.template.yaml,如图所示。



进入下一步,为堆栈指定名称。在堆栈参数栏中,下拉选择 EC2 密钥对(如果下拉列表为空,可进入 EC2 服务界面左侧密钥对菜单中建好再返回此处),该密钥对是后续 SSH 登录的凭据;并输入 S3 存储桶的名称,该名称需符合 S3 桶名规范并保证唯一(亦可通过指定 Existing 选项为 true 来使用已有存储桶名)。在 AWS Batch 参数中,指定 Spot 竞价实例在所有 vCPU 的使用比例,并指定最小最大 vCPU 数量,后续会建 Default 和 High Priority 两个不同优先级的任务队列,故最小最大数量可分别指定。此处两个最小值均填 4。其他可保持默认值,进入下一步。



在权限参数中需要指定一个 IAM 权限角色用于授权 CloudFormation 来启动资源用,如果为空,参考右上角“了解更多”的步骤新建一个角色(简便起见可先建一个管理员权限的)再返回此处设置。



进入下一步,勾选两个确认框。



点击创建堆栈,即开始自动新建整个框架堆栈。等待十几分钟后堆栈建立完成,堆栈状态可看到均为 CREATE_COMPLETE 状态(该模板自动嵌套 7 个子模板)。



在 EC2 实例列表里也可以查看到对应的实例信息,选中 cromwell-server 实例点击上方“连接”查看 SSH 登录方式。



SSH 登录进 cromwell-server 实例后,输入以下命令即可提交一个简单的测试示例。


Bash


wget https://awshcls.s3.cn-northwest-1.amazonaws.com.cn/cromwellcn/scripts/simple-hello.wdl   curl -X POST "http://localhost:8000/api/workflows/v1" -H "accept: application/json" -F "workflowSource=@simple-hello.wdl"
复制代码


其中 simple-hello.wdl 的内容如下,是一个只执行一个 task 的测试脚本(wdl 的规范参考文末链接)。``


Bash


task echoHello{    command {        echo "Hello AWS!"    }    runtime {        docker: "amazonlinux:latest"    }}workflow printHelloAndGoodbye {    call echoHello}
复制代码


测试示例很快完成,在 CloudWatch Log 中有详细记录信息,如下图所示。



本文转载自 AWS 技术博客。


原文链接:https://amazonaws-china.com/cn/blogs/china/one-click-deployment-of-cromwell-on-aws-batch-solution-for-genetic-analysis-in-aws-china/


2020-01-02 14:41910

评论

发布
暂无评论
发现更多内容

Python实现excel公式格式化工具

小小明

Python Excel

HashMap加载因子为什么是0.75?

java_wxid

Java 面试 hashmap HashMap底层原理 加载因子

字节跳动5面喜提offer!分享给朋友们面试感受

Java架构之路

Java 程序员 架构 面试 编程语言

硬件测试的思考和改进:有道词典笔的高效测试探索

有道技术团队

大前端

批量从Word中提取图片

小小明

Python

Pandas实战案例-冷空气活动寒潮级别分类

小小明

单线程、多线程和协程的爬虫性能对比

小小明

Python 爬虫

2021版金三银四Java面试突击手册开源(涵盖p5-p8技术栈),“吊打”面试官的“葵花宝典”

Java 编程 程序员 架构 面试

程序员:如何写出斗帝级简历?

Java架构师迁哥

试着找一下抖音下单的用户路径地图

小匚

产品经理 产品经理训练营

美团3面(Java后台):NIO+BIO+Zookeeper+线程池+Redis+kafka

钟奕礼

Java 编程 程序员 架构 面试

MySQL四大属性(特性) 底层实现原理

java_wxid

Java MySQL 数据库 面试 底层实现原理

AI技术在小程序生态质量保障方向的落地实践

百度开发者中心

百度智能小程序

用户需求差异化需要更专业的云管理平台 | 演讲实录

BoCloud博云

云计算 多云管理

Flink程序优化及反压机制

大数据技术指南

flink 3月日更

将word试卷匹配转换为结构化表格

小小明

Python word

MySQL锁等待与死锁问题分析

Simon

MySQL 死锁

何止一个惨字形容!水滴Java面试一轮游,壮烈了,问啥啥不会,数据库血崩,我该怎么办?

钟奕礼

Java 学习 编程 程序员 面试

重点人员可视化研判分析系统搭建,可视化大屏系统

又是一些小细节!3面成功入职字节跳动:算法+数据库+中间件+JVM

Java架构之路

Java 程序员 架构 面试 编程语言

Apache Iceberg学习日志

InfoQ_Springup

数据湖

后端服务器网络编程之 IO 模型

Linux服务器开发

后端 网络编程 web服务器 Linux服务器开发 网络io

高并发下的Redis分布式锁

java_wxid

Java redis 高并发 分布式锁 setnx

iOS 面试策略之简历的准备到面试流程

iOSer

ios 面试

KeyChrone-K8使用体验

ITCamel

maven打包,常用启动方式

秋天

mavne

JVM 诊断之 jps 工具使用

hepingfly【gzh:和平本记】

JVM jvm调优 jvm诊断 jps

Hello World !!!

潮湿了我押韵的心情

CloudQuery v1.3.5 上线!

BinTools图尔兹

数据库 oracle 运维 开发工具 dba

支付宝高级研发一二三面题目:CMS+CAS+线程锁+事务+雪崩+Docker

钟奕礼

Java 编程 程序员 架构 面试

爆肝一周总结了一份Java学习/面试自测指南!200+道Java最常见面试题。

Java架构之路

Java 程序员 架构 面试 编程语言

在 AWS 中国区域一键部署面向基因分析的 Cromwell-on-AWS-Batch 解决方案(一)_文化 & 方法_亚马逊云科技 (Amazon Web Services)_InfoQ精选文章